Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/mahammad-mostafa/space-travelers-hub

This is the fifth project of the third module in the Microverse program. It is a group project using React & Redux to build a simple space hub.
https://github.com/mahammad-mostafa/space-travelers-hub

create-react-app css-flexbox css-modules es6-javascript jest jest-snapshots jsx microverse microverse-projects microverse-students react-hooks react-jest react-router reactjs redux-logger redux-thunk redux-toolkit responsive-layout single-page-app

Last synced: about 1 month ago
JSON representation

This is the fifth project of the third module in the Microverse program. It is a group project using React & Redux to build a simple space hub.

Awesome Lists containing this project

README

        

# 🏷️ Space Travelers Hub

This is the sixth project of the third module in the **Microverse** program.


Check the below contents for further details about this project.

# πŸ“— Contents

- [Description](#description)
- [Instructions](#instructions)
- [Authors](#authors)
- [Future](#future)
- [Contributions](#contributions)
- [Support](#support)
- [Acknowledgements](#acknowledgements)
- [License](#license)

# πŸ“– Description

This project is a simple reservation & joining hub for SpaceX built with `ReactJS` framework.
It applies `Components` and `Hooks` along with `GitFlow` workflow.
State management is implemeneted using `Redux` & `Redux Toolkit`.
External data fetching is done with `Thunk` api & `Axois`.
Navigation inside the app is implemented using `React Router`.
Styling inside the project is done with `CSS Modules`.
Unit testing is handles with `Jest` framework.
All project dynamic files are contained in `src` directory while static assets are in `public` directory.
The live build is generated inside the `build` directory.
Also config linters for (`CSS3` / `JavaScript`) in the `.github` folder.

πŸ“Œ **Live Demo:**
- See the project live from [here](https://space-travelers-hub-4xta.onrender.com).

πŸ“Œ **Tech Stack:**
- Framework used is `ReactJS`
- State management by `Redux Toolkit`
- Page structure is built with `JSX`
- Styling is built with `CSS3`
- Dynamic content is built with `ES6 JavaScript`
- Bundling is done with `WebPack`
- Data fetching is handled by `Axios`
- Uint testing with `Jest`

πŸ“Œ **Key Features:**
- Single page app with all content loaded dynamically
- Responsive layout with all screen sizes
- Data list is persistent & fetched from remote server
- ReservingΒ & canceling actions for Rockets page
- Joining & leaving actions for Missions page
- Profile displays user current reserved rockets & joined missions
- Ability to cancel rockets & leave missions on profile page
- External Wikipedia linkΒ for more information a new tab

back to top

# πŸ› οΈ Instructions

You can easily download or fork this repository and work on it immadiately!

πŸ“Œ **Prerequisites:**
- `NodeJS` for installing & running all packages

πŸ“Œ **Installation:**
- Install all dependencies with `npm`
```
npm install
```

πŸ“Œ **Development:**
- For live development on `localhost:3000` run:
```
npm run start
```

πŸ“Œ **Testing:**
- To run unit tests use:
```
npm run test
```

πŸ“Œ **Deployment:**
- You can deploy this project by uploading files in the `build` folder to a live server.
- Create the distribution build using this command:
```
npm run build
```

back to top

# πŸ‘₯ Authors

πŸ“Œ **Mahammad:**
- [GitHub](https://github.com/mahammad-mostafa)
- [Twitter](https://twitter.com/mahammad_mostfa)
- [LinkedIn](https://linkedin.com/in/mahammad-mostafa)

πŸ“Œ **Gumaro:**
- [GitHub](https://github.com/Movgto)
- [LinkedIn](https://www.linkedin.com/in/gumaro-monroy-vazquez-1705aa165)

back to top

# πŸ”­ Future

Some additional features I may implement in the project:
- [ ] Using `CSS` preprocessors and their relevant loaders
- [ ] Implement advanced `Hooks` features like `useMemo`

back to top

# 🀝🏻 Contributions

Wish to contribute to this project?


Contributions, issues, and feature requests are more than welcome!


Feel free to check the [issues](../../issues) page too.

back to top

# ⭐️ Support

Like this project? Show your support by starring!

back to top

# πŸ™πŸ» Acknowledgements

I thank everyone at **Microverse** for guiding me through this project.

back to top

# πŸ“ License

This project is [MIT](LICENSE.md) licensed.

back to top