The backend of the IFRC GO Make Maps System is built on GraphQL, ApolloServer, Express, and Mongoose. GraphQL is used to define the API schema, which allows for efficient querying of data. ApolloServer is used to implement the API and handle incoming requests. Express is used to create the server and route incoming requests to the appropriate handlers. Mongoose is used to interact with the MongoDB database, which stores all of the application's data.
In the future, the backend will use AzureAD for authentication. This will enable users to securely log in to the system and access resources based on their role and permissions. Overall, this backend architecture allows for efficient data management, flexible data querying, and secure access control for the IFRC GO Make Maps System.
Find the API Documentation here
Follow these steps to set up and run IFRC GO Make Maps Backend:
- Clone the repository:
git clone https://github.com/IFRC-GO-Make-Maps/IFRC-GO-Make-Maps-Backend
- Navigate to the project directory:
cd backend/
- Install the dependencies:
yarn install
# OR
npm install
- Create a .env file and set the environment variables
PORT=<"Enter your desired Port or by default 9092">
MONGO_URL=<REPLACE THIS WITH YOUR MONGODB URL>
- Start the development server:
yarn start
# OR
npm start
Your application should now be running on http://localhost:9092.
This is the demo for the project: https://www.youtube.com/watch?v=DSyl1Z1y9Pw
If you have any questions or concerns, please reach out to:
- Piraveenan Kirupakaran (Team Leader): [email protected]
- Tao Huang: [email protected]
- Yizhou Li: [email protected]
- Jaden Wan: [email protected]
- Yi-Hsin: [email protected]
- Daniel Swarup: [email protected]
Project URL: https://ifrc-go-make-maps-backend.azurewebsites.net/
If you'd like to contribute to IFRC GO Make Maps, please follow these steps:
Fork the repository. Create a new branch with a descriptive name (e.g., feature/awesome-feature). Make your changes and commit them with a clear and concise commit message. Push your changes to your forked repository. Create a pull request and describe the changes you've made.