Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
108 commits
Select commit Hold shift + click to select a range
f7c7fda
Update README.md
jacobchlebowski Sep 25, 2022
aee68a4
Update README.md
Zaq02 Sep 26, 2022
4f98b75
test
Oct 4, 2022
2e95771
test
Oct 4, 2022
b7b71ea
public folder
Oct 4, 2022
3c5e860
removed public
Oct 4, 2022
22fa7c3
public
Oct 4, 2022
f8f20ec
basic files
Oct 4, 2022
1e6aede
removed stuff
Oct 6, 2022
0cc618d
readme
Oct 6, 2022
ebcd13e
new new new
MilesGregg Oct 6, 2022
0901b17
add gitignore
MilesGregg Oct 6, 2022
fa05414
new Oauth code
MilesGregg Oct 6, 2022
7cf9710
push
MilesGregg Oct 6, 2022
11cdd65
new code
MilesGregg Oct 7, 2022
16e386a
branchcommit
Zaq02 Oct 7, 2022
43a3488
modal
Zaq02 Oct 7, 2022
3c8d5f3
function based programming
MilesGregg Oct 7, 2022
1e6b73e
progress
Zaq02 Oct 8, 2022
b0b4ed8
commit
Zaq02 Oct 9, 2022
1ff816e
commit
Zaq02 Oct 10, 2022
2446247
commit
Zaq02 Oct 10, 2022
892bf6c
commit
Zaq02 Oct 10, 2022
45f9baf
commit
Zaq02 Oct 11, 2022
918cabe
class-based
Zaq02 Oct 11, 2022
c22c624
error fixes
Zaq02 Oct 11, 2022
f489d43
undo
Zaq02 Oct 11, 2022
5434ecd
fixed mostly
Zaq02 Oct 11, 2022
628c884
upload_image
Oct 12, 2022
41cbc65
commit
Zaq02 Oct 12, 2022
4688cf0
can't connect
MilesGregg Oct 12, 2022
5135db1
fix code
MilesGregg Oct 12, 2022
0f91766
fix OAtuh
MilesGregg Oct 12, 2022
279751b
Update README.md
jacobchlebowski Oct 12, 2022
2d7f33d
new styling and fixing errors
MilesGregg Oct 12, 2022
f9bf8e8
Merge branch 'main' of https://github.com/MilesGregg/final_project in…
MilesGregg Oct 12, 2022
30c4885
images
jacobchlebowski Oct 12, 2022
60cd9cb
Update README.md
jacobchlebowski Oct 12, 2022
c545955
Update README.md
jacobchlebowski Oct 12, 2022
6b4738b
Update README.md
jacobchlebowski Oct 12, 2022
e4be15d
Update README.md
jacobchlebowski Oct 12, 2022
4dd2c67
Update README.md
jacobchlebowski Oct 12, 2022
0e28e5a
Update README.md
jacobchlebowski Oct 12, 2022
14c1c7b
Update README.md
jacobchlebowski Oct 12, 2022
d6b1e58
Update README.md
jacobchlebowski Oct 12, 2022
e5047a1
Update README.md
jacobchlebowski Oct 12, 2022
0bb7f94
Update README.md
jacobchlebowski Oct 12, 2022
a038851
Update README.md
jacobchlebowski Oct 12, 2022
7b4efd7
Update README.md
jacobchlebowski Oct 12, 2022
cf16d7a
Update README.md
jacobchlebowski Oct 12, 2022
c0dbcb6
Update README.md
jacobchlebowski Oct 12, 2022
f74c4ed
Update README.md
jacobchlebowski Oct 12, 2022
487b190
Update README.md
jacobchlebowski Oct 12, 2022
34408b0
Update README.md
jacobchlebowski Oct 12, 2022
7ef7a40
Update README.md
jacobchlebowski Oct 12, 2022
95ed68e
Update README.md
jacobchlebowski Oct 12, 2022
ac12641
Update README.md
jacobchlebowski Oct 12, 2022
951c201
Update README.md
jacobchlebowski Oct 12, 2022
f320358
Update README.md
jacobchlebowski Oct 12, 2022
05f094b
Update README.md
jacobchlebowski Oct 12, 2022
3805895
Update README.md
jacobchlebowski Oct 12, 2022
3f387e7
Update README.md
jacobchlebowski Oct 12, 2022
4c41716
Update README.md
jacobchlebowski Oct 12, 2022
a8124e8
Update README.md
jacobchlebowski Oct 12, 2022
e8b7926
Update README.md
jacobchlebowski Oct 12, 2022
999f527
Update README.md
jacobchlebowski Oct 12, 2022
041d076
Update README.md
jacobchlebowski Oct 12, 2022
74b24d1
post previews
Zaq02 Oct 12, 2022
4f184d3
Merge branch 'main' of https://github.com/MilesGregg/final_project
Zaq02 Oct 12, 2022
d63d060
new content
MilesGregg Oct 12, 2022
f706f10
everything done
MilesGregg Oct 12, 2022
b58f25a
done
MilesGregg Oct 12, 2022
8204819
fix deploy
MilesGregg Oct 12, 2022
f509a2c
fix deploy 2
MilesGregg Oct 12, 2022
ba17dcc
fix
MilesGregg Oct 12, 2022
a78dbc1
server fixes
MilesGregg Oct 12, 2022
b6cbbde
server fix
MilesGregg Oct 12, 2022
1cdf429
server fix
MilesGregg Oct 12, 2022
9342564
fixes
MilesGregg Oct 12, 2022
76f1a36
testing
MilesGregg Oct 12, 2022
8f4a2a0
testing
MilesGregg Oct 12, 2022
14ef1d9
test
MilesGregg Oct 12, 2022
bb1e06c
test 2
MilesGregg Oct 12, 2022
5090d9c
'Test
MilesGregg Oct 12, 2022
3bcb16f
testing
MilesGregg Oct 12, 2022
4721373
testing
MilesGregg Oct 12, 2022
df0b0a6
testing
MilesGregg Oct 12, 2022
afe36ad
testing
MilesGregg Oct 12, 2022
698e625
fix
MilesGregg Oct 12, 2022
19bb5d0
idk
MilesGregg Oct 12, 2022
cb82d9c
testing
MilesGregg Oct 12, 2022
265d27e
testing
MilesGregg Oct 12, 2022
706da62
Update README.md
jacobchlebowski Oct 12, 2022
3e0fe29
testing
MilesGregg Oct 12, 2022
4ef4506
Merge branch 'main' of https://github.com/MilesGregg/final_project in…
MilesGregg Oct 12, 2022
7a4ce71
Update README.md
jacobchlebowski Oct 12, 2022
79b4131
Update README.md
jacobchlebowski Oct 12, 2022
700b038
Update README.md
jacobchlebowski Oct 12, 2022
e092de4
not working...
MilesGregg Oct 12, 2022
959d3c6
Merge branch 'main' of https://github.com/MilesGregg/final_project in…
MilesGregg Oct 12, 2022
327d7d6
deploy fixes
MilesGregg Oct 12, 2022
aae693c
plz work
MilesGregg Oct 12, 2022
eb2b34c
testing
MilesGregg Oct 12, 2022
56bd9bb
works now
MilesGregg Oct 12, 2022
86d990f
Merge branch 'main' into dev
MilesGregg Oct 12, 2022
49ffbe8
Merge pull request #1 from MilesGregg/dev
MilesGregg Oct 12, 2022
5a9f812
Update README.md
jacobchlebowski Oct 12, 2022
d74d268
Update README.md
jacobchlebowski Oct 13, 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
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
.env
node_modules
80 changes: 31 additions & 49 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,49 +1,31 @@
# Final Project
*Due before the start of class, October 13th (final day of the term)*

