Hotaru Web Framework
Small, sweet, easy framework for full-stack Rust web applications
📋 Overview
Hotaru is a lightweight, intuitive web framework focused on simplicity and productivity. It supports regex-based routing, tree-structured URLs, and integrates seamlessly with the Akari templating system.
MSRV: 1.86
✨ Key Features
- Simple API: Intuitive request/response handling with minimal boilerplate
- Full-Stack: Built-in template rendering with Akari templates
- Flexible Routing: Support for regex patterns, literal URLs, and nested routes
- Asynchronous: Built with Tokio for efficient async handling
- Form Handling: Easy processing of form data and file uploads
- Middleware Support: Create reusable request processing chains
- Multi-Protocol Support: Handle HTTP/HTTPS, WebSocket, and custom TCP protocols
- Security: Built-in request validation, size limits, and safety controls
🚀 Quick Start
use *;
pub static APP: SApp = new;
async
endpoint!
📦 Installation
Add to your Cargo.toml:
[]
= "0.7.3"
= { = "1", = ["full"] }
🎯 Core Concepts
Endpoints
Define routes with the endpoint! macro:
endpoint!
Middleware
Create reusable middleware:
use CookieSession;
pub static APP: SApp = new;
Templates
Render HTML with Akari:
endpoint!
HTTP Safety Configuration
Configure request validation per endpoint:
endpoint!
📚 Examples
Check out the example repository for:
- Basic routing and handlers
- Form processing and file uploads
- Session management with cookies
- CORS configuration
- Multi-protocol applications
🔧 Crate Ecosystem
Hotaru is built on a modular architecture:
- hotaru - Main framework with convenient API
- hotaru_core - Core protocol and routing engine
- hotaru_meta - Procedural macros for endpoint! and middleware!
- hotaru_lib - Utility functions (compression, encoding, etc.)
- htmstd - Standard middleware library (CORS, sessions)
📋 Changelog
0.7.x (Current)
- Multi-protocol support (HTTP, WebSocket, custom TCP)
- Enhanced security controls with HttpSafety
- Improved middleware system with protocol inheritance
- Performance optimizations in URL routing
- Comprehensive security testing
0.6.x
- Protocol abstraction layer
- Request context improvements
- Standard middleware library (htmstd)
- Cookie-based session management
0.4.x and earlier
- Async/await support with Tokio
- Akari templating integration
- Cookie manipulation APIs
- File upload handling
- Form data processing improvements
🔮 Roadmap
- WebSocket support improvements
- HTTP/2 protocol implementation
- GraphQL integration
- Advanced caching strategies
- Performance benchmarking suite
📚 Learn More
- Akari Template Engine: https://crates.io/crates/akari
- Homepage: https://fds.rs
- GitHub: https://github.com/Field-of-Dreams-Studio/hotaru
- Documentation: https://docs.rs/hotaru
📬 Get Involved
- GitHub Issues: https://github.com/Field-of-Dreams-Studio/hotaru/issues
- Discussions: https://github.com/Field-of-Dreams-Studio/hotaru/discussions
- Email: redstone@fds.moe
- Discord Group: https://discord.gg/Y6b9KRUCux
- QQ Group: 860691370
- Join FDS: https://forms.office.com/Pages/ResponsePage.aspx?id=DQSIkWdsW0yxEjajBLZtrQAAAAAAAAAAAAMAAC6BwJ5UQ0lQUzdMTjhGR1g3SElLTFdHQUlJV0hFMS4u
📄 License
GPL-3.0 License
Copyright (c) 2025 @ Field of Dreams Studio