Get your FREE 30 page Developing SOLID Applications guide!

Thinking About Trac Replacements? Consider Mtrack.

Out Of Date Warning

Languages change. Perspectives are different. Ideas move on. This article was published on March 24, 2010 which is more than two years ago. It may be out of date. You should verify that technical information in this article is still current before relying upon it for your own purposes.

Recently, I began working alongside Wez Furlong here at Message Systems. One of the many tools we use is Mtrack. This tool is a port of Trac into PHP, along with the addition of some great new features. Spearheaded by Wez, it’s a great tool that we use internally for our projects, and since it’s stable, it’s worth mentioning to the world.

Mtrack is still in it’s early stages of development, but is certainly a stable piece of software that gets the job done. Having used it for a few weeks, I can say that it’s easy enough to learn, and has some distinct advantages to it over Trac for PHP developers. First and foremost, it is written in PHP, which makes it easier to administrate and maintain than a Python-based application. Second, it allows for multiple projects in the same installation by default, which is a significant improvement over Trac. Third, it allows you to have a repository on one server and an Mtrack instance on another server, and still be able to use that repository in your Mtrack instance. Mtrack also offers some great features, including built-in support for Agile-like development and a plugin architecture that makes writing plugins easy.

For those interested, there are directions and information on how to obtain and install Mtrack on Bitbucket. Mtrack takes about 15 minutes to set up, and has fairly standard and simple configuration instructions. For those who need a bit of extra configuration help, they can likely find the author or users in the #mtrack channel on irc.freenode.net.

After a chat with Wez, the architect of Mtrack, he reminded me that while you can use a remote repository with Mtrack, you must specify it from the web UI after setup has been completed. Also, Mtrack does not cache the results of a remote repository, so users should consider how well connected the repository is to the machine where Mtrack will be running, to prevent performance issues.

Learning design patterns doesn't have to suck.

Design patterns open a whole new world of possibilities. So why are you avoiding them? This brand new book will help you finally understand these wonderful programming techiques!

Learn design patterns TODAY »

Brutos wrote at 3/25/2010 5:12 am:

Integrate it with Git and I’d be happy to try it.

Brandon Savage (@brandonsavage) wrote at 3/25/2010 7:22 am:

Mtrack was built to meet a specific corporate need and that need was subversion. The code is open source, so feel free to extend it to Git if you like. I know there are a couple people already working on that.

Patrick (@pjerky) wrote at 3/26/2010 2:37 pm:

This is kinda neat, but I was wondering if there is a demo version that people can play with on the web or some screenshots to get a better idea of the user interface.

Thanks,
Patrick