Skip to content

Aether is a modern, cloud-native programming language designed for building scalable, distributed systems with elegant syntax and robust safety features.

License

Notifications You must be signed in to change notification settings

iamvirul/Aetherlang

Repository files navigation

Aether Programming Language

Aetherlang Logo

Aether is a modern, cloud-native programming language designed for building scalable, distributed systems with elegant syntax and robust safety features.

Features

  • Cloud-First Architecture: Native support for cloud APIs, service discovery, and containerized deployments
  • Object-Oriented Core: First-class support for classes, inheritance, interfaces, and polymorphism
  • Elegant Syntax: Clean, minimal syntax inspired by modern languages
  • Hybrid Type System: Static typing by default with optional dynamic typing
  • Built-in Cloud Integration: Direct cloud provider SDK integration
  • Modern Concurrency: Async/await, actors, and reactive streams
  • Security-Focused: Language-level constructs for sandboxing and capability-based security

Installation

Pre-built Binaries

You can download pre-built binaries for your operating system from our GitHub Releases page.

Windows

  1. Download aeth from the latest release
  2. Rename it to aeth.exe (optional)
  3. Add the binary location to your PATH environment variable
  4. Open Command Prompt or PowerShell and run aeth --version to verify the installation

macOS

  1. Download aeth from the latest release

  2. Make it executable:

    chmod +x aeth
  3. Move it to a location in your PATH:

    sudo mv aeth /usr/local/bin/aeth
  4. Verify the installation:

    aeth --version

If macOS blocks the binary with a message like:

“aeth” cannot be opened because the developer cannot be verified.

Do this step before or after verifying the installation:

1. Manually allow the binary via Gatekeeper:

  • Open System Settings > Privacy & Security
  • Scroll down to the Security section
  • You should see a message like “aeth was blocked…”
  • Click “Allow Anyway”

Then run:

aeth

macOS may still block it. If so:

2. Force open from Terminal:

xattr -d com.apple.quarantine aeth

Then you can run:

aeth --version

This removes the quarantine attribute, allowing the binary to run without triggering Gatekeeper.


Linux

  1. Download aeth from the latest release

  2. Make it executable:

    chmod +x aeth
  3. Move it to a location in your PATH:

    sudo mv aeth /usr/local/bin/aeth
  4. Verify the installation:

    aeth --version

Building from Source

If you prefer to build from source, you'll need Rust installed on your system:

  1. Install Rust from https://rustup.rs/
  2. Clone the repository:
git clone https://github.com/iamvirul/Aetherlang.git
cd Aetherlang
  1. Build the project:
cargo build --release
  1. The compiled binaries will be in target/release/

Homebrew (macOS)

If you're on macOS, you can install Aetherlang using Homebrew:

  1. Tap the repository:

    brew tap iamvirul/homebrew-aetherlang
  2. Install Aetherlang:

    brew install aetherlang

Using the Docker Image

You can use the pre-built Docker image to run Aetherlang without needing to install Rust or any dependencies.

  1. Pull the image from GitHub Container Registry:

    docker pull ghcr.io/iamvirul/aether-lang:latest
  2. Run the image:

    To run the Aetherlang runtime, mount your project directory to the /app directory inside the container.

    docker run -v $(pwd):/app ghcr.io/iamvirul/aether-lang:latest aeth run /app/your_service.ath

    Replace your_service.ath with the path to your Aetherlang service file.

Getting Started

Hello World

service HelloService {
  @get("/hello")
  endpoint greet(name: String): String {
    return "Hello, \(name) from Aether!";
  }
}

Running the Service

aeth run hello.ath

VS Code Extension

Enhance your Aetherlang development experience with our dedicated VS Code extension. It provides syntax highlighting and other language features.

Tools

  • aethc - The Aether compiler
  • aeth - The Aether runtime and development tool
  • aethpkg - Package manager
  • aethctl - Deployment and cloud control tool

Documentation

Documentation is coming soon. We're working hard to provide you with comprehensive guides and references.

Stay tuned for updates!

Contributing

We welcome contributions! Please see our Contributing Guide for details.

License

Licensed under the Aetherlang License (Non-Commercial) — see LICENSE for details.

About

Aether is a modern, cloud-native programming language designed for building scalable, distributed systems with elegant syntax and robust safety features.

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors 2

  •  
  •  

Languages