Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
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.
- Host: GitHub
- URL: https://github.com/mahammad-mostafa/space-travelers-hub
- Owner: mahammad-mostafa
- License: mit
- Created: 2023-09-05T15:45:11.000Z (over 1 year ago)
- Default Branch: development
- Last Pushed: 2023-09-17T03:12:21.000Z (over 1 year ago)
- Last Synced: 2024-10-19T02:46:55.525Z (3 months ago)
- Topics: 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
- Language: JavaScript
- Homepage: https://space-travelers-hub-4xta.onrender.com/
- Size: 611 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
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
# π οΈ 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
```# π₯ 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)# π Future
Some additional features I may implement in the project:
- [ ] Using `CSS` preprocessors and their relevant loaders
- [ ] Implement advanced `Hooks` features like `useMemo`# π€π» 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.# βοΈ Support
Like this project? Show your support by starring!
# ππ» Acknowledgements
I thank everyone at **Microverse** for guiding me through this project.
# π License
This project is [MIT](LICENSE.md) licensed.