Skip to content

khulnasoft/superkit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

30 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

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! ๐Ÿ’™

About

No description, website, or topics provided.

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •