{"id":27037866,"url":"https://github.com/yelixjs/yelix","last_synced_at":"2025-04-05T02:18:08.348Z","repository":{"id":279862151,"uuid":"940244334","full_name":"yelixjs/yelix","owner":"yelixjs","description":"Yelix is a powerful web server library built specifically for Deno, leveraging the Hono framework in the background. It simplifies backend development with automated features, including built-in data validation, OpenAPI 3.1 support, and auto-generated backend documentation.","archived":false,"fork":false,"pushed_at":"2025-04-02T16:59:53.000Z","size":222,"stargazers_count":4,"open_issues_count":3,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-04T18:40:05.709Z","etag":null,"topics":["deno","webserver"],"latest_commit_sha":null,"homepage":"https://yelix-docs.deno.dev/","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/yelixjs.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}},"created_at":"2025-02-27T21:07:31.000Z","updated_at":"2025-04-04T18:28:14.000Z","dependencies_parsed_at":null,"dependency_job_id":"f18e2a2e-db8e-4580-a126-6521c1904b5e","html_url":"https://github.com/yelixjs/yelix","commit_stats":null,"previous_names":["groophylifefor/yelix","yelixjs/yelix"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yelixjs%2Fyelix","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yelixjs%2Fyelix/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yelixjs%2Fyelix/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yelixjs%2Fyelix/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/yelixjs","download_url":"https://codeload.github.com/yelixjs/yelix/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247276185,"owners_count":20912288,"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","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":["deno","webserver"],"created_at":"2025-04-05T02:18:07.929Z","updated_at":"2025-04-05T02:18:08.342Z","avatar_url":"https://github.com/yelixjs.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Yelix\n\n[![JSR](https://jsr.io/badges/@murat/yelix)](https://jsr.io/@murat/yelix/)\n\nYelix is a powerful web server library built specifically for\n[Deno](https://deno.land/), leveraging the [Hono](https://hono.dev/) framework\nin the background. It simplifies backend development with automated features,\nincluding built-in data validation, OpenAPI 3.1 support, and auto-generated\nbackend documentation.\n\n## Features\n\n- **Hono-based routing** – Fast and lightweight request handling.\n- **Automatic data validation** – Supports query and body validation using\n  [Zod](https://zod.dev/).\n- **OpenAPI 3.1 integration** – Auto-generates API documentation.\n- **Backend documentation generation** – Creates comprehensive API docs with\n  minimal setup.\n- **Optional automation** – Features can be enabled or disabled as needed.\n- **Deno-native** – Designed specifically for Deno with TypeScript support.\n- **API folder structure** - Load endpoints from dedicated folders.\n\n## Installation\n\n```sh\ndeno add jsr:@murat/yelix\n```\n\n## Getting Started\n\n### Prerequisites\n\n- [Deno](https://deno.land/) installed on your system\n\n### Create a New Project\n\nGenerate a new Yelix project with a single command:\n\n```sh\ndeno run --allow-write --allow-read https://yelix-docs.deno.dev/yelix-template.ts\n```\n\nThis will create a new project with the following structure:\n\n```\napi/\n└── hello.ts\ndeno.json\nmain.ts\n```\n\n### Example Endpoint\n\nHere's how a basic endpoint looks in Yelix (`api/hello.ts`):\n\n```typescript\nimport type { Ctx } from \"jsr:@murat/yelix\";\n\nexport async function GET(ctx: Ctx) {\n  return await ctx.text(\"Hello World!\", 200);\n}\n\nexport const path = \"/api/hello\";\n```\n\n### Running Your Server\n\nStart the development server:\n\n```sh\ndeno task dev\n```\n\nCommand flags (automatically included in deno.json):\n\n- `--watch`: Automatically reloads server when changes are made\n- `--allow-net`: Permits network access for serving\n- `--allow-read`: Allows file access for loading endpoints\n- `--allow-env`: Checking where is deployed for Deno Deploy\n\nVisit `http://localhost:3030/api/hello` to see your endpoint in action.\n\n## Deployment Notes\n\n⚠️ **Caution**: Deno Deploy doesn't support the `loadEndpointsFromFolder` method\ndue to security restrictions around dynamic importing. When deploying to Deno\nDeploy, use the `loadEndpoints` method instead.\n\n## Contributing\n\nContributions are welcome! Feel free to submit issues or pull requests to\nimprove Yelix.\n\n## Early Supporters\n\n[@erenkulaksiz](https://github.com/erenkulaksiz),\n[@mertssmnoglu](https://github.com/mertssmnoglu)\n\n## License\n\nYelix is licensed under the MIT License.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyelixjs%2Fyelix","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyelixjs%2Fyelix","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyelixjs%2Fyelix/lists"}