A Streamlit app to show how you can easily use Streamlit to generate invoices as PDFs.
App screenshot | Invoice template |
![]() |
![]() |
The demo has been deployed using Python 3.7. We suggest creating a new virtual environment, then running:
git clone https://github.com/streamlit/example-app-invoice-generator.git
cd example-app-invoice-generator
pip install -r requirements.txt
streamlit run streamlit_app.py
- Code is powered by Streamlit ๐ and deployed on Streamlit Cloud โ๏ธ
- It is super compact: only 50 lines of code. Check it out in
streamlit_app.py
- Template must be an HTML file with
{{ my_variable }}
variable placeholders as supported by jinja. - Our example template here is
invoice_template.html
and you can see placeholders e.g. here.
๐ช Tip: if you're not an HTML expert (or if you're lazy, or both) just kick-off your template using Google Docs at docs.new and then export it as HTML using File > Download > Web page (.html, zipped). For example, this is our original template in Google Docs!
Please ask in the Streamlit community.