This is the group project for the fourth week of the third module in the Microverse program.

Overview

Space Travelers' Hub

This is the Space Travelers' Hub app initialized in the fourth week of the third module in the Microverse program. It was done using the SpaceEx API.
On this website you can check SpaceEx rockets and missions, book them so they appear on the My profile tab, on the profile you can follow links directly to their respective Wikipedia page to lear more about each Rocket or Mission.
This project was bootstrapped with Create React App.

Built With

  • HTML/CSS
  • Javascript
  • Visual Studio Code
  • Node.js
  • Jest
  • React
  • Redux

Live Demo

Space Travelers' Hub

Video Preview

N/A

Getting Started

To clone the repo run the line git clone https://github.com/lucas-crodrigues/space-trav-hub.git on your console.

To get a local copy up and running, run these command lines on your console:
1- cd space-trav-hub
2- npm install
3- npm start
4- To run tests use npm test

Authors

👤 Lucas Costa Rodrigues

GitHub: @lucas-crodrigues

Twitter: @lcrodrigues58

LinkedIn: Lucas Costa Rodrigues

👤 Alejandro Torres

GitHub: @aizjicod

Twitter: @aizijijr

LinkedIn: Alejandro Jose Torres Valero

Available Scripts

In the project directory, you can run:

npm start

Runs the app in the development mode.
Open http://localhost:3000 to view it in your browser.

The page will reload when you make changes.
You may also see any lint errors in the console.

npm test

Launches the test runner in the interactive watch mode.
See the section about running tests for more information.

npm run build

Builds the app for production to the build folder.
It correctly bundles React in production mode and optimizes the build for the best performance.

The build is minified and the filenames include the hashes.
Your app is ready to be deployed!

See the section about deployment for more information.

npm run eject

Note: this is a one-way operation. Once you eject, you can't go back!

If you aren't satisfied with the build tool and configuration choices, you can eject at any time. This command will remove the single build dependency from your project.

