https://github.com/emfcamp/emftillweb
bar.emf.camp web interface and API
https://github.com/emfcamp/emftillweb
Last synced: 15 days ago
JSON representation
bar.emf.camp web interface and API
- Host: GitHub
- URL: https://github.com/emfcamp/emftillweb
- Owner: emfcamp
- Created: 2026-05-22T19:14:02.000Z (25 days ago)
- Default Branch: main
- Last Pushed: 2026-05-25T17:49:36.000Z (22 days ago)
- Last Synced: 2026-05-25T18:13:23.790Z (22 days ago)
- Language: Python
- Size: 29.9 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
EMF Till web service
====================
Infrastructure needed to bring up an instance of `quicktill.tillweb`,
plus the public-facing web pages for https://bar.emf.camp/
This is the EMF-specific fork of the project and contains assumptions
about how the EMF till is configured. [There is a separate repo for the generic version of the project here.](https://github.com/sde1000/tillweb)
The infrastructure code in `tillweb/config` has been modified as
little as possible. Most EMF-specific code is in `emf/`
Prerequisites
-------------
You need [poetry](https://python-poetry.org/) and
[npm](https://www.npmjs.com/) installed. You need a
[postgresql](https://www.postgresql.org/) database available.
Configuration
-------------
The package reads `~/.config/emftillweb.toml` at startup. Example
suitable for development:
```
[django]
time_zone = "Europe/London"
mode = "devel"
[till]
database_name = "emfcamp"
currency_symbol = "£"
site_name = "EMF Bars"
```
Development
-----------
To set up a development environment, ensure you have `poetry`
installed, and then in the project root run `poetry install` and `npm
install`.
Ensure there is a postgresql database called `emfcamp`. (`createdb
emfcamp` if unsure.) Either restore an existing quicktill database
dump into it (`zcat emfcamp.sql.gz | psql emfcamp` assuming the
`emfcamp` database is empty), or set up a new empty database using
`poetry run runtill -d dbname=emfcamp syncdb`
(If you are a bar team member, you can obtain a database dump from
your profile page.)
The various Django project management commands are then available via
`poetry run tillweb`, for example `poetry run tillweb check`, `poetry
run tillweb migrate`, `poetry run tillweb createsuperuser` and `poetry
run tillweb runserver` to run the development server.
The tillweb repository does not include the packed Javascript and CSS
necessary for the quicktill web interface project to run in
`tillweb/static/bundles/`. To regenerate these run `npm run build`.
The SCSS files in `emf/static/emf/scss/` can be converted to CSS by
running `npm run emfsass`, and you can start a process that watches
the SCSS files for changes by running `npm run emfsass-watch`.