Skip to content

MaayanLab/PFOCRummage

 
 

Repository files navigation

PFCORummage

https://PFCORummage.maayanlab.cloud/

This is a webserver for gene set enrichment analysis on a very large gene set library. The bot extracts the monthly updates from the WikiPathways PFOCR releases.

Development

Rather than splitting up the meta and data APIs, all functionality is incorporated into a postgres database.

We use postgraphile to serve the database on a graphql endpoint -- this endpoint can then be used for all necessary functionality, including both metadata search, filtering, and enrichment analysis. For speed purposes, enrichment is done through a companion API written in rust, the database itself communicates with this API, it is transparent to the application or users of the database.

Usage

# prepare environment variables
cp .env.example .env
# review & edit .env

# start db
docker-compose up -d pfocrummage-postgres

# create db/ensure it's fully migrated
dbmate up

# start companion API
docker-compose up -d pfocrummage-enrich

# start app (production)
docker-compose up -d pfocrummage-app
# start app (development)
npm run dev

Provisioning

PYTHONPATH=bot python -m helper ingest -i your-gmt.gmt
PYTHONPATH=bot python -m helper ingest-paper-info
PYTHONPATH=bot python -m helper ingest-gene-info

Writing Queries

See src/graphql/core.graphql These can be tested/developed at http://localhost:3000/graphiql

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PLpgSQL 44.9%
  • TypeScript 38.2%
  • Rust 7.8%
  • Python 7.0%
  • JavaScript 1.0%
  • Shell 0.6%
  • Other 0.5%