Skip to content

A fast, simple web framework for Go that makes building HTMX applications easy.

License

Notifications You must be signed in to change notification settings

editbase/thunder

Repository files navigation

🌠 Stardust

Stardust is a lightweight, server-driven web framework for Go that seamlessly integrates with HTMX. It provides a modern approach to building dynamic web applications while maintaining the simplicity and performance of Go.

Features

  • 🚀 Zero-JS by default (only HTMX required)
  • 🔄 Smart routing with automatic partial updates
  • 🎨 Template inheritance and layouts
  • 🛠️ Swappable engine architecture
  • 🔒 Built-in security headers
  • 🎯 Active link tracking
  • 🔥 Development mode with hot reloading

Getting Started

package main

import "github.com/editbase/stardust"

func main() {
    app := stardust.New().
        WithPort("3000").
        WithTemplateDir("./templates").
        WithStaticDir("./static")

    app.GET("/", func(c *stardust.Context) error {
        return c.Render("index.html", nil)
    })

    app.POST("/api/users", func(c *stardust.Context) error {
        // Handle user creation
    })

    app.Use(stardust.Logger(), stardust.Recover())

    app.Run()
}

Package Structure

github.com/editbase/stardust/
├── examples/
│   ├── blog/
│   └── saas/
├── internal/
│   ├── engine/
│   │   └── template.go
│   ├── handler/
│   │   └── static.go
│   └── util/
│       └── path.go
├── app.go
├── config.go
├── context.go
├── middleware.go
├── render.go
├── router.go
├── server.go
└── template.go

Roadmap

Core Features

  • Hot Reloading with HTMX partial updates
  • Type-safe routing with path parameter
  • Component-based templating with Templ integration
  • Router integrations (Chi, Echo, Fiber)
  • State management with context providers
  • Server-side rendering (SSR) support

Framework Integrations

  • React/Vue components for complex UI
  • TailwindCSS integration
  • WebSocket support
  • Database integrations (GORM, SQLx)
  • Authentication providers
  • Background job processing

Developer Experience

  • CLI tool for scaffolding
  • Testing utilities and mocks
  • API documentation generation
  • Docker and deployment tooling
  • GitHub Actions workflows
  • Development tools and debugging

Production Features

  • Edge computing support
  • Monitoring and logging
  • Security features and headers
  • Caching and performance
  • Database migrations
  • Load balancing support

Contributing

Contributions are welcome! If you find a bug or have a suggestion, please open an issue or submit a pull request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

A fast, simple web framework for Go that makes building HTMX applications easy.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages