VueJS Vuetify Vue Router Vuex - Basic Project Skeleton
Getting started
This is a basic VueJs, Vuetify, Vue Router and Vuex skeleton written on JavaScript using async/await. Great for building an MVP for your project.
This project is created to help other developers create a basic VueJS app in an easy way. This basic example shows how powerful and simple JavaScript and VueJS can be. Do you want to contribute? Pull requests are always welcome to show more features.
Features
- Vuetify
- Multiple environment ready (development, production).
- Vue router
- Vuex
- i18n ready.
- Landing page.
- Protected home page.
- Login.
- Signup.
- Forgot password.
- Account verification.
- User profile.
- Users admin area with CRUD operations.
- Cities admin area with CRUD operations.
- Testing with Cypress and mocha/chai.
- NPM script for keeping good source code formatting using prettier and ESLint.
- Use of ESLint for good coding practices.
- Use of prettier for beautiful format.
- JWT Tokens, make requests with a token after login with
Authorization
header with valueBearer yourToken
whereyourToken
is the signed and encrypted token given in the response from the login process.
Demo
A demo of this Frontend is located at: https://vue-demo.daniel-avellaneda.com
Login credentials
email: admin@admin.com
password: 12345
IMPORTANT: Database resets every 30 mins like "12:00am, 12:30am, 1:00am" and so on. So anything you do will be lost after a short time.
Demo is also linked to a Node.js express.js MongoDB JWT REST API project that shows how this frontend can be integrated to an API.
Repo is here: https://github.com/davellanedam/node-express-mongodb-jwt-rest-api-skeleton
Running demo is here: https://api-demo.daniel-avellaneda.com
How to install
Using Git (recommended)
- Clone the project from github. Change "myproject" to your project name.
git clone https://github.com/davellanedam/vue-skeleton-mvp.git ./myproject
Using manual download ZIP
- Download repository
- Uncompress to your desired directory
Install npm dependencies after installing (Git or manual download)
cd myproject
npm install
npm update
VERY IMPORTANT
This project use Vue Router HTML5 History Mode, this means when you are in development mode you can hit Cmd+R (mac) or F5 (Windows) to reload the page and it will work, but when the project is built you will have problems, so will need to do a small change in your web server to make that work. Please read the official Vue Router documentation here: https://router.vuejs.org/guide/essentials/history-mode.html#example-server-configurations
Compiles and hot-reloads for development
npm run serve
Compiles and minifies for production
npm run build
Run your tests
npm run test
Lints and fixes files
npm run lint
Formatting markdown files
npm run remark
Run your end-to-end tests
npm run test:e2e
Run your unit tests
npm run test:unit
Customize configuration
Bugs or improvements
Feel free to report any bugs or improvements. Pull requests are always welcome.
I love this! How can I help
It´s amazing you feel like that! Send me a tweet https://twitter.com/davellanedam, share this with others, make a pull request or if you feel really thankful you can always buy me a beer! Enjoy!
License
This project is open-sourced software licensed under the MIT License. See the LICENSE file for more information.