Heaven v0.3.9
Welcome To Heaven¶
You are probably here because you want to build a web application using Python. Well, Welcome to heaven - the super simple, extremely fast, web framework for purists.
Building a web application with heaven is stupid simple as the code snippet below shows
from heaven import Router # also available as App, Application
# create your web app i.e. a simple router/multiplexer
app = Router()
app.ASSETS('assets_folder_path')
app.TEMPLATES('templates_folder_path')
# for async support use an async func/method not a lambda
app.GET('/', lambda req, res, ctx: res.renders('index.html'))
And to run your new app from heaven?
$ uvicorn app:app --port 5000 --reload
Heaven's Goals vs Building Useful Apps¶
Heaven was designed with 3 goals in mind. The example above creates a simple heaven app but it does not do anything useful.
But, what do we mean when we say an app is useful, and how does it relate to Heaven's Goals?
In our opinion a useful app(s):
- Solves a problem
- Is extremely simple to learn (Mastery in 10mins or less)
- Is optimized for speed
These are also Heaven's goals.
-
Heaven solves the framework mastery problem - Enabling engineers build APIs and Web Applications that also embody Heaven's goals.
-
Is super simple to learn - in line with it's goal of
Mastery in 10 mins or less
. If you find a python web framework easier to learn than Heaven, use it. -
Faster than Django, Flask, Pyramid etc. and will get even faster as it is optimized further.
Why Another Python Web Framework?¶
Because we needed something small enough to be learnt completely by new engineers in less than 10 minutes. Complete mastery with no grey spots.
Okay, What Next?¶
-
Minute 1: Quickstart : Toe in the water
-
Minute 2: Request to Heaven
-
Minute 3: Response from Heaven
-
Minute 4: Context of Heaven
-
Minute 5: Heaven Application
-
Minute 6: Rendering HTML Templates & Public Assets
-
Minute 7: Drink some coffee
-
Minute 8: Mounting Applications
-
Minute 9: Authentication & Data Validation Guidelines/Code Snippets
-
Minute 10: Congratulate Yourself