MVP Feature List - maxwelljmckee/TheDemocracyProject GitHub Wiki
1. Hosting on Heroku
Hosting on a live link that never sleeps
2. User CRUD
Users can sign up, sign in, log out
Upon sign up, user will be automatically connected with their state and district representatives.
Visitors can use a demo login to try the platform
3. Representative Follows
In addition to their automatically linked representatives, users can browse through all members of congress, view static data details on each member, and follow anyone they choose
Members can be filtered by chamber, name, or state
4. Representative Upvote/Downvote
Users may go to a representative's detail page and Upvote/Downvote them at any time, providing a realtime approval rating to the representative
User can toggle between Upvote/Downvote in any way they like, choosing one at a time or neither
Representative detail page should display two different renderings of their approval ratings - one showing only their constituents and one nationwide/at-large
5. Bill Follows
User can browse all active bills currently moving through congress, view static data on a bill detail page, and follow their favorites
Bills can be filtered by category or keyword
6. Bill Upvote/Downvote
User can cast an Upvote/Downvote on any given bill. This provides elected officials with a realtime feedback on how their constituencies feel about the issues
Upvotes/Downvotes can be cast and changed in all the same ways as Representative Upvote/Downvote
BONUS: Contacts
User will have one-click access to a variety of resources for following/contacting their followed representatives
BONUS: Bill Comments
Bill detail pages will contain a comments section where users can discuss the given issue.
BONUS: Community Discussion Boards
Beyond the simple comment thread on the Bill Detail page, there will be a whole branch of the platform dedicated to community discussion
Users can create new discussion threads, as well as browsing and contributing to existing discussions
BONUS: Expand Static Information and Statistics
The primary purpose of The Democracy Project is to give users a single-source for civic engagement, and provide them with the information and tools they need to be informed, contributing citizens. For this reason, it is important for the platform to offer a wide variety of statistics and other static information. Though these features do not demonstrate CRUD functionality, they are critical to the application's scope and utility.
BONUS: Representative Interface
Representatives can be authorized to access a restricted branch of the platform where they can view statistics about their own constituents. This may include constituent upvotes/downvotes for all the upcoming issues in which they are involved.
BONUS: Infinite News Feed
User can scroll an infinite feed of current events and updates.