{"id":17382082,"url":"https://github.com/kevinj045/rew","last_synced_at":"2025-10-30T10:21:39.858Z","repository":{"id":282322908,"uuid":"872145841","full_name":"kevinJ045/rew","owner":"kevinJ045","description":"A coffeescript runtime made with rust.","archived":false,"fork":false,"pushed_at":"2025-10-01T15:46:46.000Z","size":945,"stargazers_count":4,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-21T18:58:42.071Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://kevinj045.github.io/rew-docs/","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kevinJ045.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2024-10-13T22:25:06.000Z","updated_at":"2025-10-01T15:46:19.000Z","dependencies_parsed_at":null,"dependency_job_id":"6e4e9745-6ed2-4212-8049-da3705ad37f0","html_url":"https://github.com/kevinJ045/rew","commit_stats":null,"previous_names":["kevinj045/rew-rust","kevinj045/rew"],"tags_count":30,"template":false,"template_full_name":null,"purl":"pkg:github/kevinJ045/rew","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kevinJ045%2Frew","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kevinJ045%2Frew/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kevinJ045%2Frew/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kevinJ045%2Frew/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kevinJ045","download_url":"https://codeload.github.com/kevinJ045/rew/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kevinJ045%2Frew/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":281706143,"owners_count":26547506,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-29T02:00:06.901Z","response_time":59,"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":["coffeescript","javascript","runtime"],"created_at":"2024-10-16T07:35:28.459Z","updated_at":"2025-10-30T10:21:39.851Z","avatar_url":"https://github.com/kevinJ045.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/kevinJ045/rew-docs/main/assets/logo.png\" width=\"100\" alt=\"Rew Logo\" /\u003e\n  \u003ch1\u003eRew (Rust)\u003c/h1\u003e\n  \u003cp\u003e\n    \u003cstrong\u003eRew is basically my playground for a coffeescipt runtime. It’s built on Rust, Deno Core and V8, and mostly intended to be quick and FFI compatible.\u003c/strong\u003e\n  \u003c/p\u003e\n  \u003cp\u003e\n    \u003ca href=\"https://github.com/kevinj045/rew/stargazers\"\u003e\n      \u003cimg src=\"https://img.shields.io/github/stars/kevinj045/rew?style=for-the-badge\u0026logo=starship\u0026color=cba6f7\u0026logoColor=9399b2\u0026labelColor=181825\" alt=\"GitHub stars\"/\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://github.com/kevinj045/rew/issues\"\u003e\n      \u003cimg src=\"https://img.shields.io/github/issues/kevinj045/rew?style=for-the-badge\u0026logo=gitbook\u0026color=f5c2e7\u0026logoColor=9399b2\u0026labelColor=181825\" alt=\"GitHub issues\"/\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://github.com/kevinj045/rew/forks\"\u003e\n      \u003cimg src=\"https://img.shields.io/github/forks/kevinj045/rew?style=for-the-badge\u0026logo=git\u0026color=94e2d5\u0026logoColor=9399b2\u0026labelColor=181825\" alt=\"GitHub forks\"/\u003e\n    \u003c/a\u003e\n  \u003c/p\u003e\n\u003c/div\u003e\n\nRew is a CoffeeScript runtime that aims to provide a simple developer-friendly environment. It mostly provides basic a toolkit for most tasks on it's own with the aim to have better libraries built on the FFI layer that rew provides.\n\nWhile mainly designed for coffeescript, It can also run simple js that isn't dependent on nodejs or any other platform.\n\n```coffee\npublic package example;\n\nfunction example::main()\n  rew::io::out.print \"Hello!\"\n```\n\n## Core Features\n\n| Feature               | Description                                                                                                                              |\n| --------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |\n| **Web API Compatible**| Includes a few APIs like `fetch`, `setTimeout`, `Request`, `Response`, and WebSockets.                              |\n| **Built-in Tooling**  | CLI tool (`rew`) for running, and managing scripts.                                                           |\n| **FFI System**        | A Foreign Function Interface for calling Rust code from CoffeeScript, and vice-versa.                                    |\n| **JSX Support**       | Built-in support for JSX compiler written in rust.                                                |\n\n## Available APIs and Extensions\n\nRew provides a rich set of built-in APIs, made available through extensions. Here's a summary of what's available:\n\n| Category         | Extension         | Description                                                                                             |\n| ---------------- | ----------------- | ------------------------------------------------------------------------------------------------------- |\n| **Console**      | `ext/console`     | Provides IO logging.                                                              |\n| **File System**  | `ext/fs`          | Enables file system access (`read`, `write`, etc.).                                             |\n| **HTTP**         | `ext/http`        | Implements `fetch`, WebSockets, and other HTTP-related APIs.                                            |\n| **Networking**   | `ext/net`         | Low-level networking APIs.                                                                              |\n| **OS**           | `ext/os`          | Provides access to operating system-level information and utilities.                                    |\n| **FFI**          | `ext/ffi`         | The Foreign Function Interface for interoperability with native code.                                   |\n| **Process**      | `ext/process`     | Provides information and control over the current process.                                              |\n| **Web**          | `ext/web`         | A collection of other web-standard APIs.                                                                |\n\n## Project Architecture\n\nThe Rew project is organized into a workspace of several crates, each with a specific responsibility:\n\n| Crate                   | Description                                                                                             |\n| ----------------------- | ------------------------------------------------------------------------------------------------------- |\n| `rew-cli`               | The command-line interface for the Rew runtime.                                                         |\n| `rew-compiler`          | Handles the compilation and transformation of different source languages (JS, TS, CoffeeScript, JSX).   |\n| `rew-core`              | Core utilities and types shared across the project.                                                     |\n| `rew-data-manager`      | Manages data and assets for the runtime.                                                                |\n| `rew-extensions`        | Implements the built-in APIs and extensions.                                                            |\n| `rew-jsx`               | Provides JSX transformation capabilities.                                                               |\n| `rew-permissions`       | The permission-based security model.                                                                    |\n| `rew-runtime`           | The core JavaScript/TypeScript runtime, built on Deno Core.                                             |\n| `rew-vfile`             | A virtual file system abstraction.                                                                      |\n\n## Getting Started\n\nTo get started with Rew, You can either install it through installer scripts, or with cargo and rust.\n\n### Through Pimmy installer\n\n1.  **Run the installer script:**\n    ```bash\n    curl -fsSL https://raw.githubusercontent.com/kevinj045/rew.pimmy/main/install-rew.sh | bash\n    ```\n    - **Windows**\n    ```powershell\n    irm https://raw.githubusercontent.com/kevinj045/rew.pimmy/main/install-windows.ps1 | iex\n    ```\n    \u003e Note: I recommend you read the scripts to see what you're running\n2.  **Test:**\n    ```bash\n    rew run ./test/all.coffee\n    ```\n\n### Through cargo\n\n1.  **Clone the repository:**\n    ```bash\n    git clone https://github.com/kevinj045/rew.git\n    cd rew\n    ```\n\n2.  **Install the CLI:**\n    ```bash\n    cargo install --path ./rew-cli\n    ```\n\n3.  **Run a file:**\n    You can run any of the test files to see the runtime in action. For example:\n    ```bash\n    rew run ./test/all.coffee\n    ```\n\n## Contributing\n\nYES PLEASE.\n\n## License\n\nMIT — do whatever you want, just don’t sue me.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkevinj045%2Frew","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkevinj045%2Frew","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkevinj045%2Frew/lists"}