This project implements an app and a website to help users find recycling centres.
The backend is responsable for the connection to the database, from the server
directory, start running the following command to install all dependencies:
npm install
The database contains 3 tables: Points
representing a recyncling collection center, Items
representing the recyclables, Point_Items
representing the relation between points and items. To create all tables and seed Items
run the following commands:
npm run knex:migrate
npm run knex:seed
And finally, to run the server use the following command:
npm run dev
-
Items:
get /items
: list all items registered;
-
Points:
get /points
: lists all centers registered, or filtered by uf, city or items;get /points/:id
: lists a specific center registered;post /points
: lists all points registered;delete /points:id
: deletes a specific point;
To start the mobile server, you may run the following commands from the root folder:
cd mobile
npm install
npm start
The app allows you to find all registered centers looking the map, and filtering by items. You can also send a message or an email to the to it.
From the web page is possible to register a new collection center. To start this server, you may run the following commands from the root folder:
cd web
npm install
npm start
This project was developed using the following technologies:
-
Package manager: NPM (8.19.2)
-
Language: Typescript (4.8.4), HTML, CSS
-
Backend (NodeJs (18.10.0) and Sqlite3)
-
Mobile path (React (18.0.0)):
-
Web path (React Native (0.69.6)):
-
Connection: