{"id":28795964,"url":"https://github.com/xriot45/elysia-js-cli","last_synced_at":"2026-04-20T10:03:45.568Z","repository":{"id":297887336,"uuid":"998198151","full_name":"xRiot45/elysia-js-cli","owner":"xRiot45","description":"Elysia JS CLI is a Command Line Interface (CLI) tool designed to make it easier and faster to create projects using Elysia JS Framework.","archived":false,"fork":false,"pushed_at":"2025-06-22T13:48:20.000Z","size":198,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2026-02-21T01:10:19.841Z","etag":null,"topics":["bun","command-line-tool","elysiajs","handlebars","javascript","node","open-source","rest-api","shell","shell-script","swagger","typescript"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/elysia-js-cli","language":"TypeScript","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/xRiot45.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","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":"2025-06-08T04:36:13.000Z","updated_at":"2025-08-18T06:29:53.000Z","dependencies_parsed_at":null,"dependency_job_id":"0ed30aae-cebc-4a35-8adc-6d2beeb63ad7","html_url":"https://github.com/xRiot45/elysia-js-cli","commit_stats":null,"previous_names":["xriot45/elysia-cli","xriot45/elysia-js-cli"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/xRiot45/elysia-js-cli","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xRiot45%2Felysia-js-cli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xRiot45%2Felysia-js-cli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xRiot45%2Felysia-js-cli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xRiot45%2Felysia-js-cli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/xRiot45","download_url":"https://codeload.github.com/xRiot45/elysia-js-cli/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xRiot45%2Felysia-js-cli/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32042294,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-20T00:18:06.643Z","status":"online","status_checked_at":"2026-04-20T02:00:06.527Z","response_time":94,"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":["bun","command-line-tool","elysiajs","handlebars","javascript","node","open-source","rest-api","shell","shell-script","swagger","typescript"],"created_at":"2025-06-18T03:10:48.921Z","updated_at":"2026-04-20T10:03:45.561Z","avatar_url":"https://github.com/xRiot45.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"![Screenshot from 2025-06-19 16-16-43](https://github.com/user-attachments/assets/a4bb9ad2-9f11-459e-bdde-c74c12a8bcc0)\n\n\u003ch1 align=\"center\"\u003eElysia JS CLI\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/Bun.js-000000?style=for-the-badge\u0026logo=bun\u0026logoColor=white\" alt=\"bun.js\" /\u003e\n  \u003cimg src=\"https://img.shields.io/badge/Elysia.js-ff69b4?style=for-the-badge\u0026logo=elysia\u0026logoColor=white\" alt=\"elysia.js\" /\u003e\n  \u003cimg src=\"https://img.shields.io/badge/TypeScript-3178C6?style=for-the-badge\u0026logo=typescript\u0026logoColor=white\" alt=\"typescript\" /\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\nElysia JS CLI is a Command Line Interface (CLI) tool designed to make it easier and faster to create projects using Elysia JS Framework.\n\u003c/p\u003e\n\n---\n\n## 📋 Table of Contents\n\n1. 🤖 [Introduction](#introduction)\n2. ⚙️ [Tech Stack](#tech-stack)\n3. 📌 [Features](#features)\n4. 🧸 [Quick Start](#quick-start)\n5. 📜 [CLI Usage](#cli-usage)\n6. 📦 [Project Structure](#project-structure)\n7. 🔗 [Links](#links)\n8. 🙏 [Acknowledgements](#acknowledgements)\n\n---\n\n## 🤖 Introduction\n\n**Elysia JS CLI** is a developer-friendly CLI tool that simplifies and accelerates the process of scaffolding new projects using the Elysia JS Framework.\n\nIt helps developers to:\n\n- Scaffold fully configured projects following industry best practices.\n- Automate repetitive setup tasks such as creating folder structures, configuration files, installing dependencies, and more.\n- Focus more on building core application features instead of spending time on initial setup.\n\nWhether you're starting a prototype or a production-ready app, **Elysia JS CLI** provides a smooth and efficient starting point for both beginners and experienced developers.\n\n---\n\n## ⚙️ Tech Stack\n\n- **Bun JS** : Ultra-fast JavaScript runtime.\n- **Elysia JS** : Minimalist and fast web framework.\n- **TypeScript** : Type-safe JavaScript superset.\n\n---\n\n## 📌 Features\n\n- **Project Type Selection**\n\n    - Currently supports **REST API** scaffolding (more types coming soon).\n\n- **Optional Tools Integration**\n\n    - Prettier – Code formatting.\n    - ESLint – Code linting and static analysis.\n    - Husky – Git hooks integration.\n    - Commitlint – Enforce conventional commits.\n    - Swagger - API Documentation\n\n- **Database Support**\n\n    - MySQL (more databases coming soon).\n\n- **ORM Integration**\n\n    - Drizzle ORM – Type-safe SQL ORM.\n\n- **Version Control Initialization**\n\n    - Automatic Git initialization with first commit.\n\n- **Project Boilerplate Generation**\n\n    - Predefined folder structure, config files, sample code using schematics.\n\n- **Environment Configuration**\n\n    - Auto-generate `.env` template file.\n\n- **Interactive CLI**\n\n    - Smooth, intuitive question-based setup.\n\n---\n\n## 🧸 Quick Start\n\n### 1. Prerequisites\n\n- [Git](https://git-scm.com/)\n- [Bun](https://bun.sh/)\n\n### 2. Installation\n\n```bash\nbun install -g elysia-js-cli\n```\n\n### 3. Create New Project\n\n```bash\nelysia new \u003cprojectName\u003e\n```\n\n### 4. CLI Interactive Questions\n\n- **Project type** : REST API\n- **Use Prettier?** : (Y/n)\n- **Use ESLint?** : (Y/n)\n- **Enable Husky \u0026 Commitlint?** : (Y/n)\n- **Use Swagger?** : (Y/n)\n- **Choose database** : MySQL\n- **Choose ORM** : Drizzle ORM\n- **Initialize Git?** : (Y/n)\n\n### 5. Running Your Project\n\n```bash\ncd \u003cyour-project\u003e\nbun run format  # optional formatting\nbun run dev\n```\n\n### 6. Verify Setup\n\nCheck server with Postman or curl:\n\n```bash\ncurl http://localhost:3000\n```\n\nYou should receive a successful response from your server.\n\n---\n\n## 📜 CLI Usage\n\n### Display Help\n\n```bash\nelysia -h\n```\n\n### Options\n\n| Option          | Description          |\n| --------------- | -------------------- |\n| `-v, --version` | Show current version |\n| `-i, --info`    | Show CLI information |\n| `-h, --help`    | Show help            |\n| `-u, --update`  | update elysia js cli |\n\n### Commands\n\n| Command                           | Description                  |\n| --------------------------------- | ---------------------------- |\n| `new \u003cprojectName\u003e`               | Create new Elysia JS project |\n| `generate \u003cschematic\u003e \u003cfileName\u003e` | Generate new file            |\n\n### Available Schematics\n\n| Schematic    | Description                                               |\n| ------------ | --------------------------------------------------------- |\n| `controller` | Generate controller file                                  |\n| `service`    | Generate service file                                     |\n| `route`      | Generate route file                                       |\n| `repository` | Generate repository file                                  |\n| `validation` | Generate validation file                                  |\n| `model`      | Generate model file                                       |\n| `interface`  | Generate interface file                                   |\n| `resources`  | Generate full resources (controller, service, route, etc) |\n| `config`     | Generate config file                                      |\n| `middleware` | Generate middleware file                                  |\n| `util`       | Generate utility file                                     |\n| `enum`       | Generate enum file                                        |\n\n#### Example:\n\n```bash\nelysia generate controller user\n```\n\nThis will create `src/controllers/user.controller.ts` based on template.\n\n---\n\n## 📦 Project Structure\n\nExample structure after scaffolding:\n\n```\nmy-awesome-api/\n├── .husky/\n├── node_modules/\n├── src/\n│   ├── configs/\n│   ├── controllers/\n│   ├── databases/\n│   │   ├── models/\n│   ├── enums/\n│   ├── interfaces/\n│   ├── middlewares/\n│   ├── repositories/\n│   ├── routes/\n│   ├── services/\n│   ├── types/\n│   ├── utils/\n│   ├── validations/\n│   └── index.ts\n├── .env\n├── .gitignore\n├── .prettierrc\n├── bun.lockb\n├── commitlint.config.js\n├── drizzle.config.ts\n├── eslint.config.mjs\n├── package.json\n├── README.md\n└── tsconfig.json\n```\n\n---\n\n## 🔗 Links\n\n- [Elysia JS](https://elysiajs.com/)\n- [Bun](https://bun.sh/)\n- [Drizzle ORM](https://orm.drizzle.team/)\n- [TypeScript](https://www.typescriptlang.org/)\n- [Prettier](https://prettier.io/)\n- [ESLint](https://eslint.org/)\n- [Husky](https://typicode.github.io/husky/)\n- [Commitlint](https://commitlint.js.org/)\n\n---\n\n## 🙏 Acknowledgements\n\nBig thanks to [SaltyAom](https://github.com/saltyaom) for creating [Elysia JS](https://elysiajs.com/), which inspired and powered the development of this CLI tool.\n\n\u003e _Note: More features coming soon!_ 🚀\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxriot45%2Felysia-js-cli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fxriot45%2Felysia-js-cli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxriot45%2Felysia-js-cli/lists"}