Skip to content
/ conj Public

Web application to conjugate the French verbs

Notifications You must be signed in to change notification settings

aubique/conj

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Conjugator for French Verbs

Web application that helps mastering French verbs.

Check out the Live Version hosted on Amazon Web Services.

Using Conjugator

Verbs are conjugated in 4 verbal moods:

  1. Indicative (indicatif)
  2. Subjunctive (subjonctif)
  3. Conditional (conditionnel)
  4. Imperative (impératif)

You can type either a infinitive form or any other correct form of the verb to get it conjugated in all French tenses.

Welcome page Table page with French tenses
alt text alt text

Technology Stack

This project constitutes a sort of an REST API-backed Single Page Application (SPA).

Front-End:

  • Angular 9
  • Angular Material UI
  • Angular Flex-Layout

Back-End:

  • Spring Boot 2.2
  • Spring Data JPA
  • PostgreSQL
  • Gradle 6
  • Lombok
  • JUnit 5

Development

You can run, test and develop this project locally.

To run the final server there are several ways to deploy the project.

JAR Package

If you'd like to build the executable JAR you can build it with Gradle:

./gradlew build -x test

The default Gradle profile is set solely for deployment on AWS instance with RDS

Then run the server with dev Spring profile for local deploy:

java -jar -Dspring.profiles.active=dev conj-api/build/libs/*.jar

Navigate to localhost:8080 to see the Angular project home page.

Gradle Task

While developing either Spring Boot server for REST API or Angular UI, the servers may be started and developed independently.

To start the Spring Boot server on localhost:8080:

./gradlew bootRun

To start the Angular Webpack dev-server on localhost:4200 with redirect to the local REST API:

./gradlew npm_start

Database

For deployment on your machine you may need to manually initialize a local PostgreSQL database.

To do that execute these DDL and DCL commands:

DROP USER IF EXISTS 'idea';
CREATE USER idea WITH ENCRYPTED PASSWORD 'idea';

CREATE DATABASE IF NOT EXISTS sfconj;
GRANT ALL PRIVILEGES ON DATABASE sfconj TO idea;

To change datasource settings edit the properties located in resources/application-dev.properties