IDme - Student Safeguarding | Nathaniel Read

When 12/2016 Type Software
The aim of this project was to create a piece of software that can create ID badges from manual data entry for my Sixth Form using Python Flask and SQlite. Increasing safety within the school due to students being clearly identifiable and increasing safeguarding.
The Project

ID Badge Image

The Sixth Form I went to was looking to improve safeguarding, as students and staff were in the same plain clothes as each other meaning they were indistinguishable from visitors. As Head Boy at the time, I offered to write a piece of software to meet their requirements to make ID badges for students using headshots, so it wasn’t contracted out for a small fortune to the company who took official student headshots.

It was decided by school management that my solution would be chosen as it was made in house, the project would be better suited to the needs of the school and have more personalisation. Making the application also gave me a good project, a bit of a challenge and an opportunity to learn more about Flask.

Tools Used
  • The project is written in Python
  • The web interface is served with Flask
  • The application uses an SQLite Database to store records


Overall the project was a success, being used to generate 90 student badges and lanyards annually to students. The student badge design got positive feedback from both staff and students as it displayed all the required information and led to it being rolled out to all staff too.

The project has limitations that it doesn’t connect to the institutions MIS, so student data has to be manually entered to generate the badges. If I was developing this again, I’d further investigate APIs to connect the records to the MIS and allow easier generation - however at the time this was not deemed possible due to a lack of open API.