This site is a reverse engineered version of the well known site Reddit. The site provides users the ability to view posts made by other users with or without login. Once a user logs in, they are allowed to create posts and make comments.
HTML with no CSS applied
Preliminary CSS applied
Final CSS styling:
Final show page with comment section: (NOTE: Top Communities side bar gets updated as users upload more posts and begin voting on them. Currently the listing order is based on which community has a single highest upvoted post per community.)
HTML, CSS, , EJS, Mongoose, MongoDB, Node Express
HTML - provides the content for the graphical user interface (GUI). CSS - provides the styling and page alignment. EJS - is a simple templating language that lets you generate HTML markup with plain JavaScript. MongoDB Atlas - document model that enables developers to store data as JSON-like objects that resemble objects in application code. Mongoose - elegant mongodb object modeling for node.js Node Express - Express is a minimal and flexible Node.js web application framework that provides a robust set of features for web and mobile applications.
The code snippet below displays one of the more challenging routes. The show route needed to incorporate the ability to find the specific ID of the post selected, then returning the entire database object (document) matching the given ID. Once this document has been found, the route then locates all comments that share the same post-ID and adds them to the 'context' variable to pass to the show.ejs page. In doing so, only the comments that are specific to that single post, are displayed.
At RenditionReddit, we are always keeping an ear to the ground to listen for ideas from our users. Below you will find the feedback we have recieved thus far.
As a frequent user of RenditionReddit, I want to see the addition of a feature that allows me to stay logged in after leaving the site so that I can easily return without having to go back through the process of logging in.
As a photographer on RenditionReddit, I would like to be able to upload photos directly to the site so that I can attach images to my post instead of using links to third-party image hosts.
As a content creator on RenditionReddit who typically works closely with moderators, I would like to be able to add moderators to my RenditionReddit community so that I can delegate some of the admin tasks.
As a user who enjoys the comment section of RenditionReddit, I would like to be able to sort the comment section by different methods such as top, most recent and most controversial comments so that I can more easily navigate the comments.
As a user of RenditionReddit who likes to let my personality project onto my social media presence, I would like to be able to add a profile picture so that I can have a little more individuality from other users.
Additional functionality regarding user login verification would be beneficial. Currently any email/username can be registered, with no verification of validity. This should be solved in a production setting. Additionally, being able to upload multiple images into a carousel on a post would be nice for communities such as DIY, ie; before and after images. Additionally, we could like to change the posting/commenting dates to appear as a "time since" model rather than the abolute timestamp of creation like it currently is. Voting currently has no limitation to the number of up/down votes; user database should get tied to the voting mechanism to prevent infinite votes. Lastly, we plan to add the ability for users to delete/edit their own comments, currently not an available feature.





