“VillageHub” is a platform that connects people from vulnerable groups (at poverty risk) to jobs in the agricultural field and connecting manufacturing processes, with optional housing enrollment. The app also features a shop where clients can purchase products made by the participants in the program
This repo handles both the backend and the frontend sides of the project.
All the api requests from the frontend side accesses the backend side to send or receive data from the database. Certain actions (like adding, deleting or updating an activity or housing) are secured and an unauthorized action redirects a guest to the register page.
This application was developed during the Codecool organized Hackathon in 36 hours.
Application features include:
-
A registration and login form
-
A form page for administrators to add activities and housing
-
Activity page where workers can see the available activities and participate in them
-
A housing page where administrators can assign workers to housing
-
A shop page where products made by the participants can be sold
- Add the rest of the user roles in the frontend
- Implement the shop section in the frontend
- Better design structure
- Frontend validations and security
- Maven
- Spring Boot
- Spring Security
- Java
- Postgresql
- React
- Node.js
To get a local copy up and running follow these simple steps.
-
Clone the repo
git clone https://github.com/github_username/repo_name.git
-
Create your own application.properies file in a new resources directory in the backend folder and write
spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.PostgreSQLDialect spring.jpa.hibernate.ddl-auto=create-drop spring.datasource.url=databaseURL spring.datasource.username=yourUsername spring.datasource.password=yourPassword spring.jpa.show-sql=false
-
Install NPM packages
npm install
-
Make sure your device can run all the technologies in the build section
In the project frontend directory, you can run:
npm start
Runs the app in the development mode.
Open http://localhost:3000 to view it in the browser.
The page will reload if you make edits.
You will also see any lint errors in the console.