The webprotege code base
This repository is in the process of being superceded with a collection of other, more fine-grained, repositories. We are moving WebProtégé to a microservice architecture and each microservice and each common library now has its own repository. While this repository still serves as the repository for the current WebProtégé release, all active development is now taking place in these repositories. You can read more about this on the WebProtégé Next Gen Wiki.
WebProtégé is a free, open source collaborative ontology development environment.
It provides the following features:
WebProtégé runs as a Web application. End users access it through their Web browsers. They do not need to download or install any software. We encourage end-users to use
https://webprotege.stanford.edu
If you have downloaded the webprotege war file from GitHub, and would like to deploy it on your own server, please follow the instructions at:
https://github.com/protegeproject/webprotege/wiki/WebProtégé-4.0.0-beta-x-Installation
To build WebProtégé from source
git clone https://github.com/protegeproject/webprotege.git
mvn clean package
To run WebProtégé in SuperDev Mode using maven
mvn gwt:codeserver
mvn -Denv=dev tomcat7:run
To run WebProtégé using Docker containers:
Enter this following command in the Terminal to start the docker container in the background
docker-compose up -d
Create the admin user (follow the questions prompted to provider username, email and password)
docker exec -it webprotege java -jar /webprotege-cli.jar create-admin-account
Browse to WebProtégé Settings page in a Web browser by navigating to http://localhost:5000/#application/settings
System notification email address and application host URLUser creation, Project creation and Project importTo stop WebProtégé and MongoDB:
docker-compose down
Sharing the volumes used by the WebProtégé app and MongoDB allow to keep persistent data, even when the containers stop. Default shared data storage:
./.protegedata/protege where you run docker-compose./.protegedata/mongodb where you run docker-composePath to the shared volumes can be changed in the
docker-compose.ymlfile.
The steps above use the pre-built WebProtégé image from Docker Hub. If you would rather build your own image from the source code (for example, from the latest code on the master branch), follow the steps below.
The only thing you need installed on your machine is Docker. You do not need Java or Maven — the whole application is compiled inside Docker.
Get the source code and go into the project folder
git clone https://github.com/protegeproject/webprotege.git
cd webprotege
Build the Docker image
Run the command below. It builds the image and names it with the latest-dev tag, so you can easily tell it apart from the official image on Docker Hub:
docker build -t protegeproject/webprotege:latest-dev --build-arg WEBPROTEGE_VERSION=5.0.0-SNAPSHOT .
Be patient — this compiles all of WebProtégé inside Docker and can take 20 minutes or more the first time you run it.
The
WEBPROTEGE_VERSIONvalue must match the `` number near the top of thepom.xmlfile. On the currentmasterbranch that version is5.0.0-SNAPSHOT.
Point Docker Compose at your latest-dev image
Create a file named docker-compose.override.yml next to docker-compose.yml, with this content:
version: "3"
services:
webprotege:
image: protegeproject/webprotege:latest-dev
Docker Compose reads this file automatically and will use your locally built image instead of downloading the official one.
Start WebProtégé and MongoDB
docker-compose up -d
Finish the setup
Follow steps 2 and 3 in the Running from Docker section above to create the admin user and configure the application settings. When you are done, WebProtégé is available at http://localhost:5000.
If you later change the source code, repeat steps 2 and 4 to rebuild the image and restart the containers with the new version.
No open issues yet, or sync has not completed.