:star: MEVN Full stack JS web app boilerplate with NodeJS, Express, Mongo and VueJS
This is a full stack webapp boilerplate project with VueJS + ExpressJS + MongoDB. It is NOT an out-of-box project.
I make it in order to create an up-to-date starter repo which contains all important functions (user signup, login, oauth, profile, …etc) except the business-logic. So when neccessary I can create a new webapp and only need to develop the business logic.
This is just my personal boilerplate, it may or may not be a good fit for your project(s).
Inspired by dstroot/skeleton and sahat/hackathon-starter
If you like my work, please donate. Thank you!
Server-side
Client-side
Supported remote logging services
Install dependencies
$ npm install
or
yarn
For development
$ npm run dev
Build web app scripts and styles:
$ npm run build
For production
$ npm start
Building the images for the first time
$ docker-compose build
Starting the images
$ docker-compose up
+---build
+---client
| +---app
| | +---core
| | +---modules
| | +---demo
| | +---devices
| | +---home
| | +---posts
| | +---session
| |
| +---frontend
| +---images
| +---scss
|
+---data
+---logs
+---server
| | bundle.js
| | dev.js
| | index.js
| +---applogic
| | +---libs
| | +---modules
| | +---counter
| | +---devices
| | +---posts
| | +---session
| +---config
| | default.js
| | index.js
| | prod.js
| | test.js
| |
| +---core
| +---libs
| +---locales
| | +---en
| | +---hu
| +---models
| | user.js
| +---public
| +---routes
| +---schema
| +---services
| +---views
+---tests
|
| package.json
| secrets.json
If you want to bundle your NodeJS server-side code run webpack on server code with npm run build && npm run build:server
command. It if was success, run the server: npm run start:bundle
If you want to export bundled version copy these folders & files to the new place:
- server
- locales
- public
- views
- bundle.js
- package.json
- config.js (optional)
Before start, you have to install production dependencies with npm: npm install --production
These are the instructions for Google:
config.js
fileThese are the instructions for Facebook:
config.js
filehttp://localhost:3000
under Site URLNote: After a successful sign in with Facebook, a user will be redirected back to home page with appended hash #_=_
in the URL. It is not a bug. See this Stack Overflow discussion for ways to handle it.
Update: Added a commented workaround to App.vue, otherwise the FB users may end up on a blank page on redirect.
These are the instructions for GitHub:
config.js
fileThese are the instructions for Twitter:
config.js
filevue-express-mongo-boilerplate is available under the MIT license.
Copyright © 2016 Icebob