Git Lab CI for docker build enabled! You can enable it using .gitlab-ci.yml in your project. Check file template at https://gitlab.bio.di.uminho.pt/snippets/5

README-Template.md 4.71 KB
Newer Older
Diogo Batista Lima's avatar
Diogo Batista Lima committed
1
# Blueprint Repository
Diogo Batista Lima's avatar
Diogo Batista Lima committed
2

Diogo Batista Lima's avatar
Diogo Batista Lima committed
3
## How to use
Diogo Batista Lima's avatar
Diogo Batista Lima committed
4

Diogo Batista Lima's avatar
Diogo Batista Lima committed
5
#### HTTP Request through Neo4j Browser
Diogo Batista Lima's avatar
Diogo Batista Lima committed
6

Diogo Batista Lima's avatar
Diogo Batista Lima committed
7
Blueprint Repository was implemented with a Neo4j database. This database management system includes the Neo4j Browser tool which allows
Diogo Batista Lima's avatar
Diogo Batista Lima committed
8
users to access a given database's contents through a web browser, without requiring programming knowledge. After connecting to Universidade 
Diogo Batista Lima's avatar
Diogo Batista Lima committed
9
10
11
12
13
14
15
16
17
18
do Minho's VPN, go to the following [link](http://palsson.di.uminho.pt:7475/browser/) to access Neo4j Browser. In the main page enter the following 
credentials:

* Connect URL - bolt://palsson.di.uminho.pt:7688
* Username - neo4j
* Password - admin

Click the left database logo to see the database's contents, including its nodes, relationships and properties. One may click any of the 
aforementioned entities to automatically access a set of examples. Custom queries may be entered in the upper bar prompt. Neo4j Browser 
does not give access to Blueprint's source code, data and tools but it enables accessing the database's contents without requiring additional dependencies.
Diogo Batista Lima's avatar
Diogo Batista Lima committed
19

Diogo Batista Lima's avatar
Diogo Batista Lima committed
20
21
#### Palsson server SSH access to a Docker with source code via Ubuntu command line

Diogo Batista Lima's avatar
Diogo Batista Lima committed
22
23
Open Ubuntu command line and enter:  
`ssh dlima@palsson.di.uminho.pt`  
Diogo Batista Lima's avatar
Diogo Batista Lima committed
24

Diogo Batista Lima's avatar
Diogo Batista Lima committed
25
26
27
Password - blueprint2019  
To access Blueprint's source code enter:  
`cd blueprint_docker/code`  
Diogo Batista Lima's avatar
Diogo Batista Lima committed
28

Diogo Batista Lima's avatar
Diogo Batista Lima committed
29
30
31
To try Blueprint's Request system enter the following commands after accessing the Palsson server:  
`cd blueprint_docker`  
`docker run -v /home/dlima/blueprint_docker//:/home/ -it blueprint_code`  
Diogo Batista Lima's avatar
Diogo Batista Lima committed
32

Diogo Batista Lima's avatar
Diogo Batista Lima committed
33
The menu interface allows access to the database and its contents. Enter 0 for a short explanation regarding each option. 
Diogo Batista Lima's avatar
Diogo Batista Lima committed
34

Diogo Batista Lima's avatar
Diogo Batista Lima committed
35
#### Download source code, data and tools 
Diogo Batista Lima's avatar
Diogo Batista Lima committed
36

Diogo Batista Lima's avatar
Diogo Batista Lima committed
37
38
39
40
To explore all the source code, downloaded/generated data and tools go to the following OneDrive [link](https://uminho365-my.sharepoint.com/personal/pg32938_uminho_pt/_layouts/15/onedrive.aspx?id=%2Fpersonal%2Fpg32938_uminho_pt%2FDocuments%2FBlueprint_repository%2FBlueprint_TRN_Repository.rar&parent=%2Fpersonal%2Fpg32938_uminho_pt%2FDocuments%2FBlueprint_repository&cid=a4e2f5a8-708e-4131-ac9b-f82d236deb35) 
and download the rar file. To execute the downloaded code it is necessary to install the dependencies listed on the next section and to connect to 
Universidade do Minho's VPN (to access Blueprint's database hosted in the Palsson server)

