This app features
- Vue.js - a frontend framework
- Webpack - a tool to bundle your files
- vue-router - client-side routing
- Axios - a library to call your REST api
- vue-bootstrap which adds Twitter bootstrap v4 styling to the site
- Authentication with GitHub
First make sure you have npm and node.js installed
Next, clone the boilerplate from GitHub:
git clone https://github.com/akeshavan/vue-auth-boilerplateThen install all npm packages:
cd vue-auth-boilerplate/my-app
npm installTo run the app, do:
npm run devAnd navigate to http://localhost:8080 (or wherever npm starts the server). As you make changes to your app, the browser will reload so you don't have to keep refreshing the page.
You need to set up oauth to your own server in order for this boilerplate to work.
On your GitHub account, go to Settings > Developer Settings > OAuth Apps > New OAuth App.
Fill out the form, making sure that your Authorization callback URL is http://localhost:8080.
Take note of the client_id and client_secret of your app.
Your server endpoint should be something like http://your_rest_api.com/authenticate/code, where code is a string from GitHub that's procided by the client.
The server should return a JSON that looks like:
{"token": "secret_token_from_the_server"}This token will be used for all future calls to your server. In this example, our server is the GitHub api.
If you don't have a server, then set one up with prose/gatekeeper and heroku
Your server needs to have the client_secret handy.
In the src/config.js file of this boilerplate app, edit it so that your client_id and authentication endpoint authUrl are correct.
export default {
authUrl: 'https://your_authentication_endpoint/',
clientId: 'your github client id',
redirectUri: 'http://localhost:8080', //eventually this will become your production url
};To build the app for production, do:
npm run buildEverything in the dist/ folder is your production app.