Merge branch 'dependencies/react-project-initial-setup' into 'develop'
[Frontend]Dependencies/react project initial setup See merge request !1
Showing
15 changed files
with
215 additions
and
0 deletions
.gitignore
0 → 100644
| 1 | +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. | ||
| 2 | + | ||
| 3 | +# dependencies | ||
| 4 | +frontend/node_modules | ||
| 5 | +frontend/.pnp | ||
| 6 | +.pnp.js | ||
| 7 | + | ||
| 8 | +# testing | ||
| 9 | +frontend/coverage | ||
| 10 | + | ||
| 11 | +# production | ||
| 12 | +frontend/build | ||
| 13 | + | ||
| 14 | +# misc | ||
| 15 | +.DS_Store | ||
| 16 | +.env.local | ||
| 17 | +.env.development.local | ||
| 18 | +.env.test.local | ||
| 19 | +.env.production.local | ||
| 20 | + | ||
| 21 | +npm-debug.log* | ||
| 22 | +yarn-debug.log* | ||
| 23 | +yarn-error.log* | ||
| 24 | + | ||
| 25 | +.vscode | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
frontend/.eslintrc.json
0 → 100644
| 1 | +{ | ||
| 2 | + "env": { | ||
| 3 | + "browser": true, | ||
| 4 | + "node": true, | ||
| 5 | + "es6": true | ||
| 6 | + }, | ||
| 7 | + "plugins": ["prettier"], | ||
| 8 | + "extends": ["airbnb", "prettier"], | ||
| 9 | + "rules": { | ||
| 10 | + "react/jsx-filename-extension": 0, | ||
| 11 | + "prettier/prettier": [2, { | ||
| 12 | + "endOfLine": "auto" | ||
| 13 | + }], | ||
| 14 | + "arrow-body-style": 1 | ||
| 15 | + }, | ||
| 16 | + "settings": { | ||
| 17 | + "react": { | ||
| 18 | + "version": "latest" | ||
| 19 | + } | ||
| 20 | + } | ||
| 21 | +} | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
frontend/.prettierrc
0 → 100644
frontend/package.json
0 → 100644
| 1 | +{ | ||
| 2 | + "name": "frontend", | ||
| 3 | + "version": "0.1.0", | ||
| 4 | + "private": true, | ||
| 5 | + "dependencies": { | ||
| 6 | + "@testing-library/jest-dom": "^5.11.4", | ||
| 7 | + "@testing-library/react": "^11.1.0", | ||
| 8 | + "@testing-library/user-event": "^12.1.10", | ||
| 9 | + "axios": "^0.21.1", | ||
| 10 | + "react": "^17.0.2", | ||
| 11 | + "react-dom": "^17.0.2", | ||
| 12 | + "react-redux": "^7.2.3", | ||
| 13 | + "react-router-dom": "^5.2.0", | ||
| 14 | + "react-scripts": "4.0.3", | ||
| 15 | + "redux": "^4.0.5", | ||
| 16 | + "styled-components": "^5.2.3", | ||
| 17 | + "web-vitals": "^1.0.1" | ||
| 18 | + }, | ||
| 19 | + "scripts": { | ||
| 20 | + "start": "react-scripts start", | ||
| 21 | + "build": "react-scripts build", | ||
| 22 | + "test": "react-scripts test", | ||
| 23 | + "eject": "react-scripts eject" | ||
| 24 | + }, | ||
| 25 | + "eslintConfig": { | ||
| 26 | + "extends": [ | ||
| 27 | + "react-app", | ||
| 28 | + "react-app/jest" | ||
| 29 | + ] | ||
| 30 | + }, | ||
| 31 | + "browserslist": { | ||
| 32 | + "production": [ | ||
| 33 | + ">0.2%", | ||
| 34 | + "not dead", | ||
| 35 | + "not op_mini all" | ||
| 36 | + ], | ||
| 37 | + "development": [ | ||
| 38 | + "last 1 chrome version", | ||
| 39 | + "last 1 firefox version", | ||
| 40 | + "last 1 safari version" | ||
| 41 | + ] | ||
| 42 | + }, | ||
| 43 | + "devDependencies": { | ||
| 44 | + "eslint-config-airbnb": "18.2.1", | ||
| 45 | + "eslint-config-prettier": "^8.1.0", | ||
| 46 | + "eslint-plugin-import": "2.22.1", | ||
| 47 | + "eslint-plugin-jsx-a11y": "6.4.1", | ||
| 48 | + "eslint-plugin-prettier": "^3.3.1", | ||
| 49 | + "eslint-plugin-react": "7.21.5", | ||
| 50 | + "eslint-plugin-react-hooks": "1.7.0", | ||
| 51 | + "prettier": "^2.2.1" | ||
| 52 | + } | ||
| 53 | +} |
frontend/public/favicon.ico
0 → 100644
No preview for this file type
frontend/public/index.html
0 → 100644
| 1 | +<!DOCTYPE html> | ||
| 2 | +<html lang="en"> | ||
| 3 | + <head> | ||
| 4 | + <meta charset="utf-8" /> | ||
| 5 | + <link rel="icon" href="%PUBLIC_URL%/favicon.ico" /> | ||
| 6 | + <meta name="viewport" content="width=device-width, initial-scale=1" /> | ||
| 7 | + <meta name="theme-color" content="#000000" /> | ||
| 8 | + <meta | ||
| 9 | + name="description" | ||
| 10 | + content="Web site created using create-react-app" | ||
| 11 | + /> | ||
| 12 | + <link rel="apple-touch-icon" href="%PUBLIC_URL%/logo192.png" /> | ||
| 13 | + <!-- | ||
| 14 | + manifest.json provides metadata used when your web app is installed on a | ||
| 15 | + user's mobile device or desktop. See https://developers.google.com/web/fundamentals/web-app-manifest/ | ||
| 16 | + --> | ||
| 17 | + <link rel="manifest" href="%PUBLIC_URL%/manifest.json" /> | ||
| 18 | + <!-- | ||
| 19 | + Notice the use of %PUBLIC_URL% in the tags above. | ||
| 20 | + It will be replaced with the URL of the `public` folder during the build. | ||
| 21 | + Only files inside the `public` folder can be referenced from the HTML. | ||
| 22 | + | ||
| 23 | + Unlike "/favicon.ico" or "favicon.ico", "%PUBLIC_URL%/favicon.ico" will | ||
| 24 | + work correctly both with client-side routing and a non-root public URL. | ||
| 25 | + Learn how to configure a non-root public URL by running `npm run build`. | ||
| 26 | + --> | ||
| 27 | + <title>React App</title> | ||
| 28 | + </head> | ||
| 29 | + <body> | ||
| 30 | + <noscript>You need to enable JavaScript to run this app.</noscript> | ||
| 31 | + <div id="root"></div> | ||
| 32 | + <!-- | ||
| 33 | + This HTML file is a template. | ||
| 34 | + If you open it directly in the browser, you will see an empty page. | ||
| 35 | + | ||
| 36 | + You can add webfonts, meta tags, or analytics to this file. | ||
| 37 | + The build step will place the bundled scripts into the <body> tag. | ||
| 38 | + | ||
| 39 | + To begin the development, run `npm start` or `yarn start`. | ||
| 40 | + To create a production bundle, use `npm run build` or `yarn build`. | ||
| 41 | + --> | ||
| 42 | + </body> | ||
| 43 | +</html> |
frontend/public/logo192.png
0 → 100644
5.22 KB
frontend/public/logo512.png
0 → 100644
9.44 KB
frontend/public/manifest.json
0 → 100644
| 1 | +{ | ||
| 2 | + "short_name": "React App", | ||
| 3 | + "name": "Create React App Sample", | ||
| 4 | + "icons": [ | ||
| 5 | + { | ||
| 6 | + "src": "favicon.ico", | ||
| 7 | + "sizes": "64x64 32x32 24x24 16x16", | ||
| 8 | + "type": "image/x-icon" | ||
| 9 | + }, | ||
| 10 | + { | ||
| 11 | + "src": "logo192.png", | ||
| 12 | + "type": "image/png", | ||
| 13 | + "sizes": "192x192" | ||
| 14 | + }, | ||
| 15 | + { | ||
| 16 | + "src": "logo512.png", | ||
| 17 | + "type": "image/png", | ||
| 18 | + "sizes": "512x512" | ||
| 19 | + } | ||
| 20 | + ], | ||
| 21 | + "start_url": ".", | ||
| 22 | + "display": "standalone", | ||
| 23 | + "theme_color": "#000000", | ||
| 24 | + "background_color": "#ffffff" | ||
| 25 | +} |
frontend/public/robots.txt
0 → 100644
frontend/src/App.js
0 → 100644
| 1 | +import React from 'react'; | ||
| 2 | +import { BrowserRouter, Route, Switch } from 'react-router-dom'; | ||
| 3 | +import Home from './pages/Home'; | ||
| 4 | + | ||
| 5 | +const App = () => ( | ||
| 6 | + <BrowserRouter> | ||
| 7 | + <Switch> | ||
| 8 | + <Route path="/" exact component={Home} /> | ||
| 9 | + </Switch> | ||
| 10 | + </BrowserRouter> | ||
| 11 | +); | ||
| 12 | + | ||
| 13 | +export default App; |
frontend/src/components/common/Button.js
0 → 100644
frontend/src/index.js
0 → 100644
frontend/src/pages/Home.js
0 → 100644
frontend/yarn.lock
0 → 100644
This diff could not be displayed because it is too large.
-
Please register or login to post a comment