Catchmaster a fishing app where users can share experiences from their fishing trips and recommend and receive recommendations for lures based on different weather conditions. In practice, the app works by allowing users to input the length, weight, and the lure used to catch a fish, and it records the user's weather conditions. With this information, the app can provide real-time lure color recommendations tailored to the current weather. The target audience for this app is fishing enthusiasts.
https://catchmaster.adnanavni.dev
- Features
- Technologies
- Dependencies
- Prerequisites
- Installation
- Development
- Adding new dependencies
- Tests
- User posting
- Customizable profiles
- Leaflet map
- Real time weather data
- Google login
- GraphQL
- TypeScript
- MongoDB Atlas
- NodeJS
- Express.js
- Vite with React
- Jest
Before you begin installation, ensure you have met the following requirement:
- Node.js: Make sure you have Node.js installed. You can download it from nodejs.org.
- Clone the repository
- Navigate to the project directory
- Install the project's dependencies by running the following command:
npm install
- Create .env files for the frontend (\app) and for the backend (\server) based on .env.samples
- Launch the development server using the following commands:
Backend
Navigate to the project directory
then run:
npm run dev -w server
Frontend
Navigate to the project directory
then run:
npm run dev -w app
- Using these commands launches the development server to the ports configurated in the .env file
- To add new dependencies to the frontend, run the following command:
npm install <package-name> -w app
- To add new dependencies to the backend, run the following command:
npm install <package-name> -w server
Navigate to the project directory
- Run tests using the following command:
npm test