This project was initially meant to help Ukrainians to crowdsource events from the whole country in the war time. But then I had doubts about usefulness of a website like this and I decided to left it as an open source MVP. It might be useful for someone who has a similar idea in mind. This is a demo version and it connects all your markers to your IP to prevent spam.
Demo: https://mapua.iamvladshevchuk.com
- React 18
- React Query
- Typescript
- Mapbox.gl
- Axios
- Tailwind
- Laravel 9
- PHPUnit
- REST API
- Github Workflow
docker-compose up --build -d
runs a docker-compose to quickly create front end, back end, database containerscp .env.example .env && cp frontend/.env.example frontend/.env && cp backend/.env.example backend/.env
to copy .env filesdocker exec -it backend php artisan key:generate
to generate a Laravel key- You have to add
REACT_APP_MAPBOX
access token infrontend/.env
. That's something you may find on mapbox.com after creating an account there - By default your website will be available on http://localhost:8000
- You can run
bash setup
(or./setup
) as a shortcut to the process above. You might need to runchmod +x ./setup
to allow execution of the script - But you still have to add
REACT_APP_MAPBOX
access token infrontend/.env
docker-compose up --build -d
starts the back end and runsnpm start
on front end. After setup process, this command should be enough to run a website
- You can run
bash start
(or./start
) as a shortcut to the process above (chmod +x ./start
might be needed)
- Run
docker-compose run --rm backend php artisan test
to start a back end testing
- You can run
bash test
(or./test
) as a shortcut to the process above (chmod +x ./test
might be needed)
- Change
DOCKER_FRONTEND_PORT
,DOCKER_BACKEND_PORT
orDOCKER_DATABASE_PORT
if you want other ports to be exposed - Change
DOCKER_UID
orDOCKER_GID
to change user associated withbackend
container (might be necessary if you have troubles with permissions)