Diogo Batista Lima's avatar
Diogo Batista Lima committed
41
## Prerequisites
Diogo Batista Lima's avatar
Diogo Batista Lima committed
42

Diogo Batista Lima's avatar
Diogo Batista Lima committed
43
44
To access the database via web browser it is only necessary to have access to the Universidade do Minho's VPN and follow the previous instructions.
To access Blueprint's source code and Request system via SSH access to the Palsson server it is necessary to have access to the Universidade do Minho's VPN
Diogo Batista Lima's avatar
Diogo Batista Lima committed
45
46
47
48
and to a [Ubuntu](https://www.microsoft.com/en-us/p/ubuntu/9nblggh4msv6?activetab=pivot:overviewtab) command line. To explore all of Blueprint's content 
after downloading the rar file from the OneDrive service, it is necessary to fulfill a few prerequisites.  

All code was written in Python 3.6, thus it it is necessary to install [Python](https://www.python.org/downloads/). Any Python 3 version should work
Diogo Batista Lima's avatar
Diogo Batista Lima committed
49
50
fine but it is recommended to install Python 3.6 or higher for optimal performance. The latest Python version, at the time of writing is 3.7.3 and
it is fully compatible with Blueprint Repository.  
Diogo Batista Lima's avatar
Diogo Batista Lima committed
51

Diogo Batista Lima's avatar
Diogo Batista Lima committed
52
The only scenario where it might be necessary to install Neo4j is if the user wants to create and manipulate a local instance of the Blueprint Repository database. 
Diogo Batista Lima's avatar
Diogo Batista Lima committed
53
To install Neo4j, access the following [link](https://neo4j.com/download-thanks/?edition=community&release=3.4.10&flavour=winzip&_ga=2.66976166.909941613.1542910944-847881713.1541509905).   
Diogo Batista Lima's avatar
Diogo Batista Lima committed
54

Diogo Batista Lima's avatar
Diogo Batista Lima committed
55
56
On Windows:
Access the comand line and type the following commands:  
Diogo Batista Lima's avatar
Diogo Batista Lima committed
57
`<NEO4J_HOME>\bin\neo4j install-service`  
Diogo Batista Lima's avatar
Diogo Batista Lima committed
58
`<NEO4J_HOME>\bin\neo4j start`
Diogo Batista Lima's avatar
Diogo Batista Lima committed
59

Diogo Batista Lima's avatar
Diogo Batista Lima committed
60
Visit [http://localhost:7474](http://localhost:7474) in your web browser of choice, to visualize the database.
Diogo Batista Lima's avatar
Diogo Batista Lima committed
61
62
63
64
65



## Built With

Diogo Batista Lima's avatar
Diogo Batista Lima committed
66
67
* [Python](https://www.python.org/downloads/) - Used programming language
* [Neo4j](https://neo4j.com/) - Database framework
Diogo Batista Lima's avatar
Diogo Batista Lima committed
68
* [neo4j-driver](https://pypi.org/project/neo4j-driver/) - Python driver to interact with database (USE THIS VERSION) `pip install neo4j-driver==1.3.1`
Diogo Batista Lima's avatar
Diogo Batista Lima committed
69
70
71
72
73
74
75
76
77

## Required Python Packages

* [tqdm](https://pypi.org/project/tqdm/) - Progress meter `pip install tqdm`
* [numpy](https://pypi.org/project/numpy/) - Data processing `pip install numpy`
* [pandas](https://pypi.org/project/pandas/) - Data processing `pip install pandas`
* [scipy](https://pypi.org/project/scipy/) - Data processing and statistical analysis `pip install scipy`
* [BioPython](https://pypi.org/project/biopython/) - Accessing NCBI for taxonomy data `pip install biopython`
* [Matplotlib](https://pypi.org/project/matplotlib/) - Publication quality graphics `pip install matplotlib`
Diogo Batista Lima's avatar
Diogo Batista Lima committed
78
79
80
81
82



## Authors

Diogo Batista Lima's avatar
Diogo Batista Lima committed
83
84
85
* **Diogo Lima**
* **Oscar Dias**
* **Fernando Cruz**