Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create full version of the project - Space Travelers Hub #45

Merged
merged 110 commits into from
Jul 27, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
110 commits
Select commit Hold shift + click to select a range
6946d46
Create the repository using Gitflow
NitBravoA92 Jul 23, 2023
999924c
Create the React app and install basic dependencies - Setup
NitBravoA92 Jul 24, 2023
835cc99
Merge pull request #26 from NitBravoA92/create-app-install-dependencies
NitBravoA92 Jul 24, 2023
1dcc6c9
add the header, nav logo
Kidd254 Jul 24, 2023
4ddfa11
Add the logo image, styling to the header and logo
Kidd254 Jul 24, 2023
c257de9
Merge pull request #27 from NitBravoA92/header
Kidd254 Jul 24, 2023
13a2c59
Add a nav link for the MyProfile page
NitBravoA92 Jul 24, 2023
a587dea
Create the MyProfile page
NitBravoA92 Jul 24, 2023
8a0b18b
Add the routes for MyProfile page and some css styles for the page
NitBravoA92 Jul 24, 2023
78bb209
Fix linters issues
NitBravoA92 Jul 24, 2023
24329c3
Merge pull request #28 from NitBravoA92/create-myprofile-setup
NitBravoA92 Jul 24, 2023
6c19c3b
Set the initial state, add reducers and store
Kidd254 Jul 24, 2023
8b2be10
Set the initial state, add reducers and store
Kidd254 Jul 24, 2023
7f389e3
Modify the haeder
Kidd254 Jul 24, 2023
e2be17c
Add a display in the DOM
Kidd254 Jul 24, 2023
704188b
Add styling to the Rockects layout
Kidd254 Jul 24, 2023
16f2a21
Add the store from redux, and importing the neccessary files
Kidd254 Jul 24, 2023
b74b1e2
Merge pull request #29 from NitBravoA92/rockets-structure
Kidd254 Jul 24, 2023
0ebd226
Create the missionsSlice to manage the missions state
NitBravoA92 Jul 24, 2023
2977a22
Create the Missions view component to display the Missions page
NitBravoA92 Jul 24, 2023
dbdd7da
Add the missions link in the navigation menu
NitBravoA92 Jul 24, 2023
136fda2
Add a new route for the Missions page
NitBravoA92 Jul 24, 2023
b8b9430
Update the README.md file
NitBravoA92 Jul 24, 2023
8e984a1
Merge pull request #30 from NitBravoA92/create-missions-structure
NitBravoA92 Jul 24, 2023
9c05dc2
fetch missions from API
Kidd254 Jul 24, 2023
8a0dd71
Add an action to fectch the mission data
Kidd254 Jul 24, 2023
46b3acb
Update the styling
Kidd254 Jul 24, 2023
6316725
Merge pull request #31 from NitBravoA92/fetch-missions-data
Kidd254 Jul 24, 2023
a040a51
Fetch the Rockets data from the spaceX API and Use createAsyncThunk t…
NitBravoA92 Jul 24, 2023
3350893
Use the useDispatch hook to dispatch the action that fetches the data…
NitBravoA92 Jul 24, 2023
f0cfa60
Update the Future Features section
NitBravoA92 Jul 24, 2023
fcf3cdb
Update the css styles of the navigation menu
NitBravoA92 Jul 25, 2023
cd1c6fe
Merge pull request #32 from NitBravoA92/fetch-rockets-data
NitBravoA92 Jul 25, 2023
51e71e5
Add actions conditions to update the state
Kidd254 Jul 25, 2023
4bce12e
Create the MissionItem component with a missions table row
Kidd254 Jul 25, 2023
e2fc2a1
Create the MissionsTable component that uses useSelector to display a…
Kidd254 Jul 25, 2023
e38a851
Add MissionsTable component and import the Missions.css file
Kidd254 Jul 25, 2023
af7a4fc
Add css styles for the Missions view
Kidd254 Jul 25, 2023
3996d80
Update the general styles of the application
Kidd254 Jul 25, 2023
f863844
Update responsive css styles
Kidd254 Jul 25, 2023
3353805
Merge pull request #33 from NitBravoA92/list-render-missions
Kidd254 Jul 25, 2023
e82a3cf
Add extra validation to the rockets state
NitBravoA92 Jul 25, 2023
56fb88d
Create the RocketItem component to display a rocket
NitBravoA92 Jul 25, 2023
ffb51bd
Create the RocketsContent component to display the list of rockets in…
NitBravoA92 Jul 25, 2023
443cd01
Add the RocketsContent component and Import the Rocket.css file
NitBravoA92 Jul 25, 2023
b7966b2
Update the css styles of the buttons elements
NitBravoA92 Jul 25, 2023
1d797ef
Add the css styles of the Rockets view
NitBravoA92 Jul 25, 2023
fb2148e
Update the media queries to include rocket items styles
NitBravoA92 Jul 25, 2023
16cfe4d
Merge pull request #34 from NitBravoA92/render-rockets-list
NitBravoA92 Jul 25, 2023
430161e
Add the middleware logger to the store using Redux Logger library
Kidd254 Jul 25, 2023
ea7fb86
Create the action: addReserve to add the reserved status to a rocket …
Kidd254 Jul 25, 2023
9774b96
Implement the action: addReserve in the Reserve Rocket button using o…
Kidd254 Jul 25, 2023
6cf5cb5
Merge pull request #35 from NitBravoA92/rocket-booking
Kidd254 Jul 25, 2023
d9b95b3
Create the action: addReservedMission to add the reserved status to a…
NitBravoA92 Jul 25, 2023
ca8e588
Implement the action: addReservedMission in the Join Mission button u…
NitBravoA92 Jul 25, 2023
e0900df
Update the Future Features section of the README.md
NitBravoA92 Jul 25, 2023
08abfed
Merge pull request #36 from NitBravoA92/implement-mission-joining
NitBravoA92 Jul 25, 2023
81ad66c
Create the action: LeaveMission to change the reserved status to fals…
Kidd254 Jul 25, 2023
f8a7ca1
Implement the action: LeaveMission in the Leave Mission button using …
Kidd254 Jul 25, 2023
013c832
Merge pull request #37 from NitBravoA92/mission-leaving
Kidd254 Jul 25, 2023
bc11e2c
Create the action: cancelReserve to change the reserved status to fal…
NitBravoA92 Jul 25, 2023
bb64bcd
Implement the action: cancelReserve in the Cancel Reservation button …
NitBravoA92 Jul 25, 2023
742e4c1
Update the Future Features section of the README.md
NitBravoA92 Jul 25, 2023
f97cd84
Merge pull request #38 from NitBravoA92/implement-rocket-cancelation
NitBravoA92 Jul 25, 2023
9907b40
Render the correct mission button and badge using conditional renderi…
Kidd254 Jul 25, 2023
abdb8c9
Update the CSS styles of the missions badges
Kidd254 Jul 25, 2023
52143c4
Merge pull request #39 from NitBravoA92/missions-conditional-components
Kidd254 Jul 25, 2023
1f62f65
Render the correct rocket button and badge using conditional renderin…
NitBravoA92 Jul 25, 2023
b2855bf
Update the Future Features section of the README.md file
NitBravoA92 Jul 25, 2023
18a65b3
Merge pull request #40 from NitBravoA92/switch-rockets-badges
NitBravoA92 Jul 25, 2023
befb5df
Create the ReservationItem component to render the name of a reserved…
Kidd254 Jul 25, 2023
f6a5f5d
Create the ReservedRockets component to render the list of reserved r…
Kidd254 Jul 25, 2023
4ecfee1
Create the MyProfile.css file to add the styles of the MyProfile page
Kidd254 Jul 25, 2023
45d8e1d
Add the ReservedRockets components in My Profile view component
Kidd254 Jul 25, 2023
43035d5
Merge pull request #41 from NitBravoA92/rockets-filter
Kidd254 Jul 25, 2023
1e38701
Create the JoinedMissions component to render the list of joined miss…
NitBravoA92 Jul 25, 2023
24f6973
Add the JoinedMissions components in My Profile view component
NitBravoA92 Jul 25, 2023
0a50e86
Add CSS styles to improve the MyProfile view design
NitBravoA92 Jul 25, 2023
221ba72
Update the responsive styles for the My Profile view
NitBravoA92 Jul 25, 2023
626865d
Update the Future Features section of the README.md file
NitBravoA92 Jul 25, 2023
3886c9c
Merge pull request #42 from NitBravoA92/display-joined-missions-mypro…
NitBravoA92 Jul 25, 2023
c939310
Install the react test renderer library
NitBravoA92 Jul 26, 2023
54b1b38
Create the helper function renderWithProviders to access the redux st…
Kidd254 Jul 26, 2023
5a01394
Update the initialState of the rockets
Kidd254 Jul 26, 2023
450c26e
Create the test cases for the AppLogo component
Kidd254 Jul 26, 2023
6e493cf
Create the test cases for the MenuLink component
Kidd254 Jul 26, 2023
9055692
Create the test cases for the Header component
Kidd254 Jul 26, 2023
8eec8d9
Create the test cases for the Layout component
Kidd254 Jul 26, 2023
2478e86
Create the test cases for the RocketItem component
Kidd254 Jul 26, 2023
53c2f19
Create the test cases for the RocketsContent component
Kidd254 Jul 26, 2023
e954ecf
Create the test cases for the Rockets view component
Kidd254 Jul 26, 2023
699223a
Generate the snapshots of the tests - all tests passed
Kidd254 Jul 26, 2023
310a348
Update the return statement of the store helper function
NitBravoA92 Jul 26, 2023
9c8db2a
Create the test cases for the MissionItem component to validate the c…
NitBravoA92 Jul 26, 2023
3563b92
Create the test cases for the MissionsTable component
NitBravoA92 Jul 26, 2023
ac49910
Create test cases to validate if the Missions page is render correctly
NitBravoA92 Jul 27, 2023
67ea18a
Create the test cases for the ReservationItem component
NitBravoA92 Jul 27, 2023
bc515b8
Create the tests cases for the ReservedRockets component
NitBravoA92 Jul 27, 2023
f5f069d
Create the test cases to validate the JoinedMissions component is ren…
NitBravoA92 Jul 27, 2023
b217bb5
Create the test cases for the MyProfile view component
NitBravoA92 Jul 27, 2023
c29413a
Create test cases for the Missions state
NitBravoA92 Jul 27, 2023
a18b80e
Create test cases for the Rockets state
NitBravoA92 Jul 27, 2023
5f6f9aa
Remove all old snapshots in the tests folder
NitBravoA92 Jul 27, 2023
0f6343d
Update the header and Future Features section of the README.md
NitBravoA92 Jul 27, 2023
2011528
Fix sintax, indentation and spacing issues
NitBravoA92 Jul 27, 2023
8501094
Change the favicon of the webpage
NitBravoA92 Jul 27, 2023
5f23184
Remove the unnecessary await keyword
NitBravoA92 Jul 27, 2023
f4b0801
Update the Future Features section of the README
NitBravoA92 Jul 27, 2023
b579864
Add the Live Demo section in the README.md
NitBravoA92 Jul 27, 2023
7288ac9
Merge pull request #44 from NitBravoA92/create-tests-cases
NitBravoA92 Jul 27, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .babelrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"presets": [
"@babel/preset-react"
],
"plugins": ["@babel/plugin-syntax-jsx"]
}
36 changes: 36 additions & 0 deletions .eslintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
{
"env": {
"browser": true,
"es6": true,
"jest": true
},
"parser": "@babel/eslint-parser",
"parserOptions": {
"ecmaFeatures": {
"jsx": true
},
"ecmaVersion": 2018,
"sourceType": "module"
},
"extends": ["airbnb", "plugin:react/recommended", "plugin:react-hooks/recommended"],
"plugins": ["react"],
"rules": {
"react/jsx-filename-extension": ["warn", { "extensions": [".js", ".jsx"] }],
"react/react-in-jsx-scope": "off",
"import/no-unresolved": "off",
"import/no-extraneous-dependencies": ["error", {"devDependencies": true}],
"no-shadow": "off"
},
"overrides": [
{
// feel free to replace with your preferred file pattern - eg. 'src/**/*Slice.js' or 'redux/**/*Slice.js'
"files": ["src/**/*Slice.js"],
// avoid state param assignment
"rules": { "no-param-reassign": ["error", { "props": false }] }
}
],
"ignorePatterns": [
"dist/",
"build/"
]
}
45 changes: 45 additions & 0 deletions .github/workflows/linters.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
name: Linters

