Michigan Software Team
ProtoCat 3.0 - Project Design
Overview
The design of ProtoCat this year maintains the same basic structure as last year's version but with a more dynamic underlying structure to support our new features. Therefore, in addition to the protocol and user tables, we have added many more (protocol steps, reagents, user info, instances of reagents, categories, comments, and ratings). Our software uses Django to combine all of this stored information and then return it to the user through the templating engine.
Frontend
For the frontend, our software uses the JavaScript library jQuery to manipulate the webpage to make it more dynamic. To make the HTML layout dynamic to the size of the user page, we use Bootstrap, which has the added benefit of cleaning up the design of our webpages.
Backend
On the backend, we used the Django framework and MySQL (SQLite on development computers) to respond to web requests and store the information. The reason we use Django is that it is very simple to do the basic features required of a website, such as authentication and storing to any major database software. It also has a built-in templating engine for sending the data we have stored to the user.