Skip to content

joesyverson/news-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

92 Commits
 
 
 
 
 
 
 
 

Repository files navigation

TOP TEN

Top Ten is a social media application where user interaction finds basis in the top ten most recent headlines, as provided by NewsAPI. The application uses a Rails backend, React frontend, and vanilla CSS for styling.

CURRENT FUNCTIONALITY

  1. On page-load and interval after page-load, the application fetches and then renders the ten most recent headlines.

  1. Users can view and visit the headlines presented without registration.

  1. The footer buttons are still defunct.

  1. Relative measurements permit dynamic resizing of interface. BUG: text does not resize with window.

  1. Returning users may log in for special privileges, such as profile and commenting. Frontend and backend validations deliver error messages for incorrect user input.

  1. BUG: date headers break upon window resizing.

  1. Login and signup use Javascript web tokens to authorize current user, with BCrypt for authentication on the backend. React Router identifies the token and redirects the user.

  1. Signout clears local storage of the token and redirects user to home.

  1. Users may create an account by filling in the fields noted, with errors for incorrect input. Note that the number field is for age and not yet labeled.

  1. More error messages if the backend fails to authenticate the user.

  1. Profile updates are instantly reflected using pessimistic rendering.

  1. Users may cancel update order.

  1. BUG: only the update button on the update form currently works.

  1. Users may save articles they're interested in. The action grabs the relevant data from NewsAPI and persists it in the backend. The SAVE button switches for a DELETE button if the app detects an association between an article from NewsAPI and the users saved data.

  1. Deleting an article from the headlines section, whose objects are from NewsAPI and deleting an article from the user profile both remove the association from the app's backend and render changes.

  1. Commenting on an article persists the article on the app's backend and associates it with the user. A user may view all articles they've commented on or saved in their profile.

  1. Users may interact with each other about articles through article comments. Any article associated with a user gives that user access to all comments about the article

  1. A user may delete comments if they are the author of those comments.

  1. Deleting all comments for a given article will remove all associations of the user through comments, and therefore remove the article from the user's profile (unless they have other associations with the article, such as saves or mentions). However, deleting all comments does not yet instantly remove the article from profile -- the page must be refreshed or the user must further interact with the app to reset its state.

  1. Deleting an article purges all associations between the user and the article.

  1. BUG: any comments showing in an article in the headlines section remain visible after signout, until the page is refreshed.

  1. A user may delete their account, easily enough to do so accidentally.

FUTURE FUNCTIONALITY

This application is not complete. Future functionality will allow features such as following, mentioning other users in articles, and categorizing articles. All these features are already established, albeit incompletely, in the backend. Additional functionality will include weather updates, web sockets for live chats about articles, a story feature that allows users to track a single story across multiple sources and compare facts, plus much more.

  1. The backend is filled with unused routes.

  1. The backend is filled with unused controllers and controller actions.

  1. The backend is filled with unused models and relations.

  1. The frontend is complicated and malformed. Function naming follows no obvious convention. Much of the code is to fix a bug, to fix a bug, to fix a bug, and is better sorted out by a more concise and efficient backend, customized for the frontend experience.

To be continued...

Developed by Joseph Syverson, August 2019

https://github.com/joesyverson/news-app

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published