Web server with frontend for Protelis.
The commits in this Git repository follows Conventional Commits standard with the help of Conventional Changelog tools and Commitizen.
The repository is a standard Gradle project importable in Intellij IDEA.
The backend is built with Vert.x framework and Kotlin language.
The frontend, originally integrated as a resource in this project, was migrated to NiccoMlt/protelis-web-frontend.
The project is deployed on Heroku using the awesome dpl
tool
by Travis CI creators.
In particular, CI pipeline does the following deployments:
- Master branch code is deployed on Heroku at https://protelis-web.herokuapp.com
- Develop branch code is deployed on Heroku at https://protelis-web-develop.herokuapp.com
The software can be easily deployed as a Docker container.
To build your own (in this example, protelis-web
) you have to build it:
# Build the shadow JAR file, which should be located in ./build/libs/protelis-on-web-all.jar
./gradlew clean shadowJar
# Build the Docker image
docker build -t protelis-web .
Then, run it with:
# Run the container:
# - as a deamon,
# - binding internal 8080 to actual 80 port and 8443 to 443
# - naming the container protelis-web to easily recognize it
docker run -d -p80:8080 -p 443:8443 --name protelis-web protelis-web
As stated in LICENSE
file,
this code is provided under GPLv3 license.
The code was bootstrapped from my personal adaptation of official Single Page Application development with React and Vert.x tutorial, which are both provided under Apache License 2.0.