{"id":49457087,"url":"https://github.com/ppenter/oxide-lang","last_synced_at":"2026-04-30T07:04:07.956Z","repository":{"id":345595122,"uuid":"1186591738","full_name":"ppenter/oxide-lang","owner":"ppenter","description":"Oxide — a modern programming language with TypeScript-inspired syntax, Rust-grade safety, and native performance via LLVM","archived":false,"fork":false,"pushed_at":"2026-03-19T22:01:34.000Z","size":89,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-20T10:57:51.743Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ppenter.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-03-19T19:39:40.000Z","updated_at":"2026-03-19T22:01:38.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/ppenter/oxide-lang","commit_stats":null,"previous_names":["ppenter/oxide-lang"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/ppenter/oxide-lang","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ppenter%2Foxide-lang","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ppenter%2Foxide-lang/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ppenter%2Foxide-lang/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ppenter%2Foxide-lang/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ppenter","download_url":"https://codeload.github.com/ppenter/oxide-lang/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ppenter%2Foxide-lang/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32457110,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-29T22:27:22.272Z","status":"online","status_checked_at":"2026-04-30T02:00:05.929Z","response_time":57,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-04-30T07:04:04.259Z","updated_at":"2026-04-30T07:04:07.947Z","avatar_url":"https://github.com/ppenter.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Oxide Language\n\n\u003e A modern programming language with TypeScript-inspired syntax, Rust-grade safety, and native performance via LLVM.\n\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)\n[![Build](https://img.shields.io/badge/build-passing-brightgreen)]()\n[![Tests](https://img.shields.io/badge/tests-65%20passed-brightgreen)]()\n[![Version](https://img.shields.io/badge/version-0.2.0--alpha-blue)]()\n\n```typescript\n// hello.ox\nfn greet(name: string) -\u003e void {\n    print(\"Hello, ${name}!\");\n}\n\nstruct Point { x: int; y: int; }\n\nlet p: Point = Point { x: 10, y: 20 };\ngreet(\"Oxide\");\nprint(\"Point: (${p.x}, ${p.y})\");\n```\n\n---\n\n## Install\n\n### Linux / macOS (one-liner)\n\n```bash\ncurl -fsSL https://raw.githubusercontent.com/ppenter/oxide-lang/main/install.sh | bash\n```\n\n### Windows (PowerShell)\n\n```powershell\niwr -useb https://raw.githubusercontent.com/ppenter/oxide-lang/main/install.ps1 | iex\n```\n\n\u003e **Tip:** Windows users can also use WSL2 and run the Linux installer above.\n\n### Custom install directory\n\n```bash\nINSTALL_DIR=~/.local/oxide curl -fsSL https://raw.githubusercontent.com/ppenter/oxide-lang/main/install.sh | bash\n```\n\n---\n\n## Build from Source\n\n**Requirements:** `g++` 9+ (C++17), `make`, `git`\n\n```bash\ngit clone https://github.com/ppenter/oxide-lang.git\ncd oxide-lang\nmake            # debug build\nmake release    # optimised build (recommended for production)\n```\n\nBinaries appear in `$HOME/oxide_build/` (Linux) or `build3/` (macOS):\n- `oxc` — the Oxide compiler (tree-walking interpreter + LLVM IR emitter)\n- `ox`  — the Oxide project manager (`ox run`, `ox dev`, `ox build`, `ox init`)\n\n```bash\nexport PATH=\"$PATH:$HOME/oxide_build\"\nox --help\n```\n\n---\n\n## Quick Start\n\n```bash\n# Create and run a program\necho 'fn main() { print(\"Hello, Oxide!\"); }' \u003e hello.ox\nox run hello.ox\n\n# Scaffold a new project\nox init my-app\ncd my-app\nox run\n\n# Start a web server\nox run website/server.ox\n# → http://localhost:5555\n```\n\n---\n\n## Language Features\n\n| Feature | Status |\n|---|---|\n| Variables (`let` / `const`) | ✅ |\n| Functions with typed params | ✅ |\n| Structs | ✅ |\n| `if` / `else` / `while` | ✅ |\n| `for i in 0..10` loops | ✅ |\n| `break` / `continue` | ✅ |\n| String interpolation `${expr}` | ✅ |\n| Built-in string functions | ✅ |\n| HTTP server (`router_get`, `router_start`) | ✅ |\n| Modules / imports | 🔄 In progress |\n| Generic types | 🔄 In progress |\n| Enums / match expressions | 📋 Planned |\n| LLVM native compilation | 📋 Planned |\n\n---\n\n## HTTP Server\n\nOxide has a built-in HTTP runtime — no external packages needed:\n\n```typescript\nfn home() -\u003e string {\n    return \"\u003ch1\u003eHello from Oxide!\u003c/h1\u003e\";\n}\n\nfn api_status() -\u003e string {\n    return \"{\\\"status\\\": \\\"ok\\\"}\";\n}\n\nrouter_get(\"/\",      \"home\");\nrouter_get(\"/api\",   \"api_status\");\nrouter_start(\"0.0.0.0\", 3000);\n```\n\n```bash\nox run server.ox\n# [OK] Router started on port 3000 with 2 route(s).\n```\n\n---\n\n## Deploy to VPS\n\nUse the included deployment script to host the Oxide website on any Linux VPS:\n\n```bash\n./deploy-vps.sh YOUR_VPS_IP root\n```\n\nThis will:\n1. Install build dependencies (g++, make, nginx)\n2. Clone and build Oxide on the VPS\n3. Start the website as a systemd service\n4. Configure nginx as a reverse proxy\n\n---\n\n## Project Structure\n\n```\noxide-lang/\n├── compiler/          # C++ compiler source\n│   ├── lexer/         # Tokeniser\n│   ├── parser/        # Recursive-descent parser\n│   ├── ast/           # AST node definitions\n│   ├── type_checker/  # Type checker \u0026 inference\n│   ├── codegen/       # LLVM IR code generator\n│   ├── interpreter/   # Tree-walking interpreter\n│   └── oxx/           # .oxx (Oxide JSX) compiler\n├── tests/             # Test runner + test cases\n├── tools/             # ox CLI wrapper script\n├── website/           # Oxide showcase website (written in Oxide!)\n├── examples/          # Example .ox programs\n├── lsp/               # Language Server (oxls)\n├── vscode-extension/  # VS Code extension\n├── install.sh         # Linux/macOS installer\n├── install.ps1        # Windows installer\n└── deploy-vps.sh      # VPS deployment script\n```\n\n---\n\n## Testing\n\n```bash\nmake test\n# Results: 65 passed, 0 failed\n```\n\n---\n\n## License\n\nMIT © [Jarupak Srisuchat](https://github.com/ppenter)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fppenter%2Foxide-lang","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fppenter%2Foxide-lang","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fppenter%2Foxide-lang/lists"}