Instead, it will copy all the configuration files and the transitive dependencies (webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except eject will still work, but they will point to the copied scripts so you can tweak them. At this point you're on your own.

You don't have to ever use eject. The curated feature set is suitable for small and middle deployments, and you shouldn't feel obligated to use this feature. However we understand that this tool wouldn't be useful if you couldn't customize it when you are ready for it.

🤝 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

Microverse team.

📝 License

This project is MIT licensed.

Comments
  • Space Travelers' Hub

    Space Travelers' Hub

    This is the PR for the review from Microverse, for the Space Travelers' Hub app. The tasks done are:

    • [x] Create React App.
    • [x] Install React Redux, Redux Logger and React Router.
    • [x] Download the free image for the app logo.
    • [x] Create empty navigation (this will be filled in in separate tasks).
    • [x] Create a route and a view component. Use for the page navigation links and style active class to indicate which section/page the user is currently on (underline active navigation link).
    • [x] This view should be empty - you will add content in separate tasks.
    • [x] Create a route and a view component. Use for the page navigation links and style active class to indicate which section/page the user is currently on (underline active navigation link).
    • [x] Create a directory for all Redux state slice files.
    • [x] Fetch data from the Rockets endpoint (https://api.spacexdata.com/v3/rockets) when the application starts (as Rockets is the default view).
    • [x] Once the data are fetched, dispatch an action to store the selected data in Redux store: id, rocket_name, description, flickr_images.
    • [x] Render a list of rockets (as per design). For the image of a rocket use the first image in the array of flickr_images.
    • [x] Fetch data from API with Axios
    • [x] Select data from API
    • [x] Display the selected data from API
    • [x] Add basic styling for the page
    • [x] Add an action with an id as a variable for the redux-store when joining and leaving a mission.
    • [x] Implement this action on an event listener for the button.
    • [x] Change the style dynamically on the status and button section of the specific mission.
    • [x] Change text when a user joins a mission.
    • [x] Create a new file to work with the states without changing the previous states.
    • [x] Filter all the missions pages to work with only the missions that the user selected.
    • [x] When a user clicks the "Reserve rocket" button, an action needs to be dispatched to update the store.
    • [x] Make sure you place all your logic in the reducer.
    • [x] Follow the same logic as with the "Reserve rocket" - but you need to set the reserved key to false.
    • [x] Dispatch these actions upon clicking on the corresponding buttons.
    • [x] Rockets that have already been reserved should show a "Reserved" badge and "Cancel reservation" button instead of the default "Reserve rocket".
    • [x] Delete files that were not being used
    • [x] Add unit test for MissionLi component
    • [x] Add unit test for Header component
    • [x] Add unit test for user-mission component
    • [x] Render a list of all reserved rockets (use filter()) on the "My profile" page.
    • [x] Test rocket related functionality.

    Thank you.

    opened by lucas-crodrigues 0
  • Add testing missions

    Add testing missions

    On this pull request, I add different tests for 3 different components

    Summary

    • [x] Delete files that were not being used
    • [x] Add unit test for MissionLi component
    • [x] Add unit test for Header component
    • [x] Add unit test for user-mission component giphy
    opened by aizjicod 0
  • Rocket booking

    Rocket booking

    In this PR, the following functionalities were implemented:

    • [x] When a user clicks the "Reserve rocket" button, an action needs to be dispatched to update the store.
    • [x] Make sure you place all your logic in the reducer.
    • [x] Follow the same logic as with the "Reserve rocket" - but you need to set the reserved key to false.
    • [x] Dispatch these actions upon clicking on the corresponding buttons.
    • [x] Rockets that have already been reserved should show a "Reserved" badge and "Cancel reservation" button instead of the default "Reserve rocket".
    opened by lucas-crodrigues 0
  • Add user missions

    Add user missions

    On this pull request, I will be adding the missions that the user joined on the My Profile page

    Summary

    • [x] Change text when a user joins a mission.
    • [x] Create a new file to work with the states without changing the previous states.
    • [x] Filter all the missions pages to work with only the missions that the user selected. the-wolf-of-wall-street-clap
    opened by aizjicod 0
  • Implement click action for joining and leaving a mission

    Implement click action for joining and leaving a mission

    On this pull request, I'll be implementing action for leaving and joining a mission.

    Summary

    • [x] Add an action with an id as a variable for the redux-store when joining and leaving a mission.
    • [x] Implement this action on an event listener for the button.
    • [x] Change the style dynamically on the status and button section of the specific mission. giphy

    #10 #9

    opened by aizjicod 0
  • Missions basic structure

    Missions basic structure

    on this pull request, I added an essential structure for the mission page

    Summary

    • [x] Fetch data from API with Axios
    • [x] Select data from API
    • [x] Display the selected data from API
    • [x] Add basic styling for the page
    opened by aizjicod 0
  • Rockets features

    Rockets features

    • [x] Create a route and a view component. Use for the page navigation links and style active class to indicate which section/page the user is currently on (underline active navigation link).
    • [x] Create a directory for all Redux state slice files.
    • [x] Fetch data from the Rockets endpoint (https://api.spacexdata.com/v3/rockets) when the application starts (as Rockets is the default view).
    • [x] Once the data are fetched, dispatch an action to store the selected data in Redux store: id, rocket_name, description, flickr_images.
    • [x] Render a list of rockets (as per design). For the image of a rocket use the first image in the array of flickr_images.

    Thank you.

    opened by lucas-crodrigues 0
  • Group setup

    Group setup

    This is the first part of the group project: Space travelers' hub

    In this pull request we:

    • [x] Create React App.
    • [x] Install React Redux, Redux Logger and React Router.
    • [x] Download the free image for the app logo.
    • [x] Create empty navigation (this will be filled in in separate tasks).
    • [x] Create a route and a view component. Use for the page navigation links and style active class to indicate which section/page the user is currently on (underline active navigation link).
    • [x] This view should be empty - you will add content in separate tasks.
    opened by lucas-crodrigues 0
  • [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 lucas-crodrigues 0
  • [1pt] Create basic structure for Rockets - Setup

    [1pt] Create basic structure for Rockets - 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 lucas-crodrigues 0
  • [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 lucas-crodrigues 0
Owner
Lucas Costa Rodrigues
I am a Full-Stack Developer. Currently, I'm working on the Microverse program and loving it. I'm available for hire.🌎
Lucas Costa Rodrigues
Made this group project as a part of DESIS Ascend Educare Mentorship Program.

Buy-It-Right An intersection of Finance & Technology . About The Project: Buy It Right is a board game based on the economic idea of a monopoly. Four

Sejal Maheshwari 2 Dec 5, 2022
A Tailwind plugin that allows to create multiple groups utilities such as group-card or group-1 and works with Tailwind 3 features and all variations.

Tailwind Labeled Groups A plugin that allows to create multiple groups utilities such as group-card or group-1 and works with Tailwind 3 features and

Max 18 Nov 21, 2022
A simple api to get data of microverse's staff members, made for microverse students so they cann implement them in their projects

Microverse Staff Api Api for some microverse staff members Built With Express NodeJs MongoDB (Mongoose) JavaScript Base URL https://microverse-staff.h

Ali Jendoubi 7 Sep 29, 2022
Grupprojekt för kurserna 'Javascript med Ramverk' och 'Agil Utveckling'

JavaScript-med-Ramverk-Laboration-3 Grupprojektet för kurserna Javascript med Ramverk och Agil Utveckling. Utvecklingsguide För information om hur utv

Svante Jonsson IT-Högskolan 3 May 18, 2022
Hemsida för personer i Sverige som kan och vill erbjuda boende till människor på flykt

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

null 4 May 3, 2022
Kurs-repo för kursen Webbserver och Databaser

Webbserver och databaser This repository is meant for CME students to access exercises and codealongs that happen throughout the course. I hope you wi

null 14 Jan 3, 2023
This web application was build the microverse program, it's about implementing functionalities using JavaScript

This web application was build the microverse program, it's about implementing functionalities using JavaScript

Mehdi Abdelaziz Rahal 11 Aug 18, 2022
Microverse Module 02 Project: This is an educational project to make a TodoList web application, where the users can add new todo, remove todo, edit todo, mark todo as completed, and remove all completed todo. Built with Webpack

todo-list This project is about building a list of To Do tasks. Where you can save your daily activities and help in daily evaluation. Live demo you v

divine charlotte 25 Jan 3, 2023
Ajayi Ridwan 7 Oct 21, 2022
Microverse Module 02 Project: This is education project that allow user to add desire books to the list and also delete books. It makes use of local storage to preserve the data on the web browser.Built with HTML, CSS, JavaScript

Project Demo Live Demo AWESOME BOOK PROJECT Project allow user to add desire books to the list and also delete books. It makes use of local storage to

Ajayi Ridwan 8 Dec 3, 2022
This project is part of the 2nd Module 2 Block of Microverse curriculum

To-do list is a tool that helps to organize our day. It simply lists the things that you need to do and allows you to mark them as complete by using ES6 and Webpack!

Ravi Teja 14 Mar 14, 2022
Project developed as Capstone of Q4 Backend module of the Fullstack Developer Course of Kenzie Academy Brasil by the group @ezms, @Nafly09, @RafaelSchug, @victorlscherer, @Vinicius2m, @ManoelaCunha

✨ Quokka Services ✨ ?? Serviço rápido e sem preocupação! ?? O objetivo da nossa aplicação é diminuir a dificuldade que moradores de condomínios encont

Manoela Fernanda Girello Cunha 4 May 4, 2022
I Built This project in microverse's second module, in this single web application the user Can add, remove and display the list of books.

Awsome Books I Built This project in microverse's second module, in this single web application the user Can add, remove and display the list of books

Nedjwa Bouraiou 7 Aug 3, 2022
An npm package for demonstration purposes using TypeScript to build for both the ECMAScript Module format (i.e. ESM or ES Module) and CommonJS Module format. It can be used in Node.js and browser applications.

An npm package for demonstration purposes using TypeScript to build for both the ECMAScript Module format (i.e. ESM or ES Module) and CommonJS Module format. It can be used in Node.js and browser applications.

Snyk Labs 57 Dec 28, 2022
This project is a group Project created using Poke Api, HTML, CSS and JavaScript

JavaScript-Capstone-Project This project is a group Project created using Poke Api, HTML, CSS and JavaScript. Home Page About Page Project Documentati

David Kasilia Mwanzia 6 Nov 18, 2022
This is the team project of construct week unit-3 (js201)

This is the team project of construct week unit-3 (js201) I. Project's Title => Clone of Mytheresa.com (E-commerce website) II. Project Description =>

Brajesh Lovanshi 5 Sep 28, 2022
🚀 Final Esports project based on Rocketseat's Next Level Week.

The evolved version of the Esports project on the Next Level Week by Rocketseat. The web client is deployed on Vercel here: https://nlw-esports-ignite

João Martinho 35 Oct 26, 2022