A UI overhaul of SASTI

SASTI is a decades old web-based analytics app that reports on tertiary education performance in South Africa.

Over 5 months, I first started by building a component/pattern library (for the Python developers) based on some previous design work.
I then set about replacing the current UI (in DTL) with Jinja2, removing a lot of burdensome JavaScript, and implemented Web Platform tech such as Web Components.

I had to learn more Python (and Django) on the job. While I miss Rails' "Convention over Configuration", I enjoyed the openness, community help, and helpful documentation of Django.

Check out SASTI

Responsibilities

  • Switched to Jinja2 for templating
  • Built and maintained a pattern library, based on previous design work
  • Implemented a number of Web Components that made the back-end developer's life a lot easier
  • Refactor Views and View architecture

Team-mates

  • Graeme Mehl (Development lead)

Observations and insights

  • Django is a delight to work with
  • Web Components can help ease a lot of the front-end load for other developers; it's much easier to write HTML than learn a new JavaScript package API.
  • I wish there was a designer on this project, but we managed to get by.
  • Working with Web Platform tech meant we didn't need to incorporate Node (and its heavy dependencies) in the Python environment