Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Cascading, Highly Irrelevant, Lost Llamas

Or, just chill. This is a database driven web application framework in Flask and it can be used to create static or dynamic web sites.

This involves creating custom SQL queries to pull data from a database and uses Jinja2 HTML templates to populate pages for a website. Chill can create static files for the website or can run as a Flask app and build pages on request.

Chill is database driven when it comes to handling http requests. Each http request uses data from the database when determining what content to show on the page as well as what HTML templates to use. Content for a page can come from other database queries and can recursively call other queries when populating the page.

Installing

Chill can be installed via pip.

python3 -m pip install chill

Or from within this cloned project; install with pip in editable mode. It is recommended to setup a virtual environment first.

# Create a python virtual environment in the project directory and activate it.
python3 -m venv .
source ./bin/activate

# Install chill in editable mode
python3 -m pip install -e .

This will create a script called chill. Type chill --help for help on using it. It will need a config file and such. I recommend creating an empty directory and running chill init within it. That will create a site.cfg config file and the bare minimum to show a homepage. Run the chill run --config site.cfg and visit http://localhost:5000/ with your browser.

Quick start

Run the chill init script in an empty directory and it will create a minimal starting point for using Chill. The site.cfg created will have comments on each configuration value. The chill run --config site.cfg will run the app in the foreground at the http://localhost:5000/ URL. Notice that the script also creates a sqlite database file (default file name is 'db') in that directory. This database file is what chill uses to display the pages in a site.

Review the docs for more. Some helpful guides and such are in the docs/ folder. The tests.py file within the chill package is also a good resource.

Static site generator

The command chill freeze --config site.cfg will go through all the URLs and create a static version of each page. It places all the necessary files in a folder which can then be uploaded to a static web server. This is a wrapper around the Frozen-Flask python package. Which is partly the inspiration behind the name 'chill'. Also, llamas are cool and have two 'l's like chill.

Websites using chill

Docker

I've included a Dockerfile which can be used when creating a container for chill. See the guide on using chill with docker.

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

License

GNU Lesser General Public License v3.0

Metadata

Release files for chill 0.10.0a1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for chill 0.10.0a1
File Size Uploaded
chill-0.10.0a1.tar.gz 54.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for chill 0.10.0a1
File Interpreter ABI Platform
chill-0.10.0a1-py3-none-any.whl Python 3 none any Details

Total release size: 121.0 kB

Release files / chill-0.10.0a1.tar.gz

Download URL chill-0.10.0a1.tar.gz
Size 54.8 kB
Tags Source
SHA-256 checksum
How to use checksums
855850a964c1a076115b8ea9ce2eabca612e89f09760aed4fad41861de3f69b4
BLAKE2b-256 checksum
How to use checksums
809e5a919933a7e678ccb1fbe375c6051bbe677979cf192a339ad409a9e4424e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.8.10

Release files / chill-0.10.0a1-py3-none-any.whl

Download URL chill-0.10.0a1-py3-none-any.whl
Size 66.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e11cbc0de8cc6fea5c1b21ab104b9f1ab8d4c8b1e4f282cca976b2f9b8ff1cd8
BLAKE2b-256 checksum
How to use checksums
98e84fdbd4fbdadc6aea87e89d3118ef0141ba796d878c9fad6d0e1e76d94d04
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.8.10
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page