Introduction

KianKit is setup like a regular SvelteKit app with some added folders, and modified routing.

Structure

src/
├── lib/ # Library files containing reusable components, layouts, schemas, server-side utilities, and helper functions.
│   ├── components/ # Components used across the application.
│   ├── layouts/ # Layouts that define the structure for different pages or sections.
│   ├── schemas/ # Schemas for data validation and structure.
│   ├── server/ # Server-side code and utilities.
│   └── utils.js # General utility functions used across the project.
├── routes/ # Route definitions and corresponding page components for the application.
│   ├── (app)/ # Application-specific routes, likely for the main user experience.
│   ├── (auth)/ # Authentication-related routes, such as login and signup.
│   ├── (marketing)/ # Marketing pages, possibly for landing pages or promotional content.
│   └── sitemap.xml/ # Sitemap directory, likely for generating a sitemap.xml for SEO.
static/ # Static files like images, fonts, or other assets that don’t change frequently.

Prerequisites

Before you begin, ensure you have met the following requirements:

  • You have pNPM installed on your machine.
  • Create a Supabase project.

You should be good to go!

Installation

Setup

You will need to rename the .env.example to .env and fill in the environment variables with your Supabase project’s variables.

Email configuration

To ensure email & password auth works properly it is recommened to set up a proper SMTP server with Supabase. You can learn more about that here. I recommend using Resend for this.

OAuth

You must follow the following guides to get OAuth up and running:

Running the project

Now that your project is set up, you can run the project!

pnpm run dev