App consists of Java backend and Vue.js frontend. All codebase and resources are built and run via maven. App uses Spring Boot (with Tomcat instead of Jetty as I've had some problems making Jetty work with everything else).
Database is initially filled with data from import.sql and the table structure is recreated on each start of the application. You can change that in application.properties by modifying line spring.jpa.hibernate.ddl-auto=create-drop
Vue source code is outside of src in a separate directory vue and can be developed separately. Code in Vue uses class syntax and it is written in Typescript. This combination is officially supported by Vue but some typings for Vue plugins are still incomplete so in some places you can see . Hopefully that will change in the future.
mvn install
mvn spring-boot:run
app should be running on http://localhost:8080/
npm install
npm run serve
npm run build
npm run lint
credits: landing page template [woo] (https://www.styleshout.com/free-templates/woo/)