I’m happy to announce that Meetbot Logs (or Mote) 2.0 is now live at meetbot.fedoraproject.org. Meetbot Logs allows the community to see the minutes and logs from meetings. The new version is a major rewrite and adds features like a calendar view, asynchronous loading, quicker search, and dark mode. It should also be easier to maintain and develop in the future.

My start

I started working on the project years ago with Justin W. FloryNasir Hussain and Ramya Parimi. This was way before Fedora Websites and Apps Revamp was a Fedora Council objective. We dedicated some time out of our schedules and met weekly over a Jitsi call to discuss the requirements, implement features on the code, and document everything. We made changes like obsolescence of Memcachedthe introduction of Pipenv for dependency managementfixes related to frontend theming, and the addition of a documentation toolchain. Unfortunately, we could not quite make the dent we were intending to make back then, and the work on the project stagnated. When we got occupied in our lives, we were unable to make it to the meetings or complete tasks regularly.

A second try

Fast forward to the third quarter of 2021, when I started looking into the project again. I reached out to initial developers like Ralph Bean and Chaoyi Zha for guidance on the code. It took some time and effort to conclude that it would probably be the best if the project started with a clean slate, using technologies and paradigms that are more featured and expansive than to trudge along with those that were ageing. That led to a functional rewrite of the project from the ground-up, called Fragment. I proposed the rewrite as a mentoring project for the Winter 2022 cohort of Outreachy, with assistance from Vipul Siddharth.

The changes in the initial version of the rewrite, like those listed below, had a positive reception from the contributors, both within the Fedora Websites and Apps Team as well as from the wider Fedora Project community. Many lauded the rewrite as a welcome change which was long due. This version was not perfect by any means, but it did pave the way for more such new changes to be included down the line and for more contributors to participate in its development. Some of the changes include:

  • Asynchronous loading of meeting information and faster searching
  • Curation of meeting logs/summaries links to prevent unsafe characters
  • Modal-based wizard-like navigation for quicker lookup of meetings
  • Exhibiting recent meetings according to days, weeks and months
  • Various quality-of-life changes for both users and contributors

Active development

Soon after that, the source code was moved to the repository under the GitHub namespace of Fedora Infra and the team started actively developing the project. Our Outreachy intern, Subhangi Choudhary, and mentors — Francois Andrieu and I — collaborated regularly. Michael Scherer and Mairin Duffy provided additional help and guidance. Together, we introduced even more new exciting features:

  • Calendar view for looking up recent meetings by days, weeks and months
  • Dependency management and automation using Poetry and GitHub Actions
  • System theme compliant and uniformly styled dark mode
  • Reworked summary modal with info on attendance, topics and action items
  • Much faster search using caching and indexing mechanism
  • Inclusion of code compliance conformity, quality checks and unit tests

Every time we shared updates during Fedora Linux Release Parties and Nest With Fedora events, the community showered us with their support. The staging infrastructure deployment, which we revealed recently, was also met with a positive reception. It almost felt like this time around we would be able to make the dent we wanted to make all along. Finally, all the time and effort put into rewriting the project culminated in the final deployment on our production infrastructure environment, which took place around a week back. I extend my gratitude to all those who helped along the way and I cannot wait for you folks to try out our revamped Meetbot Logs webapp!