Giter VIP home page Giter VIP logo

ironhack-7-22-sample-node-project's Introduction

IRONCHAT - Express app

It allows ironhack students to publish and discuss tech related topics. Users can follow each other and stay up to date on their interests.

Pages

Home - List latest publications. For authenticated users, display form that allows for creation of new publication. For visitors, we display sign in and sign up links. Publication edit - Allows user to edit/delete one of their publications. Profile - Displays information about user, as well as their latest publications, and option to follow (if user is authenticated). Profile Edit - Allows authenticated user to edit/delete their existing profile.

Log In - Allows user to log in. Sign Up - Allows new user to sign up.

Route Handlers

GET - '/' - Load list of latest publications, pass them through data object when rendering home page.

POST - '/publication/create' - Handles publication creation form submission. GET - '/publication/:id/edit' - Load existing publication, render edit form. POST - '/publication/:id/edit' - Handle publication edit form submission. POST - '/publication/:id/delete' - Handle publication delete form submission.

GET - '/profile/edit' - Load authenticated user, render edit profile form. POST - '/profile/edit' - Handle edit profile form submission. POST - '/profile/delete' - Handle profile deletion form submission. GET - '/profile/:id' - Load existing user, render profile page. POST - '/profile/:id/follow' - Handle follow form submission. POST - '/profile/:id/unfollow' - Handle unfollow form submission.

GET - '/authentication/log-in' - Render log in page. POST - '/authentication/log-in' - Handle log in form submission. GET - '/authentication/sign-up' - Render sign up page. POST - '/authentication/sign-up' - Handle sign up form submission.

Models

Publication

message: String, required, maxlength: 300 author: ObjectId, ref: 'User', required picture: String

timestamps: true

Follow

follower: ObjectId, ref: 'User', required followee: ObjectId, ref: 'User', required

timestamps: true

User

name: String, required email: String, required username: String, required passwordHashAndSalt: String, required picture: String

Other considerations

  • Add partials.
  • Add hbs date helper.
  • Style with bootstrap.
  • Add cloudinary, multer, multer-storage-cloudinary

Wishlist

Pages

Profile list of followers - Lists followers for a single profile. Profile list of follows - Lists follows for a single profile.

ironhack-7-22-sample-node-project's People

Contributors

josecarneiro avatar oddouu avatar

Watchers

James Cloos avatar  avatar

Forkers

kingsofqueens

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.