on: pull_request

env:
FORCE_COLOR: 1

jobs:
eslint:
name: ESLint
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: "18.x"
- name: Setup ESLint
run: |
npm install --save-dev [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected] @babel/[email protected]
[ -f .eslintrc.json ] || wget https://raw.githubusercontent.com/microverseinc/linters-config/master/react-redux/.eslintrc.json
[ -f .babelrc ] || wget https://raw.githubusercontent.com/microverseinc/linters-config/master/react-redux/.babelrc
- name: ESLint Report
run: npx eslint "**/*.{js,jsx}"
stylelint:
name: Stylelint
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: "18.x"
- name: Setup Stylelint
run: |
npm install --save-dev [email protected] [email protected] [email protected] [email protected]
[ -f .stylelintrc.json ] || wget https://raw.githubusercontent.com/microverseinc/linters-config/master/react-redux/.stylelintrc.json
- name: Stylelint Report
run: npx stylelint "**/*.{css,scss}"
nodechecker:
name: node_modules checker
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- name: Check node_modules existence
run: |
if [ -d "node_modules/" ]; then echo -e "\e[1;31mThe node_modules/ folder was pushed to the repo. Please remove it from the GitHub repository and try again."; echo -e "\e[1;32mYou can set up a .gitignore file with this folder included on it to prevent this from happening in the future." && exit 1; fi
69 changes: 69 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
node_modules/# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.

