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

Shiver of Sharks Inspiration Board #33

Open
wants to merge 59 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
59 commits
Select commit Hold shift + click to select a range
1126a3b
front-end setup done
ttienguyen Jun 27, 2022
5ca85b3
added board component, single board component
Jun 30, 2022
867f441
more component building
Jun 30, 2022
edca5c5
connected to backend, connected board and card components
Jul 2, 2022
7f2be5a
updated components
Jul 18, 2022
f461f94
merging in new branch
sariapastor Jul 19, 2022
541731a
Replaced hardcoded boards with response from API call
sariapastor Jul 19, 2022
ca7146c
added form to add new boards
Jul 19, 2022
16e93e1
fixes update of boards state after new board creation
sariapastor Jul 19, 2022
cc32648
adds PropTypes declarations to components
sariapastor Jul 19, 2022
963b4ce
adds key prop to boards display and cards display
sariapastor Jul 19, 2022
7806cf0
removes enclosing divs around SingleBoard and SingleCard components
sariapastor Jul 19, 2022
21a232d
added key for board and card components
Jul 19, 2022
3d97181
adds Header and BackButton components
sariapastor Jul 19, 2022
a111b3b
merging in updates from main
sariapastor Jul 19, 2022
b8d8682
merge: adds PropTypes
sariapastor Jul 19, 2022
dd2bae9
updates views to only render SingleBoard in Home view
sariapastor Jul 19, 2022
3dc07b7
adds missing requirement to proptypes of Board
sariapastor Jul 19, 2022
4da27e7
Like and delete buttons work with states in the front end
ttienguyen Jul 20, 2022
33f614e
added form to add new card, connected with axios.
Jul 20, 2022
397649c
Merging in new card form feature
sariapastor Jul 20, 2022
22e67ef
merges with delete card feature
sariapastor Jul 20, 2022
2dad221
changes numCard and setNumCard state to cards and setCards
sariapastor Jul 20, 2022
7489844
css updates
Jul 20, 2022
dc9d784
updated css
Jul 20, 2022
764ec56
Axios connected the front with the back for like and delete buttons
ttienguyen Jul 20, 2022
8ee3cc4
updates to css
Jul 20, 2022
ffc720a
finished merging
Jul 20, 2022
24fe3cd
merges in css updates
sariapastor Jul 20, 2022
b4d29cb
normalizes file names
sariapastor Jul 20, 2022
e809e60
added delete button to board and did Axios to the backend
ttienguyen Jul 20, 2022
b9fcf7c
sujin changes
Jul 20, 2022
fbb0eb7
sujin changes after merging conflicts
Jul 20, 2022
78435d9
changed props of Cards component in app.js
Jul 20, 2022
f522b00
fixes boards not updating correctly when cards changed
sariapastor Jul 20, 2022
a6622e7
updated style sheets of cards and boards
Jul 21, 2022
d2a8947
Merge branch 'main' of https://github.com/ttienguyen/front-end-inspir…
Jul 21, 2022
aa545bd
refactors previous bug fix to use existing useEffect hook
sariapastor Jul 21, 2022
3a13860
changed cursor to pointer when hovering over boards
Jul 21, 2022
6383109
Merges boards update fix with main branch
sariapastor Jul 21, 2022
2cbf247
implements pop-up feature for forms
sariapastor Jul 21, 2022
06c88ba
sort buttons added
Jul 21, 2022
1bba1ba
sort buttons added, resolved merge conflicts?
Jul 21, 2022
dea48b9
updated sorting
Jul 21, 2022
f2cae9a
react-create-app on Heroku
ttienguyen Jul 21, 2022
c000401
fix to likes count update
sariapastor Jul 21, 2022
fb0c1fe
Merge branch 'main' of https://github.com/ttienguyen/front-end-inspir…
sariapastor Jul 21, 2022
02c513d
fixes deleted card reappearing on return to board
sariapastor Jul 21, 2022
d9b025b
cleans up import statements
sariapastor Jul 21, 2022
35d6395
renames getBoards to setBoards
sariapastor Jul 21, 2022
7779088
changes to https for likes count axios call
sariapastor Jul 21, 2022
7f7aeb2
lil cleanups
sariapastor Jul 21, 2022
8ccc783
fixes one last https
sariapastor Jul 21, 2022
5a85811
App.js modified
ttienguyen Jul 22, 2022
68006e9
added close function for card and board forms
Jul 22, 2022
5c7a162
updated App.js
ttienguyen Jul 22, 2022
1767e65
App.js updated
ttienguyen Jul 22, 2022
969b815
updated CSS for styling
Jul 22, 2022
5bc1264
Merge branch 'main' of https://git.heroku.com/sharks-inspiration-board
Jul 22, 2022
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
23 changes: 23 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -48,3 +48,26 @@ yarn-error.log*
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*
71 changes: 68 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,70 @@
# Inspiration Board: Front-end Layer
# Getting Started with Create React App

