{"id":24328498,"url":"https://github.com/vhscom/remix-cloudflare-template","last_synced_at":"2026-02-14T11:03:13.804Z","repository":{"id":269351564,"uuid":"903503506","full_name":"vhscom/remix-cloudflare-template","owner":"vhscom","description":"Versatile Remix/RR7 starter template for Cloudflare Workers using the Cloudflare Static Assets beta built from scratch.","archived":false,"fork":false,"pushed_at":"2025-01-02T02:55:35.000Z","size":802,"stargazers_count":2,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"trunk","last_synced_at":"2025-09-08T16:51:23.992Z","etag":null,"topics":["biomejs","bun","cloudflare-workers","lighthouse-ci","playwright","postcss","react-aria-components","react-router","remix-run","tailwindcss","testing-library","typescript","vitest"],"latest_commit_sha":null,"homepage":"https://template.vhsdev.workers.dev","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"0bsd","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vhscom.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"COPYING","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":"2024-12-14T19:07:33.000Z","updated_at":"2025-01-11T02:58:20.000Z","dependencies_parsed_at":"2024-12-23T00:24:05.229Z","dependency_job_id":"63598d12-f829-4ac3-9a7e-dd39fd62e5e3","html_url":"https://github.com/vhscom/remix-cloudflare-template","commit_stats":null,"previous_names":["vhscom/remix-cloudflare-template"],"tags_count":0,"template":true,"template_full_name":null,"purl":"pkg:github/vhscom/remix-cloudflare-template","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vhscom%2Fremix-cloudflare-template","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vhscom%2Fremix-cloudflare-template/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vhscom%2Fremix-cloudflare-template/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vhscom%2Fremix-cloudflare-template/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vhscom","download_url":"https://codeload.github.com/vhscom/remix-cloudflare-template/tar.gz/refs/heads/trunk","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vhscom%2Fremix-cloudflare-template/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29443447,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-14T10:51:12.367Z","status":"ssl_error","status_checked_at":"2026-02-14T10:50:52.088Z","response_time":53,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["biomejs","bun","cloudflare-workers","lighthouse-ci","playwright","postcss","react-aria-components","react-router","remix-run","tailwindcss","testing-library","typescript","vitest"],"created_at":"2025-01-17T23:29:29.641Z","updated_at":"2026-02-14T11:03:13.787Z","avatar_url":"https://github.com/vhscom.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Remix Cloudflare Template\n\n\u003e Remix/RR7 starter template for Cloudflare Workers using the [Cloudflare Static Assets beta](https://developers.cloudflare.com/workers/static-assets/).\n\n[![Continuous Integration checks](https://flat.badgen.net/github/checks/vhscom/remix-cloudflare-template)](https://github.com/vhscom/remix-cloudflare-template/actions)\n[![Minimum Bun version](https://flat.badgen.net/badge/bun/\u003e=1.1.36/5c5983)](https://bun.sh)\n[![0BSD License](https://flat.badgen.net/github/license/vhscom/remix-cloudflare-template)](https://choosealicense.com/licenses/0bsd/)\n\n\n- 📖 [Cloudflare Remix docs](https://developers.cloudflare.com/pages/framework-guides/deploy-a-remix-site/)\n- 📖 [React Router docs](https://reactrouter.com/home)\n- 📖 [Remix docs](https://remix.run/docs)\n- 📖 [Remix Cloudflare docs](https://remix.run/guides/vite#cloudflare)\n\n## Getting Started\n\nUse this template as a starting point for your next app with [Remix Stacks](https://remix.run/stacks):\n\n```shell\nbunx create-remix@latest --template vhscom/remix-cloudflare-template\n\n# Alternatively, this will also work...\nbunx create-react-router@latest --template vhscom/remix-cloudflare-template\n```\n\nRun the above command from a terminal with [Bun](https://bun.sh/) installed and follow the guided setup.\n\n## Development\n\nInstall dependencies:\n\n```shell\nbun install\n```\n\nStart [Vite](https://vite.dev/) development server:\n\n```shell\nbun dev\n```\n\nTo test your app on the [workerd](https://github.com/cloudflare/workerd) runtime start wrangler dev\nserver with:\n\n```sh\nbun run build \u0026\u0026 bun start\n```\n\n## Testing\n\nThis template uses [Vitest](https://vitest.dev) for testing. Run the test suite:\n\n```shell\n# Run tests once\nbun test\n\n# Run tests in watch mode\nbun test:watch\n\n# Generate coverage report\nbun test:coverage\n```\n\n## Continuous Integration\n\nThis project includes automated CI workflows that run on pull requests and pushes to the `trunk` branch, performing the following checks:\n\n- Code quality and formatting with Biome\n- Type checking with TypeScript\n- Test suite with coverage reporting\n- Build verification\n\nTo see the status of CI checks, visit your repository's Actions/CI tab or check the status indicators on pull requests.\n\nLocal development tip: Run `bun run check` before pushing to ensure your code meets the same quality standards checked in CI.\n\n## Deployment\n\nBuild and deploy application:\n\n```shell\nbun run deploy\n```\n\nThis will build and upload the app, and upload static assets and generated build files to Cloudflare. You must have the correct KV namespace `id` set in `wrangler.toml` for the deployment to succeed.\n\nSee [Project Configuration](#project-configuration) for help configuring your KV namespace.\n\n## Project Configuration\n\nOnce you've created your app using the template, create a KV for each namespace binding defined in `wrangler.toml` and manually set its `id` in the configuration file for use during deployments to Cloudflare. To create a KV manually, locate KV in the [Cloudflare Dashboard](https://dash.cloudflare.com/) and choose `Create`.\n\nTo create a KV using the `wrangler` CLI you can run wrangler like:\n\n```shell\nbunx wrangler kv:namespace create LD_KV [--preview]\n```\n\nWhere `LD_KV` is the name of your KV store. And it will create the store and return the `id`. Pass the optional `--preview` flag if specifying the `preview_id` setting of the KV namespace.\n\nYou must be logged in with `wrangler login` to allow this behavior.\n\n## Lighthouse Testing\n\nRun automated Lighthouse tests against your local development server:\n\n```shell\nbun run lighthouse\n```\n\nConfigure test settings in `unlighthouse.config.ts`:\n\n```typescript\nconst budget = {\n  performance: 80,\n  accessibility: 95,\n  'best-practices': 90,\n  seo: 90,\n};\nconst routes = [\"/\", \"/private-landing\"];\n```\n\nCI enforces minimum scores across Lighthouse categories. JSON reports are generated in `.unlighthouse/ci-result.json`.\n\nSee the Unlighthouse docs for [help generating static reports](https://unlighthouse.dev/guide/guides/generating-static-reports).\n\n## License\n\nThis project is licensed under the Zero-Clause BSD License (0BSD) - see the [COPYING](COPYING) file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvhscom%2Fremix-cloudflare-template","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvhscom%2Fremix-cloudflare-template","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvhscom%2Fremix-cloudflare-template/lists"}