Quote-Examiner is a Spring Boot application that parses a block of text and saves some metadata from it. It uses MySQL, Vue.js (Vuex, Jest & Typescript), Spring Data, Apache OpenNLP, and Swagger.
To run this application:
Setup OAuth applications at Github and Google and supply the client id and secret in the backend/src/main/resources/application.yml
./mvnw clean install
java -jar backend/target/backend-0.0.1-SNAPSHOT.war
To run MySQL using docker:
docker-compose up db
To run app using docker if using Mac/Linux:
docker-compose up
To run app using docker if using Windows:
set COMPOSE_CONVERT_WINDOWS_PATHS=1
- Then open Docker Desktop Settings->File Sharing and enable the drive that you have cloned the repo to.
- Restart Docker Desktop
docker-compose up
To run this app in development mode:
backend
**********
./mvnw -f backend/pom.xml spring-boot:run
frontend
**********
cd frontend
npm install
npm run start
Note that in development mode the frontend runs at http://localhost:8081
by default.
Open page:
http://localhost:8080
Check swagger:
http://localhost:8080/swagger-ui.html
column | data type |
---|---|
id | bigint(20) PK |
original | longtext |
stripped | longtext |
nouns | int(11) |
verbs | int(11) |
periods | int(11) |
you | int(11) |
that | int(11) |
thing | int(11) |
they | int(11) |
user_id | varchar(255) |
column | data type |
---|---|
id | varchar(255) PK |
name | varchar(255) |
Create GCP Project
Create GCP Cloud SQL Instance
Create quotes DB on Cloud SQL
Update backend/src/main/resources/application-gcp.yml
spring.cloud.gcp.project-id to GCP AppEngine project id and spring.cloud.gcp.sql.instance-connection-name to GCP Cloud SQL instance connection name
./mvnw clean install
./mvnw -f backend/pom.xml clean package appengine:deploy -P cloud-gcp
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update tests as appropriate.