For your final project, you'll implement a web application that exhibits understanding of the course materials.
This project should provide an opportunity to both be creative and to pursue individual research and learning goals.

## General description
Your project should consist of a complete Web application, exhibiting facets of the three main sections of the course material:

- Static web page content and design. You should have a project that is accessible, easily navigable, and features significant content.
- Dynamic behavior implemented with JavaScript (TypeScript is also allowed if your group wants to explore it).
- Server-side programming *using Node.js*. Typically this will take the form of some sort of persistent data (database), authentication, and possibly server-side computation.
- A video (less than five minutes) where each group member explains some aspect of the project. An easy way to produce this video is for you all the groups members to join a Zoom call that is recorded; each member can share their screen when they discuss the project or one member can "drive" the interface while other members narrate (this second option will probably work better.) The video should be posted on YouTube or some other accessible video hosting service. Make sure your video is less than five minutes, but long enough to successfully explain your project and show it in action. There is no minimum video length.

## Project ideation
Excellent projects typically serve someone/some group; for this assignment you need to define your users and stakeholders. I encourage you to identify projects that will have impact, either artistically, politically, or in terms of productivity.

### Deliverables

#### Form Team (due 9/25)
Students are will work in teams of 3-5 students for the project; teams of two can be approved with the permission of the instructor. Working in teams should help enable you to build a good project in a limited amount of time. Use the `#project-logistics` channel in Discord to pitch ideas for final projects and/or find fellow team members as needed.