# dependencies
/node_modules
/.pnp
.pnp.js

# testing
/coverage

# production
/build

# misc
.DS_Store
.env.local
.env.development.local
.env.test.local
.env.production.local

npm-debug.log*
yarn-debug.log*
yarn-error.log*
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.

# dependencies
/node_modules
/.pnp
.pnp.js

# testing
/coverage

# production
/build

# misc
.DS_Store
.env.local
.env.development.local
.env.test.local
.env.production.local

npm-debug.log*
yarn-debug.log*
yarn-error.log*
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.

# dependencies
/node_modules
/.pnp
.pnp.js

# testing
/coverage

# production
/build

# misc
.DS_Store
.env.local
.env.development.local
.env.test.local
.env.production.local

npm-debug.log*
yarn-debug.log*
yarn-error.log*
20 changes: 20 additions & 0 deletions .stylelintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{
"extends": ["stylelint-config-standard"],
"plugins": ["stylelint-scss", "stylelint-csstree-validator"],
"rules": {
"at-rule-no-unknown": [
true,
{
"ignoreAtRules": ["tailwind", "apply", "variants", "responsive", "screen"]
}
],
"scss/at-rule-no-unknown": [
true,
{
"ignoreAtRules": ["tailwind", "apply", "variants", "responsive", "screen"]
}
],
"csstree/validator": true
},
"ignoreFiles": ["build/**", "dist/**", "**/reset*.css", "**/bootstrap*.css", "**/*.js", "**/*.jsx"]
}
21 changes: 21 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
MIT License

Copyright (c) 2023 Nitcelis (Carmen) Bravo A & Lawrence Kioko

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
Loading