A tiny web framework called digwebs which is developed by Python. You can checkout the detail design of digwebs in www.digolds.cn. The following steps will guide you quickly build a web service using digwebs.
- Install digwebs by
pip
pip install digwebs- Create a web service project, for example, my project name is "hello-world"
digwebs hello-worldAfter succesfully create the project, cd to it, you will see the following contents:
|____favicon.ico
|____wsgiapp.py
|____test
|____middlewares
|____static
| |____css
| |____images
| |____js
| |____fonts
|____controllers
| |____main_controller.py
|____views
- controllers is where you put controller script
- middlewares is where you put middlewares script
- static is where you put front end script such as css file, javascript file, font, image etc
- test is where you put the test script for your web app
- views is where you put the html file
The content in wsgiapp.py is shown below:
#!/usr/bin/env python
__author__ = 'SLZ'
'''
digwebs framework demo.
'''
import logging
logging.basicConfig(level=logging.INFO)
from digwebs.web import get_app
import os
dir_path = os.path.dirname(os.path.realpath(__file__))
digwebs_app = get_app({'root_path':dir_path})
digwebs_app.init_all()
if __name__ == '__main__':
digwebs_app.run(9999, host='0.0.0.0')
else:
wsgi_app = digwebs_app.get_wsgi_application()The content in main_controller.py is shown below:
#!/usr/bin/env python
__author__ = 'SLZ'
'''
digwebs framework controller.
'''
from digwebs.web import current_app
@current_app.get('/')
def hello_world():
return """
<html>
<style>
html,body{
height:100%;
padding:0;
margin:0;
}
*{
box-sizing:border-box;
}
.container{
width:100%;
height:100%;
display:flex;
justify-content:center;
align-items:center;
}
</style>
<body>
<div class="container">
<h1>digwebs - A Minimal Web Framework!</h1>
</div>
</body></html>
"""- Run
python wsgiapp.py, you can see the following output:
INFO:root:Add module: controllers.main_controller
INFO:root:Add route: Route(static,GET,path=/)
INFO:root:application (/Users/slz/dev/src/digwebs/hello-world) will start at 0.0.0.0:9999..- Open your browser and enter
localhost:9999, you see the content"digwebs - A Minimal Web Framework!"
Note: if you want to learn more about digwebs, head over here.
We are looking for contributors. Please check open issues in the above repos if you think you could help, or open a new one if you have an idea you'd like to discuss.
This project is licensed under the MIT open source license.