Skip to content

deancochran/cadence

Repository files navigation

Full Stack SvelteKit Starter Pack

Welcome to the Full Stack SvelteKit Starter Pack! This repository provides a solid foundation for building web applications with SvelteKit, incorporating various technologies and tools such as SvelteKit, Lucia for authentication, Prisma for the database, Skeleton UI for basic styling, SvelteKit Super Forms for form handling, and Zod for validation. This README will guide you through the setup and usage of this starter pack.

Features

  • SvelteKit: A powerful framework for building web applications with a focus on simplicity and performance.

  • Lucia Authentication: Lucia is a lightweight authentication library for SvelteKit that provides user authentication and authorization functionalities out of the box.

  • Prisma Database: Prisma is a modern database toolkit that simplifies database access, making it easier to work with databases like PostgreSQL, MySQL, and SQLite.

  • Skeleton UI: A minimal and responsive CSS framework to give your project a clean and simple starting point for styling.

  • SvelteKit Super Forms: An advanced form handling library for SvelteKit that streamlines form development and validation.

  • Zod Validation: Zod is used for schema-based validation to ensure data integrity and enhance security.

Getting Started

Prerequisites

Before you get started, ensure you have the following software installed:

  • Node.js: You can download and install Node.js from nodejs.org.

Installation

  1. Clone this repository:

    git clone https://github.com/yourusername/full-stack-sveltekit-starter-pack.git
  2. Navigate to the project folder:

    cd full-stack-sveltekit-starter-pack
  3. Install the project dependencies:

    npm install

Configuration

Before running the application, you need to configure your database and authentication settings.

  1. Database Configuration:

    • Configure your database connection in the .env file. You can use the .env.example file as a template.

    • Initialize the Prisma schema and database by running:

      npx prisma db push
  2. Authentication Configuration:

    • Configure authentication settings in src/lib/auth.js.

Usage

Once you've completed the installation and configuration steps, you can start and use the application.

  • To run the development server:

    npm run dev
  • Access the application at http://localhost:3000.

Folder Structure

The project structure is organized as follows:

  • src/routes: Contains your SvelteKit routes and pages.
  • src/lib: Includes libraries and utilities like authentication and form handling.
  • src/components: Custom Svelte components.
  • static: For static assets like images and CSS.
  • prisma: Prisma configuration and schema files.
  • .env: Environment variables configuration.

Customization

Feel free to customize this starter pack to meet your specific project requirements. You can add new routes, modify the UI, extend authentication functionalities, and adapt the database schema to your needs.

Deployment

When you're ready to deploy your application to a production environment, please follow the deployment guidelines for your chosen hosting platform. Remember to set your environment variables securely.

Support and Contribution

If you encounter issues or have suggestions for improvement, please open an issue or a pull request on this repository. We welcome contributions from the community to make this starter pack even better.

License

This project is licensed under the MIT License. Please review the LICENSE file for details.


Thank you for choosing the Full Stack SvelteKit Starter Pack! We hope this foundation accelerates your development process and helps you build amazing web applications with SvelteKit. If you have any questions or need assistance, feel free to reach out to our community or contributors.

Happy coding! 🚀