Keeping the songs organized.
A software project that grew directly out of working with Armenian songs and weekly church music.
every song♪
Armenian song collections
The material the tools organize
Desktop + web tools
Tkinter and Flask
Metadata search
More ways to find a song
Where the project came from
Working with a large song collection creates a very specific kind of problem. You may remember the song, its key, or part of the title, but still need a better way to find the right entry and prepare a set.
MOSO stands for Master of Song Organization. I built it to make that work more manageable and to connect the software I write with something I regularly use in church.
What I built
The tools use Python, Tkinter, and Flask. The song manager supports creating, adding, editing, deleting, and reordering songs, along with working toward a master Word document for a day’s songs.
I also built search around structured song information, including titles, keys, speed, time signatures, styles, song types, and comments. Those details matter because a title alone is not always enough to find what you need.
Working with the collection
The project involves both application code and the less glamorous work of organizing the underlying data. I work with old and new song books, structured JSON records, and weekly song information.
It has also led me to explore song recommendation and more flexible retrieval. Those are related experiments rather than a claim that every idea is already part of one finished product.
Why I keep coming back to it
This is the kind of project I like because I understand the problem from both sides. I can build the software, and I can see why a detail matters when someone is preparing songs for a service.
A better search or a cleaner workflow can save someone time every week. That makes the work worth continuing.