The project aims to allow the users to take pictures and/or leave notes, ratings, comments about restaurants they visit in order to be able to reference it later when they try to pick were they want to go eat out or order from.
This repository is part of the Good Food Tracker
project and is used for the development of the backend system.
For the list of existing or currently being developed feature please refer to the features section of this document.
To get started on development follow these steps:
- Rename
.env.example
to.env
;- Add your values to the
.env
file;
- Add your values to the
- Start up docker containers with
docker-compose up
; - Create
postgres
database;- To create the database you can use the
pgAdmin
web UI;pgAdmin
web UI can be accessed at:localhost:${PGADMIN_PORT}
;- login with
${PGADMIN_DEFAULT_EMAIL}
and${DB_PASSWORD}
- create a server with these connection properties:
- Host :
gft-postgres
- Port :
${DB_PORT}
- Host :
- create a database with these properties:
- name :
${DB}
- username :
${DB_USERNAME}
- password :
${DB_PASSWORD}
- name :
- Rename
.migration.example.config
into.migration.config
;- Add your values to the
.migration.config
file;
- Add your values to the
- Run
docker-compose exec app php ./cli/migrate.php --init
to initialize the migrations table; - Run
docker-compose exec app php ./cli/migrate.php --up
to run all the migrations; - Run
docker-compose exec app composer install
to install php dependencies
- To create the database you can use the
- Visit
localhost:${APACHE_PORT}
to see if everything is working;
- Keep code clean and simple;
- DO NOT alter the database directly, use migrations;
- Always use branches and pull requests when making changes to the codebase;
- If you have any question you can contact Igor Ilić via:
- If you have found a bug or want to ask for a new feature, you can open a new issue
List of currently completed or still being developed feature:
- Auth
- Login
- Register
- Verify account
- Reset password
- Request password reset code
- Verify reset code & set new password
- User profile
- Get user profile information
- Update user profile information
- Delete user profile
- Country
- List of countries
- Get single country info
- Add / edit country
- Delete country
- City
- List of cities
- Add / edit city
- Delete city
- Restaurants
- List of all the restaurants
- Fetch info about single restaurant
- Add / edit restaurant
- Delete restaurant
- Reviews
- List of users reviews
- Add / edit your review
- Add / remove image for a review
- Delete your own review
Database diagram with current, future and optional tables can be found on dbDiagram.io.
Possible future tables in the database diagram will be positioned on the right side of the diagram. Whereas the existing ones or the ones that are being worked on are positioned on the left side.
Thanks go to these wonderful people (emoji key):
negue 🤔 |
Subham Sahu 💻 |
Kate Bartolo 📖 |
Rajakavitha1 📖 |
skrrra 💻 |
Ishan Vyas 💻 |
Abilogos 🐛 📖 💻 |
This project follows the all-contributors specification. Contributions of any kind welcome!