- SvelteKit
- Turso (Using SQLite basically)
- Auth.js
- Drizzle ORM
- Tailwind CSS + Daisyui
https://orm.drizzle.team/learn/tutorials/drizzle-with-turso
https://docs.turso.tech/sdk/ts/orm/drizzle
https://authjs.dev/getting-started/authentication/oauth
https://authjs.dev/getting-started/adapters/drizzle
- Use
npx drizzle-kit push:sqlite
for pushing changes to the turso database. - The Auth.js documentation tells you to import the turso
db
client function from theschema.ts
file itself to use inauth.ts
. This, in my opinion, is a bad idea. So I separated the client and the schema into 2 files namelydb.ts
for the client andschema.ts
for the schema file. Then I just imported thedb
client function fromdb.ts
instead.
Everything you need to build a Svelte project, powered by create-svelte
.
If you're seeing this, you've probably already done this step. Congrats!
# create a new project in the current directory
npm create svelte@latest
# create a new project in my-app
npm create svelte@latest my-app
Once you've created a project and installed dependencies with npm install
(or pnpm install
or yarn
), start a development server:
npm run dev
# or start the server and open the app in a new browser tab
npm run dev -- --open
To create a production version of your app:
npm run build
You can preview the production build with npm run preview
.
To deploy your app, you may need to install an adapter for your target environment.