Giter Club home page Giter Club logo

mirageflow's Introduction

Build Status Latest Stable Version Total Downloads

Blogproject

This is an open-source Blog project made by Mirageflow Inc.

  • MongoDB as Database
  • ExpressJS API as Back-End
  • AngularJS Application as Front-End
  • You can try it here : http://blogproject.net

The project includes theses features:

Prerequisites

  • Git

    Download from git

  • Nodejs(LTS)/Npm

    Download from nodejs

  • Mongodb

    Download from Mongodb | Instruction : from Microsoft

  • mongodb (Mongodb Admin Panel)(Optional)

npm install -g mongo-express

How to use this app

Type in windows terminal (Or linux obviously)

git clone https://github.com/Eloverflow/blogproject blogproject-folder
cd blogproject-folder
npm install

To Run Blogroject

npm run serve

Now browse to blogproject at http://localhost:3000/

To Run Database

(Be sure to have a destination folder for the database or use : mongod --dbpath <Your mongo databse folder>)

mongod

To Run Blogroject API

npm run serve:api

Now browse to blogproject API at localhost Debugger

Content

  • Posts Listing
  • Post consulting
  • Post commenting
  • Post comments sub-commenting
  • Post comments Up vote & Down vote
  • Complete build-in authentication
  • Secured with JWT Token
  • Sign-up
  • Sign-in
  • Forgot-password (Require email configurations)
  • Create User (User must be admin)
  • Facebook authentication (Require facebook configurations)
  • Profile
  • Change password
  • Create Post (User must be admin)
  • Edit Post (User must be admin)
  • Delete Post (User must be admin)

Directory Layout

api_dev/                --> all of the source files for the API
  bin/                      --> www server and process files
  config/                   --> API config
  models/                   --> model and schema (database objects)
  routes/                   --> route (url->functions)
  views/                    --> render (html)
  server.js                 --> main api module
e2e-tests/              --> protractor test files
gulp_tasks/             --> gulp tasks that wil be imported by gulpfile.js
node_modules/           --> External modules | will be created and populated after npm install
src/                    --> all of the source files for the application including scss
  index.scss                --> scss index
  modules/                  --> scss modules
  app/                      --> all of the source files for the application
    app.js                      --> main application module
    index.css                   --> will be generated by gulp using the scss
    index.html                  --> app layout file (the main html template file of the app)
    logoutcallback.html         --> facebook auth requirement
    oauthcallback.html          --> facebook auth requirement
    lib/                        --> External modules | will be created and populated after npm install or bower install
    controllers_res/            --> controller resources
    view_contact/                    --> contact controller and views
    view_about/                      --> about controller and views
    view_post/                       --> post controller and views
    view_posts/                      --> posts controller and views
    view_profile/                    --> profile controller and views
    view_user/                    --> user controller and views
    js/                         --> other js files
    assests/                    --> assets (Such as font)
    img/                        --> images
gulpfile.js             --> Allow for taks such as SCSS compile & Livereload
package.json            --> Dependencies and scripts for NPM
bower.json              --> Dependencies for Bower
.bowerrc                --> Configuration for Bower
karma.conf.js           --> Configuration for Karma test runner
travis.yml              --> Test and Deploy

Full NPM Command

npm run serve (to launch a web server on your source files)
npm run serve:api (to launch a server api on your optimized application)
npm run test-single-run (to launch your unit tests with Karma)

Testing

There are two kinds of tests in the application: Unit tests and end-to-end tests(Protractor).

Running Unit Tests

The easiest way to run the unit tests is to use the supplied npm script:

Karma will do a single run of the tests and then exit. This is useful if you want to check that a particular version of the code is operating as expected. The project contains a predefined script to do this:

npm run test-single-run

Updating Angular

Previously we recommended that you merge in changes to angular-seed into your own fork of the project. Now that the angular framework library code and tools are acquired through package managers (npm and bower) you can use these tools instead to update the dependencies.

You can update the tool dependencies by running:

npm update

This will find the latest versions that match the version ranges specified in the package.json file.

You can update the Angular dependencies by running:

bower update

This will find the latest versions that match the version ranges specified in the bower.json file.

Continuous Integration

Travis CI

Travis CI is a continuous integration service, which can monitor GitHub for new commits to your repository and execute scripts such as building the app or running tests. The angular-seed project contains a Travis configuration file, .travis.yml, which will cause Travis to run your tests when you push to GitHub.

You will need to enable the integration between Travis and GitHub. See the Travis website for more instruction on how to do this.

Contact

For more information on Blogproject please check out http://mirageflow.com/

mirageflow's People

Contributors

bryanstpierre avatar eloverflow avatar

Watchers

 avatar  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.