This application helps you organize and track your travel dreams and adventures. Whether you're an avid traveler or someone with a growing wanderlust, this app is designed to make your travel aspirations come to life.
Follow these steps to set up and run the project on your local machine.
Make sure you have the following installed:
- Node.js and npm - Download and Install Node.js
- Git - Download and Install Git
git clone https://github.com/movi1/the-last-project-cfg.git
cd the-last-project-cfg
- Inside project folder, install dependencies:
npm install
code .
npm run windows:env
- Open the .env file.
npm run create:env
- Open the .env file.
- Navigate to the "backend" folder.
- Locate the .env.example file.
- Copy it and rename the copy to .env.
- Open the .env file.
DB_HOST=localhost
DB_USER=myuser
DB_PASSWORD=mypassword
DB_DATABASE=mydatabase
PORT=3306
npm run install:database
- After installing dependencies, collaborators can start the development server:
npm start
- Check the status (optional):
git status
- Add, commit, and push changes to the main repository:
git add .
git commit -m "Descriptive commit message"
git push
- Light Gray: #f4f4f4
- Charcoal: #22333b
- Dark Khaki: #5e503f
- Camel: #C6AC8F
- White: #ffffff
- Black: #0A0908
- Champagne: #eae0d5
- Google Blue: #4285f4
- Gainsboro Gray: #f0f0f0
- Shadowy Black: rgba(0, 0, 0.5, 0.5)
- Shadowy Brown: rgb(94, 80, 63)
- Mobile View (max-width: 600px)
- Tablet View (min-width: 601px) and (max-width: 1024px)
- Laptop and Desktop View (min-width: 1025px)
The application uses the following fonts:
- Raleway
- EB Garamond
The backend of the project follows a modular structure with the following main components:
- prisma:
- migration:
- Contains files responsible for defining and applying changes to the database schema.
- Each file represents a migration, containing SQL instructions for creating or modifying tables and relationships.
- schema.prisma:
- Outlines the structure of the 'users' table, serving as a blueprint for organizing user-related data in the MySQL database.
- Generates a JavaScript client for smooth interaction with the database.
- index.js:
- Entry point for a Node.js Express application with user authentication endpoints and MySQL database connection setup..
- middleware.js:
- Configures CORS for secure cross-origin communication and sets up JSON parsing middleware to handle incoming request data in the backend.
- webpack.config.js:
- Sets up the development environment for the client-side application, defining rules for JavaScript, JSX, and CSS files.
- migration:
The frontend of the project follows a modular structure with the following main components:
-
components:
- about: React component for displaying information about the project or team.
- bucket-list: React component for managing the user's travel bucket list.
- contact-us: React component for the contact us page.
- faq-page: React component for frequently asked questions.
- footer: React component for the footer section of the application.
- header: React component for the application's header and navigation.
- home: React component for the homepage or landing page.
- login: React component for user login functionality.
- map: React components related to mapping functionality.
- pack-list: React component for managing packing lists.
- testimonial-carousel: React component for displaying testimonials.
- weather: React components for displaying weather information.
- weatherCTA: React component for weather-related calls-to-action.
-
tests:
- Test files for unit or integration testing.