This scaffold only includes a `.gitignore` file.
This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app).

To get started, follow the setup directions described in the project.
## Available Scripts

In the project directory, you can run:

### `yarn start`

Runs the app in the development mode.\
Open [http://localhost:3000](http://localhost:3000) to view it in your browser.

The page will reload when you make changes.\
You may also see any lint errors in the console.

### `yarn test`

Launches the test runner in the interactive watch mode.\
See the section about [running tests](https://facebook.github.io/create-react-app/docs/running-tests) for more information.

### `yarn build`

Builds the app for production to the `build` folder.\
It correctly bundles React in production mode and optimizes the build for the best performance.

The build is minified and the filenames include the hashes.\
Your app is ready to be deployed!

See the section about [deployment](https://facebook.github.io/create-react-app/docs/deployment) for more information.

### `yarn eject`

**Note: this is a one-way operation. Once you `eject`, you can't go back!**

If you aren't satisfied with the build tool and configuration choices, you can `eject` at any time. This command will remove the single build dependency from your project.

Instead, it will copy all the configuration files and the transitive dependencies (webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except `eject` will still work, but they will point to the copied scripts so you can tweak them. At this point you're on your own.

You don't have to ever use `eject`. The curated feature set is suitable for small and middle deployments, and you shouldn't feel obligated to use this feature. However we understand that this tool wouldn't be useful if you couldn't customize it when you are ready for it.

## Learn More

You can learn more in the [Create React App documentation](https://facebook.github.io/create-react-app/docs/getting-started).

To learn React, check out the [React documentation](https://reactjs.org/).

### Code Splitting

This section has moved here: [https://facebook.github.io/create-react-app/docs/code-splitting](https://facebook.github.io/create-react-app/docs/code-splitting)

### Analyzing the Bundle Size

This section has moved here: [https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size](https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size)

### Making a Progressive Web App

This section has moved here: [https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app](https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app)

### Advanced Configuration

This section has moved here: [https://facebook.github.io/create-react-app/docs/advanced-configuration](https://facebook.github.io/create-react-app/docs/advanced-configuration)

### Deployment

This section has moved here: [https://facebook.github.io/create-react-app/docs/deployment](https://facebook.github.io/create-react-app/docs/deployment)

### `yarn build` fails to minify

This section has moved here: [https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify](https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify)
5 changes: 5 additions & 0 deletions README.old.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Inspiration Board: Front-end Layer

This scaffold only includes a `.gitignore` file.

To get started, follow the setup directions described in the project.
39 changes: 39 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
{
"name": "front-end-inspiration-board",
"version": "0.1.0",
"private": true,
"dependencies": {
"@testing-library/jest-dom": "^5.14.1",
"@testing-library/react": "^13.0.0",
"@testing-library/user-event": "^13.2.1",
"axios": "^0.27.2",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-scripts": "5.0.1",
"web-vitals": "^2.1.0"
},
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
},
"eslintConfig": {
"extends": [
"react-app",
"react-app/jest"
]
},
"browserslist": {
"production": [
">0.2%",
"not dead",
"not op_mini all"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
}
}
Binary file added public/favicon.ico
Binary file not shown.
43 changes: 43 additions & 0 deletions public/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<link rel="icon" href="%PUBLIC_URL%/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="theme-color" content="#000000" />
<meta
name="description"
content="Web site created using create-react-app"
/>
<link rel="apple-touch-icon" href="%PUBLIC_URL%/logo192.png" />
<!--
manifest.json provides metadata used when your web app is installed on a
user's mobile device or desktop. See https://developers.google.com/web/fundamentals/web-app-manifest/
-->
<link rel="manifest" href="%PUBLIC_URL%/manifest.json" />
<!--
Notice the use of %PUBLIC_URL% in the tags above.
It will be replaced with the URL of the `public` folder during the build.
Only files inside the `public` folder can be referenced from the HTML.
Unlike "/favicon.ico" or "favicon.ico", "%PUBLIC_URL%/favicon.ico" will
work correctly both with client-side routing and a non-root public URL.
Learn how to configure a non-root public URL by running `npm run build`.
-->
<title>React App</title>
</head>
<body>
<noscript>You need to enable JavaScript to run this app.</noscript>
<div id="root"></div>
<!--
This HTML file is a template.
If you open it directly in the browser, you will see an empty page.
You can add webfonts, meta tags, or analytics to this file.
The build step will place the bundled scripts into the <body> tag.
To begin the development, run `npm start` or `yarn start`.
To create a production bundle, use `npm run build` or `yarn build`.
-->
</body>
</html>
Binary file added public/logo192.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added public/logo512.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
25 changes: 25 additions & 0 deletions public/manifest.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{
"short_name": "React App",
"name": "Create React App Sample",
"icons": [
{
"src": "favicon.ico",
"sizes": "64x64 32x32 24x24 16x16",
"type": "image/x-icon"
},
{
"src": "logo192.png",
"type": "image/png",
"sizes": "192x192"
},
{
"src": "logo512.png",
"type": "image/png",
"sizes": "512x512"
}
],
"start_url": ".",
"display": "standalone",
"theme_color": "#000000",
"background_color": "#ffffff"
}
3 changes: 3 additions & 0 deletions public/robots.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# https://www.robotstxt.org/robotstxt.html
User-agent: *
Disallow:
135 changes: 135 additions & 0 deletions src/App.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,135 @@
@import url('https://fonts.googleapis.com/css?family=Dancing+Script');
.box-display {
display: flex;
flex-flow: row wrap;
justify-content: center;

}


:root {
--greypadding: #d9d9d9;
--headerbackground: #d9d9d9;
--headertext: black;
--boxbackground: white;
--bodybackground: white;
--boardtext: black;
--bodytext: black;


}

#App {
background-color: var(--bodybackground);
height: 100%;
min-height: 100vh;
padding: 5vh 10vw 0;
}

#App h1 {
color: var(--headertext);
padding-bottom: 0.5rem;


text-align: center;

font-family: Dancing Script;
font-size: 4em;
}

.container {
display: flex;
align-items: center;
flex-direction: column;
height: 100vh;
}


header button {
background-color: white;
border: none;
cursor: pointer;
}


.single-box {
width: 230px;
height: 230px;
margin: 20px;
border: 1px solid black;
grid-row-start: 1;
grid-row-end: 2;
padding: 10px;
background-color: var(--boxbackground);
overflow: auto;
font-size: 1.5em;
text-align: center;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
}

.pointer {
cursor: pointer;
}

.single-box-container {
background-color: var(--greypadding);
width: 293px;
height: 316px;
display: grid;
grid-template-rows: 290px 25px;
margin: 25px;
border: 1px solid black;
}

.box-footer {
background-color: var(--boxbackground);
height: 25px;
border-top: 1px solid black;
border-right: 10px solid white;
grid-row-start: 2;
grid-row-end: 3;
text-align: right;
font-size: 16px;
}

.box-footer button {
background: none;
border: none;
cursor: pointer;
}

.active-form {
position: fixed;
top: 0px;
left: 0px;
width: 100vw;
height: 100vh;
background: rgba(255,255,255,50%);
}

.active-form > .single-box-container {
position: fixed;
margin-top: -158px;
top: 50vh;
left: calc(50vw - 172px);
}

.hidden-form {
display: none;
}

.close {
top: 20px;
right: 20px;
position: absolute;
padding: 10px;
border: none;
background: none;
font-size: 1em;
}



Loading