Skip to content
Bootiful Spring Boot + Vue Example
Vue Shell Java TypeScript HTML JavaScript
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

Spring Boot + Vue Example

This example app shows how to create a Spring Boot API and display its data with Vue.

Please read Bootiful Development with Spring Boot and Vue to see how this app was created.

Prerequisites: Java 11 and Node.js.

Okta has Authentication and User Management APIs that reduce development time with instant-on, scalable user infrastructure. Okta's intuitive API and expert support make it easy for developers to authenticate, manage, and secure users and roles in any application.

Getting Started

To install this example application, run the following commands:

git clone
cd spring-boot-react-example

This will get a copy of the project installed locally. To install all of its dependencies and start each app, follow the instructions below.

To run the server, cd into the server folder and run:

./mvnw spring-boot:run

To run the client, cd into the client folder and run:

npm start

The primary example (without authentication) is in the master branch, while the Okta integration is in the okta branch. To check out the Okta branch on your local machine, run the following command.

git checkout okta

Create an Application in Okta

You will need to create an OpenID Connect Application in Okta to get your values to perform authentication.

Log in to your Okta Developer account (or sign up if you don’t have an account) and navigate to Applications > Add Application. Click Single-Page App, click Next, and give the app a name you’ll remember. Change all instances of localhost:8080 to localhost:8081 and click Done.

Server Configuration

Set the issuer and copy the clientId into server/src/main/resources/

NOTE: The value of {yourOktaDomain} should be something like Make sure you don't include -admin in the value!


Client Configuration

Set the issuer and copy the clientId into client/src/router.ts.

Vue.use(OktaVuePlugin, {
  issuer: 'https://{yourOktaDomain}/oauth2/default',
  client_id: '{yourClientId}',


This example uses the following libraries provided by Okta:


Please post any questions as comments on this repo's blog post, or visit our Okta Developer Forums. You can also email if you would like to create a support ticket.


Apache 2.0, see LICENSE.

You can’t perform that action at this time.