PriceFinder is a Node.js API that allows the registration of supermarkets, products, product prices, and product categories.
- Node.js
- Express
- Prisma
- Docker
- Jest
- TypeScript
- GitHub Actions
- Nginx
- AWS EC2
Before you begin, you will need to have the following tools installed on your machine:
This project is hosted on an AWS EC2 instance. Docker is used for the deployment, allowing the creation of a portable, self-sufficient container from the application. This makes it easy to deploy the application across any environment running Docker, ensuring consistent performance and functionality.
To deploy this application on AWS EC2, you would first push your Docker image to a registry that your EC2 instance can access (like Docker Hub or Amazon ECR), then pull the image on your EC2 instance and run the container.
# Clone this repository
$ git clone https://github.com/your_username/pricefinder
# Go into the repository folder
$ cd pricefinder
# Install dependencies
$ yarn
# Run the application in development mode
$ yarn dev
# The server will start on port 3000 - go to http://localhost:3000
# Run the tests
$ yarn testThis project uses Docker. To build and run the project container, follow the steps below:
# Build the image
$ docker build -t pricefinder .
# Run the container
$ docker run -p 3000:3000 pricefinderThis project uses Nginx for reverse proxy. Ensure that Nginx is installed and properly configured on your machine to use this feature.
Contributions are always welcome! To contribute, please:
- Fork the project
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Add your changes (
git add .) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Carlos Henrique - @carloshendvpm - hencarlosdv@gmail.com