Pin'N'Grab Backend is a robust Express.js application that serves as the backend for a job marketplace platform. It provides a comprehensive set of APIs for user management, job posting, applications, messaging, and reviews.
- User authentication and authorization
- Job posting and management
- Job application system
- User-to-user messaging
- Review and rating system
- Saved jobs functionality
- Node.js
- Express.js
- Sequelize ORM
- MySQL
- JSON Web Tokens (JWT) for authentication
- Swagger for API documentation
- Docker for containerization
- Node.js (v16 or later)
- MySQL
- Docker (optional)
-
Clone the repository:
git clone https://github.com/dev-alt/tradeapp-backend.git -
Install dependencies:
cd tradeapp-backend npm install -
Set up environment variables: Create a
.envfile in the root directory and add the following:DB_HOST=your_database_host DB_USER=your_database_user DB_PASSWORD=your_database_password DB_NAME=your_database_name JWT_SECRET=your_jwt_secret -
Start the server:
npm start
The server will start on http://localhost:5000 by default.
To run the application using Docker:
-
Build the Docker image:
docker build -t tradeapp-backend . -
Run the container:
docker run -p 5000:5000 tradeapp-backend
API documentation is available via Swagger UI. After starting the server, visit:
http://localhost:5000/api-docs
Run the test suite with:
npm test
Please read CONTRIBUTING.md for details on our code of conduct and the process for submitting pull requests.
This project is licensed under the MIT License - see the LICENSE.md file for details.