|
| 1 | +# SVIP |
| 2 | + |
| 3 | +## Main components: |
| 4 | + |
| 5 | +This top-level project coordinates three sub-projects that compose SVIP: |
| 6 | +1. **g2p-aggregator:** contains the pipeline (in `g2p-aggregator/harvester`) that populates the variant database, |
| 7 | +2. **svip_api:** the API server that serves data from the database to the front-end, |
| 8 | +3. **svip-o-vue:** the web front-end (whose repo is managed by Vital IT). |
| 9 | + |
| 10 | +`docker-compose.yml` is the main configuration file for launching the set of containers |
| 11 | +that compose the complete SVIP system. It includes definitions for a few other essential |
| 12 | +services, such as the Postgres database and local copy of the Universal Transcript Archive |
| 13 | +(UTA). These are built from Docker Hub images and thus don't have any local data |
| 14 | +in this repo. |
| 15 | + |
| 16 | +The top-level git project includes the three sub-projects as git submodules. Typically, |
| 17 | +we commit to the coordinating project when we want to declare that all the sub-projects |
| 18 | +are compatible with each other at that point in their respective commit histories. We'll |
| 19 | +also add tags to the coordinating repo (and probably the sub-repos as well) when we |
| 20 | +perform official releases. |
| 21 | + |
| 22 | +# Notes and other components: |
| 23 | + |
| 24 | +There are currently three environments in which the project can run: |
| 25 | +- **local**, in which the API server runs on port 8085, the front-end runs on 8080, |
| 26 | +and the database server is accessible for debugging on port 30432. |
| 27 | +- **dev**, which typically is deployed to the svip-dev server. |
| 28 | +- **external**, which typically is deployed to svip-test. |
| 29 | + |
| 30 | +All the environments require that docker and docker-compose are installed. |
| 31 | + |
| 32 | +The `deployment` folder contains (work-in-progress) scripts that facilitate deployment |
| 33 | +and synchronization across the three environments. |
| 34 | + |
| 35 | +Other random folders: |
| 36 | +- `sql_scratch` contains scratch SQL scripts used for ad-hoc analyses. |
| 37 | +- `notebooks` contains some Jupyter notebooks for ad-hoc analyses. |
| 38 | +- `staging` is used as a temporary directory by the deployment scripts. |
| 39 | +- `assets` contains artwork and other static assets used in the front-end and promotional. |
| 40 | +- `svip_db_backups` stores snapshots of the database, retrieved from svip-dev. |
| 41 | +- `kibana` contains configuration info for g2p-aggregator's original front-end. |
| 42 | +(It's essentially an artifact of the g2p-aggregator project and isn't used by SVIP.) |
| 43 | +- `outputs` contains a few dumps of information retrieved from some of the sources |
| 44 | +for reference purposes. |
0 commit comments