Monday, April 13, 2015

MGR CMS: a simple Django-based content management system for genomic data

MGR-CMS (Mint Genomics Resource) is a content management system for genomic and transcriptomic data. The code for MGR-CMS can be found Here. As implied by the name, it was originally built to house data for mint plants, but it can be easily adapted for data from other organisms. I made MGR because I couldn't figure out how to get Tripal to behave how I wanted it to. I later found out that was my fault, not Tripal's fault, so if you want a more or less feature complete genomics content management system, look there. If you want a simple system written in Python (Django), or you have the misfortune of having a Windows server (as I do), then MGR might be just the thing for you (but it still might be worth your while to shoot the Tripal people an e-mail, just to make sure it really can't handle your situation).

MGR-CMS uses the Django administration interface to enable live modifications of site content. It uses Bootstrap3 for layout management. I wrote MGR shortly after reading Harry Percival's book "Test-Driven Development with Python" (which is fantastic, and highly recommend it), so I tried to follow those principles, and kind of succeeded. There could still be more testing, and the tests are a bit broken in the public version in which I removed all of the mint-specific content.

MGR doesn't include fancy things like a genome browser, or Blast searching. Those things were planned, but I ran out of time/interest before implementing them. It's mostly just a nice interface for species information pages and downloads.

When you make a new page, MGR handles all of the menu-item creation, but you still have to write the html for the main body of the page.

At the time of this writing, a live deployment of MGR can be found here, although the plan is to take that down and replace it with a Tripal site.

main page of MGR

MGR Admin main page

Editing a species page

No comments:

Post a Comment