π¦ Gottesanbeterin Gesucht Mitmachprojekt π¦
An interactive web application to track Mantis Religiosa sightings in Brandenburg, presented by the Naturkundemuseum Potsdam.
Mantis Tracker allows users to report Mantis Religiosa sightings and view them on an interactive map, along with insightful statistics and helpful FAQs.
- π Learn about the Mantis Religiosa
- π¨ Beautiful UI
- π Report mantis sightings with an easy-to-use form
- πΊοΈ View all mantis sightings on an interactive map
- π View insightful statistics and FAQs
Here are some of the features we plan to add in the future:
- Gallery of photos of the Mantis Religiosa
- Improved data visualization and analysis of the sighting data
- More animations and UI improvements to make the app more engaging
- Improved performance and code quality
Stay tuned for updates on these exciting new features!
- Python 3.13+
- uv (Python package manager)
- Node.js and npm
- PostgreSQL
git clone https://gitlab.com/opendata-apps/mantis.git
cd mantispython -m venv .venv
source .venv/bin/activate # For Windows: .venv\Scripts\activate# Install production dependencies
uv sync
# For development (includes testing and linting tools)
uv sync --extra dev
# For documentation building
uv sync --extra docsUsing psql:
psql -U postgresPreapare a database for production.
CREATE USER mantis_user WITH PASSWORD 'mantis';
CREATE DATABASE mantis_tracker OWNER mantis_user;
GRANT ALL PRIVILEGES ON DATABASE mantis_tracker TO mantis_user;
-- MacOS only:
GRANT usage, create ON SCHEMA public TO mantis_tracker;
\qPrepare a database for pytest
CREATE DATABASE mantis_tester OWNER mantis_user;
GRANT ALL PRIVILEGES ON DATABASE mantis_tester TO mantis_user;
-- MacOS only:
GRANT usage, create ON SCHEMA public TO mantis_tester;
\qflask db upgrade
# aktuelle Version anzeigen
flask db current
# History anzeigen
flask db history
If TESTING in config.py is set to TRUE also Demodata are inserted into the database.
flask insert-initial-datacd app/static
npm installThe project includes a convenient script to watch for CSS changes. Start it with:
npm run watch:csspython run.pyhttp://loclahost:5000/reviewer/9999- delete database mantis_tracker
- delete database mantis_tester
- start again with Step 4
- Edit Settings in app/config.py and make changes e.g.
- Connectionstring for DB
- TESTING = False
- Run Tests with pytest
- Create the minified CSS file
cd app/static
npm run build:cssgunicorn run:app # For Windows: waitress-serve --listen=*:8000 run:appOpen http://localhost:5000 in your browser.