Teams must be in place by end of day on Sunday, September 25th. If you have not identified a team at this point, you will be assigned a team. You will be given some class time on Monday to work on your proposal, but please plan on reserving additional time outside of class as needed.

#### Proposal (due 9/27)
Provide an outline of your project direction and the names of associated team members.
The outline should have enough detail so that staff can determine if it meets the minimum expectations, or if it goes too far to be reasonable by the deadline. Please include a general description of a project, and list of key technologies/libraries you plan on using (e.g. React, Three.js, Svelte, TypeScript etc.). Two to four paragraps should provide enough level of detail. Name the file proposal.md and submit a pull request by Tuesday, September 27th at 11:59 PM (end of day). Only one pull request is required per team.

There are no other scheduled checkpoints for your project.

#### Turning in Your Project
Submit a second PR on the final project repo to turn in your app and code. Again, only one pull request per team.

Deploy your app, in the form of a webpage, to Glitch/Heroku/Digital Ocean or some other service; it is critical that the application functions correctly wherever you post it.

The README for your second pull request doesn’t need to be a formal report, but it should contain:

1. A brief description of what you created, and a link to the project itself (two paragraphs of text)
2. Any additional instructions that might be needed to fully use your project (login information etc.)
3. An outline of the technologies you used and how you used them.
4. What challenges you faced in completing the project.
5. What each group member was responsible for designing / developing.
6. A link to your project video.

Think of 1,3, and 4 in particular in a similar vein to the design / tech achievements for A1—A4… make a case for why what you did was challenging and why your implementation deserves a grade of 100%.

## FAQs

- **Can I use XYZ framework?** You can use any web-based frameworks or tools available, but for your server programming you need to use Node.js. Your client-side scripting language should be either JavaScript or TypeScript.
# Final Project

*Jacob Chlebowski - [email protected], Miles Gregg - [email protected], Zaq Humphrey - [email protected]*

Heroku --> https://blog-poster-final-project.herokuapp.com/ <br>
Video --> https://www.youtube.com/watch?v=T0xMWM5yNy4

<img src="https://github.com/MilesGregg/final_project/blob/main/login.png?raw=true" data-canonical-src="(https://github.com/MilesGregg/final_project/blob/main/login.png?raw=true" height="400" width="600"/>

We created a blog that will allow users to post various topics of their choosing and interact with other users. This static web page will be easy to navigate and feature seamless transitions with various content that users post. Overall, this project is technically open to whoever wants to voice their opinions/statements to the world.

Javascript will be utilized for the connection of our database to our server. When users want to add data, the metadata will be inserted as a new document to mongodb. Javascript will dynamically gather the metadata from the database to post/remove any information based on the users preference. We will also utilize Node.js for the server-side programming as we’ve done in `Assignment 3`. In order for users to have their own posts, we will allow them to sign in with Two Factor Authentication.

Node.js will be used to connect to the javascript requests, and will be implemented using express. The database that will be used in this project is Mongodb. Any new posts will be saved as a new record in Mongodb, and the comments will be saved under that record. In regards to authentication, we will use the Two Factor Authentication.

Some of the technologies we took advantage of included MongoDB and Cloudinary. MongoDB was helpful for our posts for users while the Cloudinary was necessary for posting images/photos to our blogger. Cloudinary was the most challenging part of the project since we have to understand how to make use of the key and ID (many tutorials were outdated). In the end, we were successful with the implementation

## Group members and tasks:<br>
Miles- Server implementation and two factor authentication<br>
Zaq- Back end and front end development<br>
Jacob- Cloudinary Cloud Storage, MongoDB database, and README<br>


## Technical Achievements
- **Two Factor Authentication**: This allows for users to have a secure login when signing into the Blogger page. A code is sent to the user's respective email upon attempting to sign in.


<img src="https://github.com/MilesGregg/final_project/blob/main/verification.png" data-canonical-src="(https://github.com/MilesGregg/final_project/blob/main/verification.png" width="500" height="300" />


- **Heroku Implementation**: Website is successfully upload to [Heroku](https://www.heroku.com/) and can be accessed via the link above.
23 changes: 23 additions & 0 deletions client/.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*
70 changes: 70 additions & 0 deletions client/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
# Getting Started with Create React App

This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app).

## Available Scripts

In the project directory, you can run:

### `npm 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.

### `npm 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.

### `npm run 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.

### `npm run 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)

### `npm run 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)
Loading