mirror of
https://github.com/LukeHagar/Sveltey.git
synced 2025-12-06 04:21:38 +00:00
5.4 KiB
5.4 KiB
🚀 Sveltey - SvelteKit SaaS Template
A modern, production-ready SaaS template built with SvelteKit 2, Svelte 5, Supabase, and Skeleton UI. Get your SaaS project up and running in hours, not months.
✨ Features
🔐 Authentication & User Management
- Supabase Auth Integration: Complete authentication flow with email/password and OAuth providers
- Protected Routes: Automatic route protection and session management
- User Profiles: Customizable user profile management
- Password Reset: Secure password reset functionality
🎨 Modern UI/UX
- Skeleton UI: Beautiful, accessible components out of the box
- Dark/Light Mode: Built-in mode switching
- Comprehensive Themes: 22 beautiful handmade themes
- Responsive Design: Mobile-first, responsive layouts
- Loading States: Elegant loading indicators and transitions
- Toast Notifications: User-friendly feedback system
📊 Dashboard & Analytics
- Admin Dashboard: Clean, intuitive admin interface
- User Analytics: Basic user metrics and insights
- Real-time Updates: Live data updates using Supabase real-time
- Data Visualization: Charts and graphs for key metrics
📝 Content Management
- Blog System: Built-in blog with markdown support
- SEO Optimized: Meta tags, Open Graph, and structured data
🚀 Quick Start
# Clone the repository
git clone https://github.com/yourusername/sveltey.git
cd sveltey
# Install dependencies
npm install
# Set up environment variables
cp .env.example .env
# Edit .env with your Supabase and Stripe keys
# Start the development server
npm run dev
Visit http://localhost:5173 and start building your SaaS!
📦 Tech Stack
- Framework: SvelteKit 2 with Svelte 5
- Database: Supabase (PostgreSQL)
- Authentication: Supabase Auth
- UI Components: Skeleton UI
- Styling: Tailwind CSS
- Deployment: Vercel/Netlify ready
- Language: TypeScript
📁 Project Structure
src/
├── lib/
│ ├── components/ # Reusable UI components
│ ├── stores/ # Svelte stores for state management
│ ├── utils/ # Utility functions
│ └── types/ # TypeScript type definitions
├── routes/
│ ├── (app)/ # App routes
| | ├── api # API routes, security is handled at the endpoint level
| | ├── app # App routes, security is handeled globally, all sub-routes are protected
| | └── auth # Auth routes, used for login, logout, and password reset functionality
│ └── (marketing)/ # Public marketing pages
| ├── blog # API routes, security is handled at the endpoint level
| ├── contact # Contact page
| ├── pricing # Pricing page
| ├── privacy # Privacy policy page
| └── terms # Terms of service page
├── app.html # App shell
├── app.css # Global styles
└── hooks.server.ts # Server hooks
🔧 Configuration
Environment Variables
Create a .env file in the root directory:
# Supabase
PUBLIC_SUPABASE_URL=your_supabase_url
PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key
# Stripe // coming soon
PUBLIC_STRIPE_PUBLISHABLE_KEY=your_stripe_publishable_key
STRIPE_SECRET_KEY=your_stripe_secret_key
STRIPE_WEBHOOK_SECRET=your_webhook_secret
Supabase Setup
- Create a new Supabase project
- Copy the project URL and anon key
- Run the included SQL migrations
- Set up your authentication providers
Stripe Setup
- Create a Stripe account
- Copy your API keys
- Configure your products and pricing
- Set up webhooks for subscription events
🎯 Customization
Branding
- Update
app.htmlfor favicon and meta tags - Modify
src/lib/config.tsfor app configuration - Customize colors in with a custom Skeleton UI theme
- Replace logo
Components
- All components are in
src/lib/components/ - Skeleton UI provides the base component library
- Easy to theme and customize with CSS variables
🤝 Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🆘 Support
- Issues: Report bugs or request features via GitHub Issues
🙏 Acknowledgments
- SvelteKit - The amazing web framework
- Supabase - Backend as a Service
- Skeleton UI - UI component library
- Tailwind CSS - Utility-first CSS framework
- Stripe - Payment processing
Ready to launch your SaaS? Get started with Sveltey today!