Skip to content

noltron000-coursework/reddit-clone

Repository files navigation

BEW-1-2_reddit-clone

Reddit Clone is a project in Make School's Backend 1-2. By utilizing relationships, a large variety of tasks can be implemented. This can be cloned and transformed into other websites that might use a similar routing system.

See the tutorial: Make School

Technologies Used

  • Node.js
  • BCrypt.js
  • Express.js
  • Express Handlebars
  • Express Validator
  • Body Parser
  • Server Architecture:
    • MongoDB
    • Mongoose
    • Robo 3T
  • Testing:
    • Chai
    • Mocha

To Do:

Basic CRUD

  • Start Templating
    • Add & connect Handlebars
    • Add Navbar
      • Add a logo that links to home
      • Add an h1 that links to home
      • Add a CTA button that links to new-flare
    • (stretch) Recolor the theme to match FlameWarz' style
  • Complete CRUD of SubFlames
    • index View a list of all subflames
      • Navigate to view all the flares of the same subflame
    • new View subflame creation page
    • create Actionably create a subflame
      • Add a subflame attribute to our flare resource
      • (stretch) Make its ID a hyphen-deliminated string based on its title
    • show View a single subflame in detail
    • (stretch) edit View subflame update-content page
    • (stretch) update Actionably update a subflame
    • (stretch) destroy Actionably delete a subflame
  • Complete CRUD of Flares
    • index View a list of all flares (on current show subflame)
      • Make the index route @ /flares go to the flares-index route
      • Render a flares-index template @ /flares
      • Loop over the flares object
      • See what subflame each flare is on
    • new View flare creation page
      • Make a flares#new route (/flares/new) and template (flares-new.hbs)
      • Add form to flares-new template
      • See each existing subflame, and choose one
      • (stretch) Able to search for a subflame
      • (stretch) If you create a flare from a subflame, it is automatically entered
    • create Actionably create a flare
      • Make create flares route and check that form data is sending to new route
      • Add Post model with mongoose
      • Confirm flares are saving to database
      • (stretch) Error Handling for missing fields
    • show View a single flare in detail
      • Make route to flares#show route /flares/:id
      • display the flare object
      • See & Link the SubFlame
    • (stretch) edit View flare update-content page
    • (stretch) update Actionably update a flare
    • (stretch) destroy Actionably delete a flare
  • Complete CRUD of Embers
    • index View a list of all embers (on current show flare)
    • new View ember creation box (on current show flare)
    • create Actionably create a ember (on current show flare)
    • (stretch) show View a single ember in detail
      • (stretch) Can you show one comment in detail?
    • (stretch) edit View ember update-content box (on current show flare)
    • (stretch) update Actionably update a ember (on current show flare)
    • (stretch) destroy Actionably delete a ember (on current show flare)
  • Sign Up & Log In (CRUD of Pyros)
    • (stretch) index View a list of all pyromancers
    • new View pyromancer creation page (sign up)
    • create Actionably create a pyromancer (sign up)
      • use bcrypt.js to encrypt passwords
    • (stretch) show View a single pyromancer in detail
      • Can you make an author's username a link that displays that users's profile at /users/:username?
      • Can you make a /profile route that loads the current user and displays their posts and comments?
    • (stretch) edit View pyromancer update-content page
    • (stretch) update Actionably update a pyromancer
    • (stretch) destroy Actionably delete a pyromancer
    • sign in
      • (stretch) Require a password confirmation field.
      • (stretch) Plan out how you would do a 'forget password' process.
    • sign out
      • (stretch) Add a Remember Me checkbox
        • What is the difference from when it is checked or not?

Controllers Etc.

  • Testing
    • Test suite for auth.js & pyros
    • (stretch) Test suite for subflames.js
    • (stretch) Test suite for flares.js
      • (stretch) Test flares#create
      • (stretch) Test inability to create flares if not logged in
    • (stretch) Test suite for embers.js
  • Connect embers, flares, and subflames
    • Each subflame has one parent document
    • Each subflame has many flares
    • Each flare has one subflame
    • Each flare has many embers
    • Each ember has one flare
    • (stretch) Each ember has many embers.
  • Associate flares, embers, and votes with their author
    • Each author has many embers
    • Each ember has one author
    • Each author has many flares
    • Each flare has one author
  • update Vote a flare up or down
  • update Vote a ember up or down
  • (stretch) Search Functionality

About

Flame Warz — the edgiest of reddit clones

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published