readme.md 3.19 KB
Newer Older
1
2
WebProtégé
==========
3

tudorache's avatar
tudorache committed
4
What is WebProtégé?
tudorache's avatar
tudorache committed
5
-------------------
tudorache's avatar
tudorache committed
6

Matthew Horridge's avatar
Matthew Horridge committed
7
WebProtégé is a free, open source collaborative ontology development environment.
tudorache's avatar
tudorache committed
8
9
10
11
12
13
14
15

It provides the following features:
- Support for editing OWL 2 ontologies
- A default simple editing interface, which provides access to commonly used OWL constructs
- Full change tracking and revision history
- Collaboration tools such as, sharing and permissions, threaded notes and discussions, watches and email notifications
- Customizable user interface
- Support for editing OBO ontologies
tudorache's avatar
tudorache committed
16
- Multiple file formats for upload and download of ontologies (supported formats: RDF/XML, Turtle, OWL/XML, OBO, and others)
tudorache's avatar
tudorache committed
17

18
WebProtégé runs as a Web application. End users access it through their Web browsers.
Matthew Horridge's avatar
Matthew Horridge committed
19
20
They do not need to download or install any software. We encourage end-users to use

21
https://webprotege.stanford.edu
22
23
24

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:
tudorache's avatar
minor    
tudorache committed
25

Josef Hardi's avatar
Josef Hardi committed
26
https://github.com/protegeproject/webprotege/wiki/WebProtégé-4.0.0-beta-x-Installation
27
28
29
30

Building
--------

Matthew Horridge's avatar
Matthew Horridge committed
31
To build WebProtégé from source
32

Matthew Horridge's avatar
Matthew Horridge committed
33
1) Clone the github repository
Josef Hardi's avatar
Josef Hardi committed
34
35
36
   ```
   git clone https://github.com/protegeproject/webprotege.git
   ```
Matthew Horridge's avatar
Matthew Horridge committed
37
38
2) Open a terminal in the directory where you clone the repository to
3) Use maven to package WebProtégé
Josef Hardi's avatar
Josef Hardi committed
39
40
41
   ```
   mvn clean package
   ```
42
5) The WebProtege .war file will be built into the webprotege-server directory
43
44
45
46
47
48
49

Running from Maven
------------------

To run WebProtégé in SuperDev Mode using maven

1) Start the GWT code server in one terminal window
Josef Hardi's avatar
Josef Hardi committed
50
51
52
    ```
    mvn gwt:codeserver
    ```
53
2) In a different terminal window start the tomcat server
Josef Hardi's avatar
Josef Hardi committed
54
55
56
57
    ```
    mvn -Denv=dev tomcat7:run
    ```
3) Browse to WebProtégé in a Web browser by navigating to [http://localhost:8080](http://localhost:8080)
Josef Hardi's avatar
Josef Hardi committed
58
59
60
61

Running from Docker
-------------------

62
63
64
65
To run WebProtégé using Docker containers:

1. Enter this following command in the Terminal to start the docker container in the background

Josef Hardi's avatar
Josef Hardi committed
66
   ```bash
Josef Hardi's avatar
Josef Hardi committed
67
   docker-compose up -d
Josef Hardi's avatar
Josef Hardi committed
68
   ```
Josef Hardi's avatar
Josef Hardi committed
69

70
71
2. Create the admin user (follow the questions prompted to provider username, email and password)

Josef Hardi's avatar
Josef Hardi committed
72
73
74
   ```bash
   docker exec -it webprotege java -jar /webprotege-cli.jar create-admin-account
   ```
75
76
77
78
79

3. Browse to WebProtégé Settings page in a Web browser by navigating to [http://localhost:5000/#application/settings](http://localhost:5000/#application/settings)
   1. Define the `System notification email address` and `application host URL`
   2. Enable `User creation`, `Project creation` and `Project import`

Josef Hardi's avatar
Josef Hardi committed
80
To stop WebProtégé and MongoDB:
81

Josef Hardi's avatar
Josef Hardi committed
82
83
84
   ```bash
   docker-compose down
   ```
85
86
87
88
89
90

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:

* WebProtégé will store its data in the source code folder at `./.protegedata/protege` where you run `docker-compose`
* MongoDB will store its data in the source code folder at `./.protegedata/mongodb` where you run `docker-compose`

Josef Hardi's avatar
Josef Hardi committed
91
> Path to the shared volumes can be changed in the `docker-compose.yml` file.