Giter Site home page Giter Site logo

ashisraj / blog-post Goto Github PK

View Code? Open in Web Editor NEW
3.0 0.0 7.0 469 KB

This is a simple blog/post application in Node.js with many basic functionalities.

JavaScript 47.13% CSS 4.23% Handlebars 48.64%
blog post blogging nodejs expressjs bootstrap4 mongoosejs mongodb handlebars handlebars-js

blog-post's Introduction

Blog-Post

This is my 1st Node.js application. It has following functionalities (find sceenshot by clicking each link).

  1. User Registration (email support)
  2. Login/Logout
  3. Forgot Password (email support)
  4. Reset Password (email support)
  5. View and Edit Profile
  6. Add Blog/Post
  7. View Blog/Post
  8. Add Comment on a Blog/Post
  9. View Comment on a Blog/Post
  10. Account Locking (to prevent brute-force attacks by enforcing a maximum number of failed login attempts)

Technology

  1. Node.js (Server side JS)
  2. Express.js (Web Application Framework)
  3. Mongoose.js (ODM - Object Document Mapper)
  4. MongoDB (Document Database)
  5. NodeMailer.js (Email)
  6. Passport.js (Authentication and Session Management)
  7. Passport-local.js (Local Authentication)
  8. Handlebars.js (Template Engine)
  9. Bootstrap.js (Frontend, UI)
  10. Bootstrap-validator.js (HTML Form validation)

Prerequisites

  1. Insatll Node.js See this for installation steps.
  2. Install MongoDB See this for installation steps.

Installation

  1. Download the project as zip or do a git clone from here
  2. Go to the root dir (Blog-Post).
  3. Use the standard node app installation process to use the application (npm install).
    • This should install all the dependent node-modules from package.json.

Email Setting

The application sends mail for Successful Registration, Forgot Password and Successful Reset Password from gmail only account.

  1. Edit config\keys.js.
  2. Change smtpConfig=>auth with your gmail account email id and password.
  3. Change from: with your gmail account email id in regMailOptions,forgotMailOptions,resetMailOptions.
  4. To disbale email, edit config/keys.js and set disableEmailSending = "no". Note You have to edit your gmail acoount's setting in order to send mail from less secure application. See this for more details.

Start

  1. Usual Mode start (code changes do not reflect on the fly) node app.js
  2. Development Mode Start (code changes reflect on the fly) SET DEBUG=Blog-Post:* & npm run devstart
  3. Open the application in any browser with http://localhost:8080/

blog-post's People

Contributors

ashisraj avatar ashisraj-globallogic avatar

Stargazers

 avatar  avatar  avatar

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.