https://ukraine-war-updates.herokuapp.com/
With this project I want to highlight and update people on what is going on in Ukraine. During these times it is very important to document war crimes against Ukranian people by their opposition and stop misinformation from spreading on the media. This webapp serves as a tool for people to document The Russo-Ukranian war as it unfolds. A user will be able to browse through latest updates on the war and document war crimes as well as misinformation and save tweets to their profle.
To get access to user newsfeed please sign up first!
Forkandclonerepo UkraineUpdates- Sign up for twitter Developer account
- Run
npm installto install all dependencies touch .env .gitignorefiles (really important to add your.envfile to.gitignoreright away!)- Paste your
API_KEY,API_KEY_SECRET,BEARER_TOKEN,ACCESS_TOKEN,ACCESS_TOKEN_SECRETfrom twitter developer portal to you env file - Create a
SECRETkey for cookies in your env file - CREATE a
PORTkey you want your app to run in locally and paste in in your env file - Set up postgres database
- Create a database named
ukrainenewsby runningcreate database ukrainenewsin your postgres terminal for WSL, or alternatively runcreatedb ukrainenewson MAC - Run
sequelize db:migrateto run migrations - Run
nodemonto start your application. If you haven't installed it, runnpm install -g nodemonto install it globally
- Postgres
- Express
- Node
- Vanilla JavaScript
- EJS
- CSS
Most of the data for this app will be pulled form Twitter APIv2, from my experience it has been an effective source especially when it comes to live updates. For this project it will be extremly important to use verified acount tweets.
https://developer.twitter.com/en
| Method | Path | Purpose |
|---|---|---|
| GET | / |
home page of the website |
| GET | /signup |
signup page of the website |
| POST | /signup |
signup for the website |
| GET | /login |
login page of the website |
| GET | /users/profilejournal/:id |
profile page that displays user journal section of the website |
| GET | /users/profiletweets/:id |
profile page that displays user saved tweets section of the website |
| DELETE | /users/:noteid |
delete saved note from profile |
| DELETE | /users/tweet/:tweetid |
delete saved tweet from profile |
| PUT | /users/edit/:noteId |
edit saved note from profile |
| GET | /users/newsfeed |
newsfeed page of the website |
| POST | /users/noteform |
add note to user profile |
| POST | /users/add-tweet |
add tweet to user profile |
| GET | /noteform |
note form page of the website |
- As a user, I want to sign up for a profile
- As a user, I want to sign out of my profile
- As a user, I want to see all important update on The Russo-Ukrainian War
- As a user, I want to document a war crime and I want it to show up on my profile
- As a user, I want to see full article detail from it's original source
- As a user, I want to delete any notes I made on any articles
- As a user, I want to edit any notes I made on any articles
- Authentication
- Twitter API successfully working
- Newsfeed page
- Document war crimes form working
- Notes showing up in my profile page
- Delete/Edit notes
- Implement multiple sources of API, Twitter, Reddit, News
- Filter them out
- For each API show what source they've been pulled from
- Implement image upload for notes
- make about route where I talk about why I did this project and details of the conflict
- casualties updates - scrape news wesbite for this
- live tweet apears on newsfeed
- join table implementation
- responsivness
- error handling
- form validation
- even though I was in docs alot I feel like I need to spend more time going over docs
- learned client / server side difference
- working with queries
- importance of structuring my app and have a clear road map before I start coding
- working with databases - I'm still in the process of understanding things better

