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

Finance Web App - Project Completed πŸ’― #4

Merged
merged 60 commits into from
Aug 4, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
60 commits
Select commit Hold shift + click to select a range
70094d1
feat: Project setup 'workflows,linters,files/folders,dependencies,etc
ITurres Jul 31, 2023
bc7c109
docs: Update README - Added designer CCL
ITurres Jul 31, 2023
9bf3b14
chore: Renamed 'name' and 'hompage' props on 'package.json'
ITurres Jul 31, 2023
798437b
chore: Renamed 'name' and 'hompage' props on 'package-lock.json'
ITurres Jul 31, 2023
b1dc59d
Merge pull request #1 from ITurres/setup
ITurres Jul 31, 2023
ea00085
chore: Added 'react-icons' and 'sass' to project-dependencies
ITurres Aug 1, 2023
392b55b
refac: Rename file extension to 'index' -stylesheet-
ITurres Aug 1, 2023
8eca888
Add 'companiesSlice' to project
ITurres Aug 1, 2023
13f0a4c
feat: Import and initialize 'companiesReducer' on 'store' reducers
ITurres Aug 1, 2023
c327910
Add 'FMPAPI.js' which contains 'fetchCompanies' -function- and relate…
ITurres Aug 1, 2023
b38999b
Add 'Header' -component-
ITurres Aug 1, 2023
338e5c3
feat: modify 'App' to dispatch and select data when fetching
ITurres Aug 1, 2023
44f2ada
feat: wrap 'App' -component- with 'Provider' and 'StrictMode'
ITurres Aug 1, 2023
18e883f
fix: Add key name to 'companiesReducer' on 'store'
ITurres Aug 1, 2023
0e2f8aa
feat: on 'FMPAPI.js' Modify 'fetchCompanies' to fetch or get from loc…
ITurres Aug 1, 2023
feb6f26
Add 'filterCompaniesData' -utility-function-
ITurres Aug 1, 2023
2f5f7d4
feat: Added 'companies-container' class-selector to 'index.scss'
ITurres Aug 1, 2023
4840846
mod: on 'App' Imported 'Home' and 'CompanyPage' -components- / Remove…
ITurres Aug 1, 2023
35a4f5d
mod: on 'index' move 'Provider' to wrap 'BrowserRouter' too
ITurres Aug 1, 2023
0b1a490
Add 'Home' -page-component-
ITurres Aug 1, 2023
2b8be6c
Add 'CompaniesList' -component-
ITurres Aug 1, 2023
973b91c
Add 'CompanyCard' -component-
ITurres Aug 1, 2023
1bb686e
feat: on 'CompanyCard' Wrap the whole card in the 'Link' -component-
ITurres Aug 1, 2023
8450abe
feat: on 'FMPAPI.js' update companies array
ITurres Aug 1, 2023
74587d0
feat: on 'index.scss' Update styles on all components and pages
ITurres Aug 1, 2023
8f46b75
Add new favicon and logo files to 'assets/' and 'public/' -folders-
ITurres Aug 1, 2023
9be6b2f
feat: Update favicons file path on 'index.html'
ITurres Aug 1, 2023
2383294
feat: on 'index.scss' Added new styles for both mobile/desktop
ITurres Aug 1, 2023
7df880d
feat: on 'Home.jsx' Add new resources, elements and Bootstrap classes
ITurres Aug 1, 2023
3e91186
feat: on 'Header.jsx' Added new styles, component-properties, elements
ITurres Aug 1, 2023
afd9002
feat: on 'CompaniesList.jsx' Added 'index' to each 'CompanyCard' -com…
ITurres Aug 1, 2023
a3b1f99
feat: Important Changes on 'CompanyCard.jsx' layout,markup,styles,etc
ITurres Aug 1, 2023
54eae9e
Add 'CompanyPage.jsx' -component-
ITurres Aug 1, 2023
d48e50f
docs: Update 'README' -file-
ITurres Aug 1, 2023
fb05521
fix: Linter error on 'index.scss'
ITurres Aug 1, 2023
817f81c
Merge pull request #2 from ITurres/feature/day-1-api-routes-navs
ITurres Aug 1, 2023
92ece20
feat: on 'FMPAPI.js' modify return error on catch
ITurres Aug 2, 2023
ca0357b
feat: on 'companiesSlice.js' Modify error state when fetch rejected
ITurres Aug 2, 2023
f72a11a
feat: on 'CompaniesList.jsx' Modify -error-loading- return
ITurres Aug 2, 2023
8411350
feat: on 'index.scss' Add styles for -error-loading- containers
ITurres Aug 2, 2023
692699e
feat: on 'FMPAPI.js' Remove 'companiesStockSymbols' and move it to js…
ITurres Aug 2, 2023
ef5fc04
Add 'SearchBar' -component-
ITurres Aug 2, 2023
37ce65d
feat: on 'index.scss' Added styles to 'search-bar' class-selector
ITurres Aug 2, 2023
f741fe3
feat: on 'Home.jsx' Import 'SearchBar' and add condition for 'compani…
ITurres Aug 2, 2023
512908f
feat: on 'companiesSlice.js' Add new array to 'initialState' and new …
ITurres Aug 2, 2023
d7dc0db
feat: on 'Home.jsx' Change hero logo and import it
ITurres Aug 2, 2023
c642c62
feat: Remove all hardcoded USD-string and apply it on 'company.price'…
ITurres Aug 2, 2023
f17a812
feat: on 'CompanyPage.jsx' filter 'image' out of the list
ITurres Aug 2, 2023
4225eaa
feat: on 'App.jsx' Added path to '*' and markup
ITurres Aug 2, 2023
31e9b1e
tests: Add 'filterCompaniesData.test.js' -test-suite-
ITurres Aug 2, 2023
f28a385
feat: Manage apikey throught 'config'
ITurres Aug 3, 2023
1697ab2
tests: Add required tests
ITurres Aug 3, 2023
31dfd17
feat: Rename all route/link paths on 'App','Header','CompanyCard'
ITurres Aug 3, 2023
77cc126
feat: Modify 'finance-favicon.png'
ITurres Aug 3, 2023
a8356e6
chore: Rename 'name's propertys on 'manifest.json'
ITurres Aug 3, 2023
794bcda
docs: Update 'README.md'
ITurres Aug 3, 2023
4f24ab0
chore: 'import/extension' config to '.eslintrc.json'
ITurres Aug 3, 2023
354025a
fix: ESLint -file-extension- errors
ITurres Aug 3, 2023
159454c
fix: ESLint -file-extension- errors
ITurres Aug 3, 2023
80802e8
Merge pull request #3 from ITurres/feature/final-touches-and-tests
ITurres Aug 3, 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"]
}
45 changes: 45 additions & 0 deletions .eslintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
{
"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",
"no-shadow": "off",
"import/extensions": [
"error",
"ignorePackages",
{
"js": "always",
"jsx": "never",
"json": "always"
}
]
},
"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
25 changes: 25 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# 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*

config.js
39 changes: 39 additions & 0 deletions .stylelintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
{
"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"
]
}
Loading