An app designed to map bridges with their safety for otters.
Pro Lutra: Untendurch is a web application that enables users to report and view bridges, evaluating their safety for otters. The project aims to improve wildlife conservation efforts by identifying potentially hazardous crossing points.
The app consists of the following components:
backend
- Express JS server wrapping parse-server, parse-dashboard and other servicesfrontend
- React client for bridge reporting and viewingmongodb
- Database for Parse
node >= 20
docker >= 25
The yarn CLI is included in this repository and can be used to install dependencies.
yarn install
# Start MongoDB
yarn workspace @untendurch/backend run db:start
# Start backend in development mode
yarn workspace @untendurch/backend run dev
yarn workspace @untendurch/frontend run dev
Access points:
- Web application: http://localhost:5173
- Parse Dashboard: http://localhost:1337/dashboard
- Parse Server API: http://localhost:1337/parse
- MongoDB:
localhost:27017
# Build backend
yarn workspace @untendurch/backend run build
# Build frontend (choose environment)
yarn workspace @untendurch/frontend run build:dev
# or
yarn workspace @untendurch/frontend run build:test
# or
yarn workspace @untendurch/frontend run build:prod
docker build -f frontend/Dockerfile .
For example, for German language:
cd frontend
npm run i18n-extract -- 'src/**/*.ts*' --ignore='**/*.d.ts' --out-file lang/de.json --id-interpolation-pattern '[sha512:contenthash:base64:6]'
cd frontend
npm run i18n-compile -- lang/de.json --ast --out-file src/compiled-lang/de.json
The Docker Compose setup in docker-compose/example
can be used as a template for TEST, PRE-PROD, or PROD environments.
- Copy the
.env.example
file to.env
- Modify the
.env
file with appropriate values - Use docker-compose to start the services
The project contains the following packages with their own documentation:
This project is licensed under the GNU AFFERO GENERAL PUBLIC LICENSE - see the LICENSE file for details