Metadata-Version: 2.4
Name: habab
Version: 0.1.0
Summary: A lightweight WSGI-compliant Python Web framework built from scratch.
Author-email: Musa Adam Babatunde <musaadambabatunde@gmail.com>
License-Expression: MIT
Classifier: Programming Language :: Python :: 3
Classifier: Operating System :: OS Independent
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Dynamic: license-file

#Habab 🔥

A lightweight, WSGI-Compliant Python web framework built from scratch using clean class-based routing and 00-architecture. And also designed for learning web framework internals while remaining simple enough to understand.

## Why Habab?

Habab was created to help Developers understand how web framwork internally.
If focuses on:

- Routing
- Http Request
- Http Response
- Controllers
- Middleware (Coming Soon🔥)
- Template Engine(Coming Soon🔥)


##Quickstart

##Installation
pip install habab

from habab import Habab, Controller

class HomeController(Controller):
    def index(self, request):
        return self.render("This is the home page")

app = Habab()
app.mount("/user", HomeController)

if __name__ = "__main__":
    app.run(port=8000)


##Feature

- **Class-Based Controllers:** Organized routes into clean, maintainable classes.
- **Dynamic Path Routing:** Map URL segments dynamically to controller methods.
- **Request & Query Parsing:** Access path info, HTTP methods, and URL parameters cleanly via `request.GET`
- **WSGI Compliant:** Works natively with python's standard 'wsgiref' server or production server like Gunicorn.


##RoadMap

Version 0.1
- Router
- Request
- Response
- Controllers

Version 0.2
- Router Parameters

Version 0.3
- Template Engine

Version 0.4
- Static Files

Version 0.5
- Middleware

Version 0.6
- Sessions

Version 0.7
- ORM
