1- ## Helium Web Framework Roadmap
1+ ## Feature Roadmap
22
3- This document outlines the development roadmap for Helium, a lightweight, configurable micro web framework for Zig.
3+ This document includes the roadmap for the Helium web framework.
4+ It outlines features to be implemented and their current status.
45
56> [ !IMPORTANT]
6- > This roadmap is a living document and may change based on community feedback and evolving needs.
7-
8- ### Philosophy & Design Goals
9-
10- Helium is designed as a ** micro-framework** with these core principles:
11- - ** Configurability First** : Nothing is hardcoded; everything is opt-in and customizable
12- - ** Minimal Core** : Keep the core API small and focused
13- - ** Composability** : Features should be independent and composable
14- - ** Zero Magic** : Explicit, predictable behavior without hidden abstractions
15- - ** Performance** : Efficient use of resources with multiple concurrency models
7+ > This roadmap is a work in progress and is subject to change.
168
179---
1810
19- ### ✅ Implemented Features
11+ ### Implemented Features
2012
2113#### Core Framework
14+
2215- [x] Generic ` App ` type with custom context support
2316- [x] Type-safe request handlers and middleware
2417- [x] Configurable memory allocator per application
2518- [x] Custom error handler support
2619- [x] Multi-mode server (thread pool and event-driven I/O)
2720
2821#### Routing System
22+
2923- [x] Express.js-like routing API
3024- [x] HTTP method support (GET, POST, PUT, DELETE, PATCH, HEAD, OPTIONS)
3125- [x] Dynamic route parameters (e.g., ` /users/:id ` )
@@ -34,19 +28,22 @@ Helium is designed as a **micro-framework** with these core principles:
3428- [x] Tree-based router for efficient path matching
3529
3630#### Middleware System
31+
3732- [x] Global middleware (applied to all routes)
3833- [x] Group-scoped middleware (applied to route groups)
3934- [x] Route-specific middleware chains
4035- [x] Middleware composition with ` next() ` pattern
4136- [x] Type-safe middleware signatures
4237
4338#### Built-in Utilities
39+
4440- [x] CORS middleware (allow-all origins)
4541- [x] Static file server with path traversal protection
4642- [x] Common log format middleware with timing
4743- [x] JSON response helpers
4844
4945#### Request/Response
46+
5047- [x] Request parameter access (path params, query params)
5148- [x] Request body string access
5249- [x] Response status code setting
@@ -56,9 +53,10 @@ Helium is designed as a **micro-framework** with these core principles:
5653
5754---
5855
59- ### 📋 Planned Features
56+ ### Planned Features
6057
6158#### 1. Enhanced Routing
59+
6260- [ ] Route wildcards (e.g., ` /files/* ` )
6361- [ ] Route matching with regular expressions
6462- [ ] Route priority/ordering control
@@ -67,6 +65,7 @@ Helium is designed as a **micro-framework** with these core principles:
6765- [ ] Automatic OPTIONS handling per route
6866
6967#### 2. Request Handling
68+
7069- [ ] Multipart form data parsing
7170- [ ] File upload handling
7271- [ ] Request body size limits (configurable)
@@ -76,6 +75,7 @@ Helium is designed as a **micro-framework** with these core principles:
7675- [ ] Custom body parsers (pluggable)
7776
7877#### 3. Response Enhancements
78+
7979- [ ] Response streaming API for large payloads
8080- [ ] Request body streaming for file uploads
8181- [ ] Template rendering support (pluggable)
@@ -86,6 +86,7 @@ Helium is designed as a **micro-framework** with these core principles:
8686- [ ] Chunked transfer encoding
8787
8888#### 4. Middleware Ecosystem
89+
8990- [ ] Configurable CORS middleware (custom origins, methods, headers)
9091- [ ] Rate limiting middleware
9192- [ ] Authentication middleware (JWT, Bearer, Basic Auth)
@@ -99,6 +100,7 @@ Helium is designed as a **micro-framework** with these core principles:
99100- [ ] Circuit breaker pattern
100101
101102#### 5. Performance & Scaling
103+
102104- [ ] Connection pooling
103105- [ ] Request/response pooling
104106- [ ] Zero-copy optimizations
@@ -108,20 +110,23 @@ Helium is designed as a **micro-framework** with these core principles:
108110- [ ] Metrics and monitoring hooks
109111
110112#### 6. Error Handling
113+
111114- [ ] Error recovery middleware
112115- [ ] Detailed error responses (development mode)
113116- [ ] Error logging integration points
114117- [ ] Panic recovery
115118- [ ] Structured error types
116119
117120#### 7. Testing & Development
121+
118122- [ ] Test client for integration testing
119123- [ ] Mock request/response builders
120124- [ ] Development mode with hot reload (external tool integration)
121125- [ ] Request/response logging levels
122126- [ ] Debug middleware
123127
124128#### 8. Security
129+
125130- [ ] HTTPS/TLS support
126131- [ ] Certificate management helpers
127132- [ ] Input sanitization helpers
@@ -131,6 +136,7 @@ Helium is designed as a **micro-framework** with these core principles:
131136- [ ] Request size limits
132137
133138#### 9. Documentation & Examples
139+
134140- [x] Basic examples (simple server, error handling)
135141- [x] Route grouping example
136142- [ ] REST API example
@@ -144,6 +150,7 @@ Helium is designed as a **micro-framework** with these core principles:
144150- [ ] Migration guide from other frameworks
145151
146152#### 10. Ecosystem Integration
153+
147154- [ ] Database connection pooling patterns
148155- [ ] ORM integration examples
149156- [ ] Message queue integration patterns
@@ -153,7 +160,7 @@ Helium is designed as a **micro-framework** with these core principles:
153160
154161---
155162
156- ### 🎯 Future Considerations
163+ ### Future Considerations
157164
158165These features are being considered but not yet prioritized:
159166
@@ -168,13 +175,3 @@ These features are being considered but not yet prioritized:
168175- Service mesh integration
169176- Admin panel/dashboard
170177- Plugin system architecture
171-
172- ---
173-
174- ### Contributing
175-
176- Want to help implement a feature? Check our [ CONTRIBUTING.md] ( CONTRIBUTING.md ) guide!
177-
178- ### Feedback
179-
180- Have suggestions for the roadmap? Open an issue or discussion on our [ GitHub repository] ( https://github.com/CogitatorTech/helium ) .
0 commit comments