{"id":13453859,"url":"https://github.com/syhner/elysia-kickstart","last_synced_at":"2025-04-12T03:30:53.732Z","repository":{"id":197877722,"uuid":"690537104","full_name":"syhner/elysia-kickstart","owner":"syhner","description":" ElysiaJS boilerplate with HTMX, Tailwind, Auth.js, Drizzle, CI. Deploy in one click to Railway or Vercel Edge Functions","archived":true,"fork":false,"pushed_at":"2024-04-04T15:55:05.000Z","size":413,"stargazers_count":129,"open_issues_count":4,"forks_count":30,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-06T10:45:01.536Z","etag":null,"topics":["authjs","boilerplate","bun","docker","drizzle","elysiajs","github-actions","htmx","tailwindcss","turso","vercel-edge-functions"],"latest_commit_sha":null,"homepage":"https://elysia-kickstart.vercel.app","language":"TypeScript","has_issues":false,"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/syhner.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}},"created_at":"2023-09-12T11:46:04.000Z","updated_at":"2025-03-25T19:56:04.000Z","dependencies_parsed_at":null,"dependency_job_id":"67a0224a-e31e-451d-b464-e988151c0fba","html_url":"https://github.com/syhner/elysia-kickstart","commit_stats":null,"previous_names":["syhner/elysia-kickstart"],"tags_count":0,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/syhner%2Felysia-kickstart","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/syhner%2Felysia-kickstart/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/syhner%2Felysia-kickstart/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/syhner%2Felysia-kickstart/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/syhner","download_url":"https://codeload.github.com/syhner/elysia-kickstart/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248512484,"owners_count":21116612,"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":["authjs","boilerplate","bun","docker","drizzle","elysiajs","github-actions","htmx","tailwindcss","turso","vercel-edge-functions"],"created_at":"2024-07-31T08:00:48.628Z","updated_at":"2025-04-12T03:30:53.301Z","avatar_url":"https://github.com/syhner.png","language":"TypeScript","funding_links":[],"categories":["TypeScript","Boilerplates"],"sub_categories":[],"readme":"## elysia-kickstart\n\nFeature packed ElysiaJS boilerplate. Edge ready. Deploy with one click.\n\nTaken inspiration from https://github.com/ethanniser/the-beth-stack.\n\n## 📚 Features\n\n### Core\n\n- 🏗️ [**TypeScript**](https://www.typescriptlang.org/) - Configured to maximize type safety\n- 🐉 [**ElysiaJS**](https://elysiajs.com/) - Fast and Bun friendly server framework\n- 📐 [**HTMX**](https://www.typescriptlang.org/) - High power tools for HTML\n- 💽 [**Drizzle**](https://orm.drizzle.team/) - ORM with maximal type safety\n- 🔒 [**Auth.js**](https://authjs.dev) - Flexible and secure authentication\n  - 🔗 integrates with Drizzle to store auth data\n\n### Development\n\n- 📏 [**ESLint**](https://eslint.org/) - Consistent code standards\n- ✨ [**Prettier**](https://prettier.io/) - Consistent code styling\n- 🎨 [**Tailwind CSS**](https://tailwindcss.com/) - Utility-first CSS framework\n- 💻 [**VS Code configurations**](https://code.visualstudio.com/) - Configurations for extensions\n\n### Deployment\n\n- 🐳 [**Docker**](https://www.docker.com/) - (local and production) Docker-compose and Dockerfiles for running anywhere\n- 🔄 [**GitHub Actions**](https://github.com/features/actions) - Robust CI/CD\n\n## 🌱 Getting started\n\n🚀 **Option 1: Clone and deploy**\n\n- To Railway (deployed with Docker)\n\n  [![Deploy on Railway](https://railway.app/button.svg)](https://railway.app/template/UguE-M?referralCode=Q9UMnd)\n\n- To Vercel Edge Functions (see the [Railway template](https://railway.app/template/UguE-M?referralCode=Q9UMnd) for required environment variables, as well as `RUNTIME=edge`)\n\n  [![Vercel](https://vercel.com/button)](https://vercel.com/new/clone?s=https%3A%2F%2Fgithub.com%2FSyhner%2Felysia-kickstart)\n\n📋 **Option 2: Clone and run locally**\n\n1. [Fork this repository](https://github.com/syhner/elysia-kickstart/fork) (uncheck 'Copy the `main` branch only` if you are interested in other branches / feature sets)\n2. Clone your new repository\n3. Install dependencies and run the development server\n\n- with [bun](https://bun.sh/docs/installation)\n\n  ```sh\n  bun install\n  bun run dev\n  ```\n\n- or with [Docker](https://docs.docker.com/get-docker/)\n\n  ```sh\n  docker-compose --file docker/dev/docker-compose.yml up\n  ```\n\n## ⚙️ Configuration\n\n### [Docker](https://www.docker.com/)\n\n- [`.dockerignore`](.dockerignore)\n- [`docker/`](docker/) - Dockerfile and docker-compose.yml for development and production\n\n### [Drizzle](https://orm.drizzle.team/)\n\n- [`src/db/`](src/db/)\n- [`src/lib/db.ts`](src/lib/db.ts)\n- [`drizzle.config.ts`](drizzle.config.ts)\n\n### [ESLint](https://eslint.org/)\n\n- [`.eslintrc.json`](.eslintrc.json)\n\n### [GitHub Actions](https://github.com/features/actions)\n\n- [`.github/workflows/ci.yml`](.github/workflows/ci.yml) - type-checking and linting (hence these errors are ignored in [`next.config.mjs`](next.config.mjs))\n\n### [HTMX](https://htmx.org/)\n\n- [`public/htmx@1.9.5.min.js`](public/htmx@1.9.5.min.js)\n- [`types/htmx.d.ts`](types/htmx.d.ts) - typed HTMX attributes for intellisense and autocompletion\n\n### [NextAuth](https://next-auth.js.org/)\n\n- [`src/app/api/auth/index.ts`](src/app/api/auth/index.ts)\n- [`src/app/components/auth.tsx`](src/app/components/auth.tsx)\n- [`src/db/schemas/auth.ts`](src/db/schemas/auth.ts) — store auth data (users, accounts, sessions, verification tokens) in database\n- [`src/hooks/isAuthenticated.ts`](src/hooks/isAuthenticated.ts)\n- [`src/lib/auth.ts`](src/lib/auth.ts)\n\n### [Prettier](https://prettier.io/)\n\n- [`.eslintrc.json`](.eslintrc.json)\n- [`.prettierignore`](.prettierignore)\n- [`.prettierrc.json`](.prettierrc.json)\n\n### [Tailwind CSS](https://tailwindcss.com/)\n\n- [`src/styles/globals.css`](src/styles/globals.css)\n- [`tailwind.config.js`](tailwind.config.js)\n\n### [TypeScript](https://www.typescriptlang.org/)\n\n- [`tsconfig.json`](tsconfig.json) - configured for maximum type-safety\n- [`types/reset.d.ts`](types/reset.d.ts) - using [ts-reset](https://github.com/total-typescript/ts-reset) to increase type-safety\n\n### [Vercel Edge Functions](https://vercel.com/features/edge-functions)\n\n- [`api/index.tsx`](api/index.tsx)\n- [`scripts/transform-paths.ts`](scripts/transform-paths.ts) - transforms all relative imports to absolute imports inside the src/ directory\n- [`vercel.json`](vercel.json)\n\n### [VS Code](https://code.visualstudio.com/)\n\n- [`.vscode/extensions.json`](.vscode/extensions.json) - recommended workspace extensions\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsyhner%2Felysia-kickstart","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsyhner%2Felysia-kickstart","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsyhner%2Felysia-kickstart/lists"}