SUPERKIT ๐
Build high-performance apps swiftly with minimal team resources in Go.
SUPERKIT is a full-stack web framework designed for speed and simplicity. It provides essential tools and libraries to help developers build modern web applications with ease.
โ ๏ธ Currently in Experimental Phase
๐ Table of Contents
๐ Features
โ
Lightweight & Fast โ Built on Go for blazing-fast performance.
โ
Modular Design โ Well-structured and easy to extend.
โ
Built-in Database Support โ Migrations, seeds, and ORM included.
โ
Templ-based Views โ Type-safe templating engine for UI components.
โ
Hot Reloading โ Instant feedback during development.
โ
One-Binary Deployment โ Compiles your app into a single executable.
๐ฅ Installation
Create a new SUPERKIT project with a single command:
# Initialize a new SUPERKIT project
go run github.com/khulnasoft/superkit@master [yourprojectname]
# Navigate into your project
cd [yourprojectname]
# Install TailwindCSS & esbuild
npm install
# Resolve Go dependencies
go clean -modcache && go get -u ./...
# Initialize database migrations (if authentication plugin is enabled)
make db-up
๐ Getting Started
๐ Project Structure
โโโ bootstrap
โ โโโ app
โ โ โโโ assets # Static files (CSS, JS)
โ โ โโโ conf # Configuration files
โ โ โโโ db # Database migrations
โ โ โโโ events # Custom event handlers
โ โ โโโ handlers # Request handlers (controllers)
โ โ โโโ types # Data models and interfaces
โ โ โโโ views # HTML templates
โ โโโ cmd
โ โ โโโ scripts # CLI commands & seed scripts
โ โโโ plugins
โ โ โโโ auth # Authentication module
โโโ public # Public assets
โโโ kit # Core framework utilities
โโโ validate # Validation utilities
โโโ view # View engine utilities
โโโ Makefile # Build & run scripts
โโโ go.mod # Go dependencies
โโโ README.md # Project documentation
๐ฎ Development Server
Run the development server:
make dev
๐ฅ Hot Reloading
Hot reloading is enabled by default for CSS & JS.
Note: On Windows (WSL2), you might need to run this command separately:
make watch-assets
๐ Database Migrations
Create a New Migration
make db-mig-create add_users_table
โก๏ธ Generates a new migration SQL file in app/db/migrations/
Apply Migrations
make db-up
Reset the Database
make db-reset
Seed the Database
make db-seed
โก๏ธ Runs the seed script in cmd/scripts/seed/main.go
๐ Creating Views with Templ
SUPERKIT uses Templ for type-safe UI components.
Create structured, reusable HTML fragments with Go templates.
โ
Validations (Coming Soon)
Stay tuned for built-in validation utilities!
๐งช Testing
Test Handlers
make test
โก๏ธ Runs automated tests for controllers & business logic.
๐ฆ Production Release
Compile your application into a single binary:
make build
โก๏ธ Creates a production-ready binary at /bin/app_prod.
Set the environment to production:
SUPERKIT_ENV=production
๐ Start building with SUPERKIT today! ๐