Demo IDE | Documentation
integrated development environment for openVALIDATION
openVALIDATION-IDE is a web-based development environment for users who are not familiar with coding. It enables Domain Experts, Business Analysts or Requirement Engineers to write complex validation rules themselves using natural language. These validation rules will be translated into code using openVALIDATION.
Usually, an IDE is a very technical tool for coding. The openVALIDATION-IDE is an approach to hide all the technical features of an IDE and gives the user just the necessary tools for writing validation rules. It includes features like syntax highlighting, auto-completion and linting while making it look like a simple text-editor.
The major components of the tech stack for the openVALIDATION-IDE consists of the Angular framework and the Monaco Editor for its UI, while backend functionality is powered by Spring Boot.
The following overview describes the technology used as well as the way the components communicate with each other.
You can easily run the openVALIDATION-IDE on your local machine with docker, following these steps:
- Install docker if not already installed
- Clone this repository with
git clone https://github.com/openvalidation/openvalidation-ide
- Navigate into the previously cloned repository with
cd openvalidation-ide
- Run
docker-compose up
- Open localhost in your browser
If you don't want to download and compile the sources however, you can also just pull the latest images directly from dockerhub using this alternative docker-compose file:
- Install docker if not already installed
- Download openvalidation-ide-dockerhub.yml to your machine
- Run
docker-compose -f openvalidation-ide-dockerhub.yml up
- Open localhost in your browser
To run the project locally, the following tools must be installed:
- Required installations for the frontend:
- Install a supported version of node.js if not already installed
- Install Angular CLI tool using npm package manager:
npm install -g @angular/cli
- Required installations for the backend:
- Install Java SE Development Kit 8
- Download and install Apache Maven
- Install and run the openVALIDATION Language Server
- Clone this repository with
git clone https://github.com/openvalidation/openvalidation-ide
- Navigate into the previously cloned repository with
cd openvalidation-ide
- Run the frontend:
- Navigate into frontend directory with
cd ./frontend/
- Install node dependencies:
npm install
- Start local angular frontend:
ng serve
- Navigate into frontend directory with
- Run the backend:
- Navigate into backend directory with
cd ./backend/
- Start backend with in-memory h2 database
mvn clean spring-boot:run -Dspring-boot.run.arguments=--cors-headers=http://localhost:4200
- Navigate into backend directory with
- Open localhost with your local angular port (default: 4200) in your browser
These can be set in the docker-compose file or when the container is started.
Variable | Default Value | Description |
---|---|---|
API_BASE_PATH | http://127.0.0.1:8080 | URL of the IDE Backend |
LANGUAGE_SERVER_URL | ws://127.0.0.1:3010 | URL of the language-server |
Variable | Default Value | Description |
---|---|---|
SPRING_PROFILES_ACTIVE | dev | Active Spring Profile |
OPENVALIDATION_IDE_DB | postgres | Database technology |
OPENVALIDATION_IDE_DB_NAME | Database name | |
OPENVALIDATION_IDE_DB_USER | Database username | |
OPENVALIDATION_IDE_DB_PW | Database password | |
CORS_HEADERS | Allowed CORS Headers | |
RESET_SECRET | Secret for obfuscating /reset |