Skip to content

ifpen/chalk-it

Repository files navigation

Chalk'it

Welcome to Chalk'it. Chalk'it ambition is to allow technicians, scientists or engineers, not specialists in web technologies, to build their own web applications based on the Python code, JavaScript code or web-services they develop. Watch this 5 minutes video for a quick introduction: https://www.youtube.com/watch?v=vY8I1XwKs9k or this more detailed demo: https://www.youtube.com/watch?v=4O2IfRogeCc.

live demo

Currently, Chalk'it allows to export and share standalone HTML apps with Python and/or JavaScript code, thanks to Pyodide. Since version 0.5.0, Chalk'it is able to run standard Python code and host related dashboard as Docker images.

See the demos gallery and templates gallery for examples with code.

For more details, you can browse the online documentation.

Usage

Install

pip install py-chalk-it

Run

chalk-it

Chalk'it will be automatically launched in your web browser.

Your can also use the online hosted version.

Add needed Python (Pyodide) librairies

live demo

Add widgets by drag and drop

drag and drop

Use your favorite librairies

drag and drop

Create interaction and orchestration dataflow

drag and drop

Export and share in one click

Export

Deploy

Rename your dashboard file to dashboard.xprjson and deploy it using Docker.

Use this Dockerfile:

FROM python:3.11

# assume your application is named application.xprjson
COPY dashboard.xprjson dashboard.xprjson

# install py-chalk-it and gunicorn
RUN pip install py-chalk-it gunicorn

# this configuration is needed for your app to work, do not change it
ENTRYPOINT ["gunicorn", "chlkt.render:app", "run", "--bind", "0.0.0.0:80"]

Build the docker image:

docker build . -t application

Run it:

docker run -p 5000:80 application

Your dashboard will be displayed on port 5000.

Roadmap

  • 3 clicks dashboard cloud sharing
  • Command line interface (project open, render ...)
  • PyDeck support

Contributing

If you are a developer, and wish to contribute, please read the contribution rules.