{"id":24445875,"url":"https://github.com/ally-ahmed/tss-app","last_synced_at":"2026-02-23T22:31:07.481Z","repository":{"id":250701255,"uuid":"835148165","full_name":"ally-ahmed/tss-app","owner":"ally-ahmed","description":"TanStack Start starter with shadcn/ui, tRPC, Drizzle  and Lucia-Auth.","archived":false,"fork":false,"pushed_at":"2024-09-15T13:45:16.000Z","size":5110,"stargazers_count":21,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-12T22:55:08.759Z","etag":null,"topics":["drizzle-orm","lucia-auth","shadcn-ui","tanstack","tanstack-react-query","tanstack-router","trpc"],"latest_commit_sha":null,"homepage":"https://tss-app-theta.vercel.app","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/ally-ahmed.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":"2024-07-29T08:59:21.000Z","updated_at":"2025-03-30T17:18:52.000Z","dependencies_parsed_at":"2024-08-08T20:39:33.752Z","dependency_job_id":"e6b177d9-e557-4af8-ae7e-28ac92f6b325","html_url":"https://github.com/ally-ahmed/tss-app","commit_stats":null,"previous_names":["ally-ahmed/tss-app"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ally-ahmed%2Ftss-app","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ally-ahmed%2Ftss-app/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ally-ahmed%2Ftss-app/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ally-ahmed%2Ftss-app/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ally-ahmed","download_url":"https://codeload.github.com/ally-ahmed/tss-app/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248643050,"owners_count":21138353,"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":["drizzle-orm","lucia-auth","shadcn-ui","tanstack","tanstack-react-query","tanstack-router","trpc"],"created_at":"2025-01-20T23:30:48.866Z","updated_at":"2026-02-23T22:31:02.456Z","avatar_url":"https://github.com/ally-ahmed.png","language":"TypeScript","funding_links":[],"categories":["Boilerplates \u0026 Starters"],"sub_categories":[],"readme":"# TSS App 🏝️\n\nTanstack Start simple starter project.\n\n\n![App Screenshot](./app-screenshot.png)\n\n\n## Tech Stack\n\n- [Tanstack Start](https://tanstack.com/router/latest/docs/framework/react/guide/tanstack-start#tanstack-start)\n- [Tailwind CSS](https://tailwindcss.com)\n- [shadcn/ui](https://ui.shadcn.com/)\n- [tRPC](https://trpc.io)\n- [Drizzle](https://orm.drizzle.team)\n- [Lucia Auth - Adapters Removed RFC](https://github.com/lucia-auth/lucia/issues/1639)\n\n\n## Acknowledgements\n\n - [Julius's tss app with tRPC implementation.](https://github.com/juliusmarminge/tss)\n - [tanstack.com for the useMutation wrapper to help with redirects.](https://github.com/TanStack/tanstack.com/blob/b7e54b4fdec169b86dc45b99eb74baa44df998f5/app/hooks/useMutation.ts)\n - [dotnize beat me to it and ceated a starter project. I liked their API routes structure so the API routes for auth is inspired by theirs.](https://github.com/dotnize/tanstarter)\n - [ethanniser drizzle config to handle local, remote, local-replica for libsql.](https://github.com/ethanniser/beth-b2b-saas/blob/main/src/db/primary/index.ts)\n - [create-t3-app I am sure I copied some stuff from here as well](https://github.com/t3-oss/create-t3-app)\n - [UI inspired by again the legend Julius's create-t3-turbo](https://github.com/t3-oss/create-t3-turbo)\n- [shadcn-ui/taxonomy](https://github.com/shadcn-ui/taxonomy/tree/651f984e52edd65d40ccd55e299c1baeea3ff017)\n\n## Getting Started\n\nClone project\n\n```bash\n  git clone git@github.com:ally-ahmed/tss-app.git\n  cd tss-app\n```\n    \nInstall depndencies\n\n```bash\npnpm install\n```\n\nCreate db and tables\n```bash\npnpm db:push\n```\n\nRun app\n```bash\npnpm dev\n```\n\n## Environment Variables\n\nTo run this project, you will need to add the following environment variables to your .env file\n\n\n`GITHUB_CLIENT_ID=\"\"`\n\n`GITHUB_CLIENT_SECRET=\"\"`\n\n\n\n## TODO\n- Cache auth validation\n- Custom fonts\n\n- Investigate if there is a way to return a redirect from the server function without it being an error and \nit automatically does the redirect in the client. Tanner suggest `userServerFn` should work and it does for only URLs within the app but not external URL. So the `useServerFn` works for logout but not for Github login. And even with the logout it still goes throw the error channel\n\n- Maybe look at ESLint, Prettier or even jump ship and use biomejs\n\n\n## challenges/skill issue\n\n- CSS flicker on hard refresh (ctrl/command + shift + r) so I had to import the css like this then it stopped.\n```ts\nimport '@/styles/globals.css'\nimport appCss from '@/styles/globals.css?url'\n```\nand also a link to Route options\n```ts\n  links: () =\u003e [{ rel: 'stylesheet', href: appCss }],\n```\n- useMutation hook considers a server function that return a redirect as an error so you get the result of the redirect in the error channel.\n```\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fally-ahmed%2Ftss-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fally-ahmed%2Ftss-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fally-ahmed%2Ftss-app/lists"}