A web application for a company that provides commercial and scientific space travel services. The application allows users to book rockets and join selected space missions.

Overview

Space Travelers' Hub

A web application for a company that provides commercial and scientific space travel services. The application allows users to book rockets and join selected space missions.

Built With

  • React
  • Redux
  • Jest and react-testing-library
  • Axios
  • SpaceX API
  • Netlify

Live Demo (if available)

Live Demo Link

Getting Started

To get a local copy up and running follow these simple example steps.

Prerequisites

  • A web browser (like Google Chrome, Opera...).
  • A code editor (like Atom, VScode...).

Setup

To setup the project locally: clone the repository using:

git clone [email protected]:ha-manel/Space-Travelers-Hub.git

Install dependencies

run : npm install

Build the app

run: npm run build

Run the app

run: npm start

Authors

👤 Manel Hammouche

👤 Daniel Malo

👤 Ronald Skinner

🤝 Contributing

Contributions, issues, and feature requests are welcome!

Feel free to check the issues page.

Show your support

Give a ⭐️ if you like this project!

Acknowledgments

  • Hat tip to code reviewers and to everyone who reviewed the project and made suggestions.
Comments
  • Developed the Space Travelers Hub group project - Module 3 Week 4

    Developed the Space Travelers Hub group project - Module 3 Week 4

    In this PR we have implemented the Space Travelers Hub group project as per the task requirements.

    In this PR we have:

    • [x] Set up React
    • [x] Set up Redux
    • [x] Set up React-redux, react-thunk, and redux-logger
    • [x] Set up Jest, React Testing Library
    • [x] Installed and configured Axios
    • [x] Installed and configured linters
    • [x] Implemented the required routes: rockets, dragons, missions and myprofile
    • [x] Added the redux stores for each of the API endpoints
    • [x] Implemented the actions creators that fetch data from the API using Axios
    • [x] Implemented the reducers to handle the different actions including setting the fetched data, booking a reservation, and canceling a reservation (rockets, dragons, and missions).
    • [x] Added testing for every component and the user interactivity
    • [x] Added redux-logger middleware in order to debug redux history
    • [x] Styled the components as per the wireframe and made it responsive
    opened by rskinnerc 1
  • Create App Store - Setup (group task)

    Create App Store - Setup (group task)

    Create store for the app:

    • [ ] Add configureStore.js. Use combine reducers, thunk, logger, and apply middleware.
    • [ ] Use ducks pattern for redux files.
    opened by Danie12345 1
  • [1pt] Create empty My profile - Setup (group task)

    [1pt] Create empty My profile - Setup (group task)

    • Create a route and a view component. Use <NavLink /> for the page navigation links and style active class to indicate which section/page the user is currently on (underline active navigation link).
    • This view should be empty - you will add content in separate tasks.
    opened by ha-manel 1
  • [1pt] Create basic structure for Missions - Setup

    [1pt] Create basic structure for Missions - Setup

    • Create a route and a view component. Use <NavLink /> for the page navigation links and style active class to indicate which section/page the user is currently on (underline active navigation link).
    • Create a directory for all Redux state slice files.
    opened by ha-manel 1
  • [4pt]  Fetch missions - Fetch data

    [4pt] Fetch missions - Fetch data

    Fetch data from the Missions endpoint (https://api.spacexdata.com/v3/missions) when a user navigates to the Missions section.

    Once the data are fetched, dispatch an action to store the selected data in Redux store:

    • mission_id
    • mission_name
    • description

    NOTE: Make sure you only dispatch those actions once and do not add data to store on every re-render (i.e. when changing views / using navigation).

    opened by ha-manel 1
  • Styles rockets - Matched rocket styles with dragon styles

    Styles rockets - Matched rocket styles with dragon styles

    In this PR I:

    • [x] Matched the rocket styles to be like the dragons'.
    • [x] Fixed a ul style that affected the whole app to be restricted to the desired components.
    opened by Danie12345 0
  • Rockets tests - Testing all functionality for rockets

    Rockets tests - Testing all functionality for rockets

    In this PR I:

    • [x] Added the tests for the Rockets component.
    • [x] Tested: - Rendering - Maintained snapshot - Reserve rocket - Cancel reserved rocket - Show empty profile on first load - Show reserved rocket on profile - Show reserved rocket on profile, then cancel and show empty profile
    opened by Danie12345 0
  • Missions mobile version

    Missions mobile version

    In this branch, I:

    • [x] Created the mobile version styling for the missions section.
    • [x] Created a modal window of the mission's description (for the mobile view).
    opened by ha-manel 0
  • Added styles to the Dragons section

    Added styles to the Dragons section

    In this PR I have added some desktop and mobile styles to the Dragons section

    In this PR I have:

    • [x] Added desktop styles to the Dragon component
    • [x] Added mobile styles to the Dragon component
    • [x] Moved the font family import to the global namespace (App.css)
    • [x] Fixed linter errors
    opened by rskinnerc 0
  • Added tests to the Dragons features

    Added tests to the Dragons features

    In this PR I have added tests to the Dragons page component as well as tested that the reserved dragons appear on MyProfile page component.

    In this PR I have:

    • [x] Added tests for the Dragons page component that tests the entire redux store associated with this feature, including the every individual Dragon component
    • [x] Added tests to verify user interactivity when clicking the Reserve Dragon button
    • [x] Added tests to verify that a reservation is canceled when a user clicks the Cancel Reservation button
    • [x] Tested that a Reserved badge appears when the user clicks the Reserve Dragon button
    • [x] Added tests to verify there are no reserved dragons on MyProfile page component at the first render (meaning when the user navigates directly to /profile)
    • [x] Added test to verify that the reserved dragons appear on MyProfile after making reservations.
    • [x] Fixed linter errors
    opened by rskinnerc 0
  • Display rocket reservations on profile

    Display rocket reservations on profile

    In this PR I:

    • [x] Created the reserved rockets list component.
    • [x] Integrated the reserved rockets list into the profile.
    • [x] Refactored the joined missions component into its own directory.

    Closes #3

    opened by Danie12345 0
Owner
Manel Hammouche
Full-Stack Developer at Microverse. JavaScript enthusiast. Open to new opportunities.
Manel Hammouche
A web application for a company that provides commercial and scientific space travel services

A web application for a company that provides commercial and scientific space travel services. The application allows users to book rockets and join selected space missions using real live data from the SpaceX API.

Leonardo Albornoz 9 Apr 5, 2022
A web application that allows users to book rockets and join selected space missions, Using the SpaceX API.

Space-Travelers-Hub A web application that allow users to book rockets and join selected space missions, Using the SpaceX API. This project was bootst

Rachid Boudaoudi 6 Dec 9, 2021
Space Traveler's Hub is a single page web application that fatches rockets, missions from the SpaceX API.

Space Traveler's Hub is a single page web application that fatches rockets, missions from the SpaceX API. Users can book and cancel their reservations for rockets and missions. Application has three pages Rockets/Missions/MY Profile, My Profile page shows the list of reserved rockets and missions.

Ranjeet Singh 14 Oct 20, 2022
A bookstore app that allows a user add a book, displays added book with reviews and rating for each book and allows a user delete a book.

BOOKSTORE A bookstore app that allows a user add a book, displays added book with reviews and rating for each book and allows a user delete a book. Bu

Promise Okechukwu 7 Nov 1, 2022
The Bookstore is a website similar to the "Awesome Books" website. Here we will create an MVP version of it that allows you to: Display a list of books, Add a book and Remove a selected book.

Book Store This is Book Store project. Built With HTML CSS JavaScript React Screenshot Live Demo Go Live ?? Getting Started Open dev branch Open VSCod

Tadesse Alemayehu 5 May 3, 2022
The Bookstore is a website similar to the "Awesome Books" website built in the previous module. You will create an MVP version of it that allows you to: Display a list of books. Add a book. Remove a selected book.

Bookstore The Bookstore is a website similar to the "Awesome Books" website built in the previous module. You will create an MVP version of it that al

Anuar Shaidenov 6 Jun 12, 2022
As a user, I want to be able to post about travel locations and provide comments and ratings. As a user, I want to be able to look at other users posts and search travel locations by rating.

Travel-bug https://travelbug-project.herokuapp.com/ Table of Contents User-Story Description Installation Usage Contributions Tests License Questions

Megan 3 Mar 2, 2022
⚡️The Fullstack React Framework — built on Next.js

The Fullstack React Framework "Zero-API" Data Layer — Built on Next.js — Inspired by Ruby on Rails Read the Documentation “Zero-API” data layer lets y

⚡️Blitz 12.5k Jan 4, 2023
ReactJS-Travel-Website - This is a travel(adventure) website made with ReactJS.

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: np

Saurav Dhakal 1 Jan 1, 2022
"BookStore" is a web app for adding books. It is a Single Page App (SPA) that allows users to add and remove a book from the library

BookStore | M3Wx "BookStore" is a web app for adding and removing books from a library storage. It is a Single Page App (SPA) that allows users to add

Alexander Oguzie-Ibeh 4 Apr 11, 2022
TravelUp is a useful application to organize your travel itinerary.

TravelUp TravelUp is a useful application to organize your travel itinerary. Project for the Computer Networks Course, held in the Academic Year 2021/

null 3 Jul 19, 2022
This application allows you to create a list to keep tracks of the books you are reading and check the progress for each book.

Bookstore This is an application built to track the books you are reading and the progress you have made for each book! Additional description about t

Santiago Velosa 4 Feb 27, 2022
Landing page for any SaaS company, using Nextjs and NextUI

NextJS and NextUI Landing Page Template You can deploy here directly to vercel This is a template for NextJS and NextUI. NextJS NextUI You can see the

Mauricio Siu 31 Dec 23, 2022
Part of the 'merged', multi-currency cryptowallet soon to be published for production by the ArcaneCorporations company.

ETH-Wallet A simple ethereum wallet coded with the help of the web3.js library for ease of account-management, the ethereumjs-tx library for mediating

null 5 Dec 5, 2021
An example of a travel style app built with Ionic React

ionic-react-travel-app An example of a travel style app built with Ionic React If you'd like to support, you can buy me a coffee ☕️ Included in this I

Alan Montgomery 29 Sep 27, 2022
WCS : Project 2 (Spatial travel agency)

Concept This template is meant to serve as a foundation for every P2/P3 following the React-Express-MySQL stack, as learned in Wild Code School. It's

Jacques Poulin 3 May 19, 2022
Book Store is a website that allows you to add, remove and view books.

Book Store Book Store is a website that allows you to add, remove and view books. Built With ReactJS Redux React Router Getting Started with Create Re

Ezekiel Utshudi Eteta 9 Jun 23, 2022
Space Traveller hub is a web application that works with the real live data from the SpaceX API

Space Traveller hub is a web application that works with the real live data from the SpaceX API. It's a web application for a company that provides commercial and scientific space travel services.

Roland MWEZE 3 Feb 8, 2022