NomadBuddy

This is a simple travel planner app which allows you to search for safari expeditions near a location you search. It uses Rails for the backend, reactJS for the frontend, MaterialUI for the logos, FigmaUI for the design of the application and the mapboxAPI for the geocoding, reverse geocoding and the map features in the application. Apart from this we have used restAPI for the http calls.

output

below is the tech stack used in this application

Techstack------>

  1. Rails: Backend framework for building web applications in Ruby. Provides MVC architecture, routing, ORM (Active Record), and more.

  2. ReactJS: Frontend library for building user interfaces. Allows building reusable UI components.

  3. Material-UI: React components that implement Google's Material Design. Provides ready-to-use components like buttons, forms, and navigation bars.

  4. Figma: Design tool for creating UI/UX designs. Allows collaboration and prototyping.

  5. Mapbox API: Geolocation API for displaying maps and geocoding. Provides features like searching for locations, reverse geocoding, and custom map styling.

  6. REST API: Standardized architecture style for designing networked applications. Allows communication between different systems over HTTP.

  7. Devise: Ruby gem for authentication in Rails applications. Provides user authentication, registration, and password recovery features.

  8. CarrierWave: Ruby gem for file uploads in Rails applications. Useful if you need to upload images or files for safari expeditions.

  9. Google Places API: Allows you to search for places based on various criteria, including keyword, type, and location. Provides details about places, such as name, address, rating, and reviews. You can use the "safari" keyword to filter safari expeditions.

to run the project in local host,

Find the live Frontend link within the project repository's "About" section and at the end of this README file. Begin by forking and cloning this repository. Then, open Visual Studio Code on Windows or Code on Linux, and navigate to the local project directory. Execute the following commands in your terminal:

  1. Utilize "npm install" to install the necessary project dependencies.
  2. Employ "npm install react-router-dom@6.4.3" to install a compatible version of react-router-dom.
  3. Finally, launch the React App by executing the command "npm start" in your terminal.
  4. Proceed to the backend directory and initiate the Rails server by running "rails s" in your terminal. This action will restart your application backend, facilitating data retrieval from the specified endpoints.