A Vue 2 and FeathersJS 2 fullstack app with authentication, email verification, and email support."
This project uses Feathers. An open source web framework for building modern real-time applications and Vue 2 with Server Side Rendering.
This project is not finished but if you are can be ready to use if you are content with what it offers.
Features
- SASS
- Stylus
- Jade
- ES6, ES7, and ES8
- Webpack
- Vue Stash - For Redux Store
- Bootstrap
- Lodash
- jQuery
- FontAwesome
- Validate client side data with mongoose schemas
Getting up and running is as easy as 1, 2, 3, 4.
-
Install your dependencies
cd path/to/Feathers-Vue; npm install
-
Start your app locally
mongod
npm run dev
In production run
npm run build
npm start
If you want emails to work using gmail add the following environment variables
export [email protected]
export GMAIL_PASS=yourpassword or app-password
See How to set an app password
Simply run npm test
and all your tests in the test/
directory to run server side unit test or run npm test-client
to run client side tests.
Feathers has a powerful command line interface. Here are a few things it can do:
$ npm install -g feathers-cli # Install Feathers CLI
$ feathers generate service # Generate a new Service
$ feathers generate hook # Generate a new Hook
$ feathers generate model # Generate a new Model
$ feathers help # Show all commands
Create an environments file, environment.env
in the project root that you can store production environment variables in. These will contain things like your app secret, gmail, app password, and such. Don't include this file in your repo as you may expose sensitive information.
You may run
docker-compose up
to build a docker-virtual machine instance.
For more information on all the things you can do with Feathers visit docs.feathersjs.com.
I'm working on a cordova starter with feathers 2, Vue 2, and Framework 7. Visit the cordova
branch of this repo.
- Latest change contains a breaking change with gulp auto-importing. Before the first hyphen was converted to _, now named injected files use camelCase convention.
hasPermission
hook is changed tohasPermissions
and allows multiple permission names to be passed in.- Various other hooks have been updated.
Copyright (c) 2016
Licensed under the MIT license.