Tanstack Start provides full-document SSR, Streaming, Server Functions, bundling and more, powered by TanStack Router and Vite.
A powerful React router for client-side and full-stack react applications. Fully type-safe APIs, first-class search-params for managing state in the URL and seamless integration with the existing React ecosystem.
Better-Auth provides APIS and hooks for us to code all the functiions necessary for us to implememnt authentication and some authorization.
Drizzle is the ORM (Object Relational Mapper) that allows our application to communicate with the database.
date-fns Date processing and formatting.
Once you have cloned the source from GitHub, install the dependencies.
pnpm iWe are using a Postgres instance hosted in Docker for local development work. Execute the following command to initialize and start the instance.
docker compose up -dAnytime we change the Better-Auth configuration by adding or removing features, we will need to generate a new schema and manually incorporate those changes in the src/db/schema.ts file.
First, run the command which generates the schema required by Better-Auth:
pnpm run auth:generateNext, open src/db/new-auth-schema.ts and compare to src/db/schema.ts. Migrate over any changes. Once complete, you can delete src/db/new-auth-schema.ts.
pnpm run db:pushpnpm run db:seedpnpm run devDrizzle Studio is a useful UI for interacting with the database configured for use by Drizzle ORM.
pnpm run db:studiopnpm dlx shadcn@latest apply --preset b6WK0xowQqThemes https://tweakcn.com/themes/cmlnfhvh2000004l7ggzsans1 https://tweakcn.com/themes/cmmadj6zx000204l23giib1s2 https://tweakcn.com/themes/cmmz25mmt000204l08j7sbxg6 https://tweakcn.com/themes/cmmab9sq4000004l58w1r3vak https://tweakcn.com/themes/cmlk6zefr000004lbe9jygsqc