Skip to content

A minimal starter template using Svelte 5, Supabase, shadcn-svelte, GitHub auth, iconify, and Zod.

Notifications You must be signed in to change notification settings

engageintellect/sveltekit-supabase

Folders and files

NameName
Last commit message
Last commit date

Latest commit

389e4a6 Â· Jul 4, 2024

History

12 Commits
Jul 3, 2024
Jul 4, 2024
Jul 3, 2024
Jul 3, 2024
Jul 3, 2024
Jul 3, 2024
Jul 3, 2024
Jul 3, 2024
Jul 3, 2024
Jul 3, 2024
Jul 3, 2024
Jul 3, 2024
Jul 3, 2024
Jul 3, 2024
Jul 3, 2024
Jul 3, 2024
Jul 3, 2024
Jul 3, 2024
Jul 3, 2024
Jul 3, 2024

Repository files navigation

sveltekit-supabase

Description

A simple SvelteKit app that uses Supabase for authentication via GitHub authentication.

Features

  • Sign in with GitHub
  • Sign out
  • Display user information
  • Update user information

Technologies

  • SvelteKit: A framework for building web applications with Svelte
  • TypeScript: A typed superset of JavaScript that compiles to plain JavaScript
  • Supabase: An open-source Firebase alternative
  • shadcn-svelte: A Tailwind CSS component library for Svelte, based on shadcn
  • Tailwind CSS: A utility-first CSS framework
  • Iconify: A unified icon framework using icons from icones.js
  • Zod: A TypeScript-first schema declaration and validation library

Getting Started

Running Locally

Prerequisites

  1. Clone the repo
git clone https://github.com/engageintellect/sveltekit-supabase
cd sveltekit-supabase
  1. Install dependencies
pnpm i
  1. Create a .env.local based on .env.example and fill in your own credentials
cp .env.example .env.local
  1. Start your supabase server with
supabase start

Note: You need to have the Supabase CLI installed to run the above command.

  1. Supabase console will be available at http://localhost:54323

  2. Start your app

pnpm run dev
  1. Navigate to localhost:5173 to see your app running.

Deploying to Vercel

The easiest way to deploy this app is to use Vercel. You can deploy this app with the following steps:

Database

  1. Create a new project in the Supabase dashboard

  2. Login to supabase using the console

supabase login
  1. Link your project to the supabase cli
supabase link --project-ref <YOUR_PROJECT_ID>
  1. Deploy your database
supabase db push

Client

  1. Create a new project on Vercel
  2. Connect your GitHub repository
  3. Add a new github OAuth app in the Github developer settings
  4. Configure your environment variables, make sure you are using updated values from your newly-created Supabase project and Github OAuth app
  5. Deploy

Contributing

Contributions are welcome! Please feel free to submit a PR or open an issue.

Thanks

Shout out to Davis Media for building the base template for this project! 🤙