Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
45 commits
Select commit Hold shift + click to select a range
ad3d525
build react setup and linters
vangelif Jun 26, 2023
3632cdf
scaffold files, routes, navbar
vangelif Jun 26, 2023
bc7bfdd
install dependencies
vangelif Jun 26, 2023
4506b76
build slice and reducers
vangelif Jun 26, 2023
02c52d7
scaffold components for UI
vangelif Jun 26, 2023
687bcb1
build CountryItems to dispatch countries from API
vangelif Jun 26, 2023
3b215ae
fix linters
vangelif Jun 26, 2023
5ad0182
refactor the displaying of data from API
vangelif Jun 27, 2023
757e7e6
update dependencies
vangelif Jun 27, 2023
739bdbd
refactor components
vangelif Jun 27, 2023
ef1a1de
fix linters
vangelif Jun 27, 2023
c02d279
build readme file
vangelif Jun 27, 2023
c3ea40a
fix extra linters
vangelif Jun 28, 2023
507414c
Merge pull request #1 from vangelif/feature/fetch_from_api
vangelif Jun 28, 2023
eedb3de
Update README.md
vangelif Jun 28, 2023
b76824c
include last asset
vangelif Jun 28, 2023
c2663bc
build the stylings with MUI
vangelif Jun 28, 2023
b328a2c
refactor to accommodate the styling scaffolding
vangelif Jun 28, 2023
9244cc4
Merge pull request #2 from vangelif/feature/build_stylings
vangelif Jun 28, 2023
b064191
scaffold integration testing
vangelif Jun 28, 2023
6cf3ddf
build components tests
vangelif Jun 29, 2023
890f530
refactor code for more efficiency
vangelif Jun 29, 2023
a830cc6
fix linters
vangelif Jun 29, 2023
18465da
Merge pull request #3 from vangelif/feature/testing
vangelif Jun 29, 2023
eabd50b
Update README.md
vangelif Jun 29, 2023
41ae5d7
update readme and comments
vangelif Jun 29, 2023
ff8a826
Merge branch 'dev' into feature/final_touches
vangelif Jun 29, 2023
d3d5c10
Merge pull request #4 from vangelif/feature/final_touches
vangelif Jun 29, 2023
7f8bed9
update readme file
vangelif Jun 29, 2023
f3f0ab8
fix readme file
vangelif Jun 29, 2023
aebae11
credit to designer
vangelif Jun 29, 2023
1eb3c62
fix linters
vangelif Jun 29, 2023
929d1d8
deploy page
vangelif Jun 29, 2023
d8c4f11
refactor index.js and deployment
vangelif Jun 29, 2023
baf5b38
fix linters
vangelif Jun 29, 2023
872c7c6
amend all linters
vangelif Jun 29, 2023
a86af16
fix eslint errors
vangelif Jun 29, 2023
eb2a19f
build redux testing
vangelif Jun 30, 2023
0053801
scaffold tests for the components
vangelif Jun 30, 2023
1c70aef
refactor code using filter method
vangelif Jun 30, 2023
866ec78
Merge pull request #6 from vangelif/deployment
vangelif Jun 30, 2023
176ecc2
scaffold styling
vangelif Jul 1, 2023
42af26d
update stylings and photos
vangelif Jul 1, 2023
9559c90
fix linters
vangelif Jul 1, 2023
ad1c71c
Update README.md
vangelif Jul 2, 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
4 changes: 4 additions & 0 deletions .babelrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"presets": ["@babel/preset-react"],
"plugins": ["@babel/plugin-syntax-jsx"]
}
42 changes: 42 additions & 0 deletions .eslintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
{
"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",
"comma-dangle": "off",
"import/no-extraneous-dependencies": "off",
"react/jsx-one-expression-per-line": "off",
"implicit-arrow-linebreak": "off",
"function-paren-newline": "off",
"no-unused-vars": "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 eslint@7.x eslint-config-airbnb@18.x eslint-plugin-import@2.x eslint-plugin-jsx-a11y@6.x eslint-plugin-react@7.x eslint-plugin-react-hooks@4.x @babel/eslint-parser@7.x @babel/core@7.x @babel/plugin-syntax-jsx@7.x @babel/preset-env@7.x @babel/preset-react@7.x
[ -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 stylelint@13.x stylelint-scss@3.x stylelint-config-standard@21.x stylelint-csstree-validator@1.x
[ -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
23 changes: 23 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# 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*
1 change: 1 addition & 0 deletions .prettierrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{ "singleQuote": true}
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"
]
}
144 changes: 143 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1 +1,143 @@
# react-webapp
<a name="readme-top"></a>
![gif of the webapp](https://media.giphy.com/media/v1.Y2lkPTc5MGI3NjExOGd4cGU0eHRlOGZpMTZxczZwbm5lY3I0cDFtb3UzeHpmaGcxc3B2OSZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/P3azbKx5si6xMOfO9m/giphy.gif)



# 📗 Table of Contents

- [📖 About the Project](#about-project)

- [🛠 Built With](#built-with)
- [Tech Stack](#tech-stack)
- [Key Features](#key-features)

- [💻 Getting Started](#getting-started)

- [Prerequisites](#prerequisites)
- [Setup](#setup)
- [Install](#install)
- [Deployment](#deployment)
- [Usage](#usage)
- [Run Tests](#runtests)
- [Live](#live)
- [Video](#video)

- [👥 Author](#authors)
- [🔭 Future Features](#features)
- [🤝 Contribution](#contributing)
- [⭐️ Show your support](#support)
- [🙏 Acknowledgements](#acknowledgements)
- [📝 License](#license)

# 📖 Countries Stats <a name="about-project"></a>

**Countries Stats** is a website App displaying the countinents and statistics about each country filtered by the API.

## 🛠 Built With <a name="built-with"></a>

### Tech Stack

<a name="built-with">JSX,</a>
<a name="tech-stack">SCSS,</a>
<a name="built-with">MUI,</a>
<a name="tech-stack">React,</a>
<a name="tech-stack">Redux</a>

### Key Features <a name="key-features"></a>

- **Used Material UI Styling**
- **Stored data in Redux**
- **Fetch data from API**

<p align="right">(<a href="#readme-top">back to top</a>)</p>

<!-- GETTING STARTED -->

## 💻 Getting Started <a name="getting-started"></a>

To get a local copy up and running, follow these steps.

### Prerequisites

In order to run this project you need:

- Code editor like Visual Studio Code

### Setup

Clone this repository to your desired folder:

```sh
cd your-folder
git clone https://github.com/vangelif/react-webapp.git
```

### Install

Install this project with:

- npm install
- npm run build

### Deployment

You can deploy this project using:

- gitHub pages/
- npm run build

### Usage

- npm run start

### Run Tests <a name="runtests"></a>

- npm test

<!-- AUTHORS -->

### Live <a name="live"></a>

- [Live Demo: Countries Stats](https://649da459a7d1a300838dc9a9--precious-crumble-870230.netlify.app/)

### Video <a name="video"></a>

- [Live Video](https://www.loom.com/share/1105a01755144438b24fdd2c062c2425?sid=1a640403-02a7-4f6b-b365-e18aebf4c672)

## 👥 Author <a name="authors"></a>

👤 **Vangelis Fotiadis**

- GitHub: [@vangelif](https://github.com/vangelif)
- LinkedIn: [@LinkedIn](https://www.linkedin.com/in/vangfot/)
- Twitter: [@Twitterhandle](https://twitter.com/vangfot)

## 🔭 Future Features <a name="features"></a>

- Add more functionalities

## 🤝 Contributing <a name="contributing"></a>

Contributions, issues, and feature requests are welcome!

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

<p align="right">(<a href="#readme-top">back to top</a>)</p>

## ⭐️ Show your support <a name="support"></a>

If you like this project, please giving a star on GitHub!

<p align="right">(<a href="#readme-top">back to top</a>)</p>

## 🙏 Acknowledgments <a name="acknowledgements"></a>

I would like to thank the designer Nelson Sakwa on Behance for the inspiration.

<p align="right">(<a href="#readme-top">back to top</a>)</p>

## 📝 License <a name="license"></a>

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

<p align="right">(<a href="#readme-top">back to top</a>)</p>
1 change: 1 addition & 0 deletions README.old.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# react-webapp
Loading