My daily worklog


So, yesterday I’ve done everything I wanted to:

Today, I plan to finish the licenses feature and start doing some research about setting up a non-profit for Funkwhale. If I have time remaining, I’ll probably start working on the moderation tools.


Yesterday was interesting! I’ve:

Today, I plan to work on moderation tools, which should keep me busy :wink:


Yesterday, I’ve been focusing on the moderation tools, as planned. This is going slowly, because there are a lot of things to figure and since I’m designing the whole thing to be based on lists that can themselves federate, I cannot rely on existing implementations.

I think the first iteration will focus on instance level moderation (blocking domains and users).

Today, I plan to:

  • Continue my work on the moderation tools in the morning
  • Start organizing the Funkwhale Sync for January
  • Configure our Weblate instance so that Plume can use it for their own translation need
  • Investigate how I may take the ownership for, since the current owner asked me if I wanted to do that


Yesterday, I spent most of my day working on the moderation tools (I’ll elaborate on that below), and also setup the Pad / date poll for the next Sync, in January (cf Funkwhale sync #2). I’ve also configured Weblate so people can login with GitHub, and created a translation project for Plume.

Regarding the moderation tools, things were a bit bumpy. Basically, I started the implementation a few weeks ago, in a dedicated branch, but unforunately my first design was overly complex and would have lead to performance issues as well as a bad UX.

I decided to start from scratch yesterday afternoon, and I’m feeling way better about this second implementation. In terms of feature, it will enable blocking/filtering domains and users, at the instance level (user-level will come in another branch). This will support blocking everything for any given user or domain (in and out), or with more granularity (e.g. block only follow requests from a specific domain, or do not deliver Audio objects to a given user).

I’m pretty sure this will keep me busy this morning, and this afternoon, I’ll start looking into mirroring the FreeMusicArchive :slight_smile:


Friday, I spent my morning working on the moderation tools. I spent the afternoon ordering and configuring a dedicated server to host Funkwhale apps and services (which were hosted on my personal server).

This was needed to prepare for the migration of Open.Audio, and since I post-poned it multiple times already, I decided it was time to migrate our Gitlab instance to a dedicated domain and VM. (cf Migration of our Gitlab instance).

I’ll to that migration today, I expect it to take all my time.


Yesterday was pretty intense, I basically spend my day migrating our Gitlab instance (cf Migration of our Gitlab instance).

Today, I will:


Yesterday, I was working from a friend’s place. I managed to do everything I planned. I also started looking into how to mirror the Free Music Archive, and started to work on for that purpose.

Today, I’ll continue working on that.


Yesterday, I pushed the first fully functional iteration of, which anyone can now use to bulk download content from

I tried it for real, with a first set of 25Gb of music files (~300 albums) coming from the Free Music Archive collection, and well it worked.

I then launched a second download task for ~2000 additional albums, which completed successfully in a few hours, and launched another one for an additional 4000 albums before going to sleep. This last one is finished, and we currently have 383GB of music, with ~6500 albums, under an open license, that will be imported on today for everyone to enjoy.

This library is public and available for everyone to consume, either by following it from their own funkwhale instance ( or directly by browsing and listen to available content :slight_smile:

Today, once the import is finished, I’ll be back working on the moderation tools :wink:


Yesterday, I continued working on the moderation tools. Things are going well (though slowly), and I’m starting to work on the UI for instance-level blocks / mute.

I’d stick on that for today!


Friday, I continued working on the moderation tools, and I’m going to take a break today and switch to a different feature :wink: I think I found a way to make embeding funkwhale content in external websites possible (Funkwhale architecture is a bit different from traditionnal projects) and I want to hack on that :slight_smile:


Oops, looks like I forgot posting my log this morning. Yesterday, I’ve worked on embedding Funkwhale content on other sites. See my progress.

I’ll continue working on that today :slight_smile:


Yesterday, I continued to work on the embed widget and I’m near done. I’d like finish and deploy that on today, but since it will require some slight changes in the nginx configuration that is incompatible with earlier releases, I’ll also use this occasion to fix a longstanding issue with our documentation deployment process:

the docs deployed at are built from the develop branch. When we push new features for the next releases, we push them with the relevant documentation on the develop branch which is then deployed at However, this creates strange issues for people that are in the process of deploying an instance because they are trying to deploy a tagged release using the next release documentation.

I’m going to fix that today and deploy only the stable documentation on


Yesterday, I’ve merged the big PR about embeds / previews (the link contain a detailed explanation about technical choices, read if you’re interested :slight_smile:

I’ve also fixed a few annoying bugs and started working on may small improvements that should reduce the size of Funkwhale’s web UI and bandwidth usage (thus improving performance for clients).

I’ll continue working on that today, and fix small bugs.


Yesterday, I merged the MR I mentionned about performance improvements and tested it on Open.Audio (which is back, by the way), and my own instance. The improvemnts are really perceptible, we’re talking about a bandwidth usage divided by 3 or 4 and a reduction of our javacript files size by 40% which makes the whole app faster, especially on mobile devices.

Today, I’m not going to work on Funkwhale, apart from publishing the weekly log entry :slight_smile:

Since I’ll be on vacation today and until january 2, you shouldn’t find any new entry here in the meantime (unless I have time to kill).

See you soon!


Allright, I’m back!

While I was in vacation, I did not work much in Funkwhale (that’s the point of vacations :p) but I did complete a few tickets / Merge requests. Moving domains to a dedicated database table, and build a basic dashboard to browse each domain information was the biggest one, and it was also needed to prepare for future moderation tools.

Today, I’ll be catching up on various sides: Gitlab comments and activity, forum topics, support, emails, mentions, etc. I also plan to finish organizing the next Funkwhale Sync (at least pick the date / time slot). I’ll probably work on a simple ticket to get back to development work!


Yesterday was the occasion to catch up in many place during the morning. During the afternoon, I tackled 3 small issues for the 0.18 release.

Today, I’m going to freeze the time slot for Funkwhale Sync, and continue working on moderation tools.


Yesterday, I worked on an admin interface to browse and manage accounts (remote and local), which was a needed step for more advanced moderation tools, and also fixed a few performance issues by optimizing some SQL queries.

Today, I will work on small issues and install a Mumble server for the Funkwhale Sync, on Sunday.


Friday, I did not work on small issues like I initially planned, and focused on the moderation tools. In the afternoon, I set up a Mumble server for the project.

Today, I’m up quite early, and I’ll continue to work on the moderation tools. I will also publish the meeting notes and the recording of what we’ve discussed yesterday during the Sync :slight_smile:


Yesterday, I spend roughly half of my day working on the moderation tools, and the other to do some project management (write meeting notes, review some contributions, write some forum posts, etc.)

I expect today to be very similar, I have a few interesting contributions to review, and I’d like to reach an important milestone for the moderation tools.


Yesterday, I did not code and focused on project management. I also installed, which will allow contributors to collaboratively edit documents.

Today, I’d like to finish a pending merge request, and review remaining tickets for the 0.18 release.