Local note encryption - community bonding + week 1

Hey everyone, I'm Keshav, working on local note encryption for Joplin this GSoC. I'm planning to drop a short update here every Friday so anyone curious can follow along without digging through commits.

Community bonding

This stretch was mostly about getting properly settled in. Early on there was a group call where the mentors and students all introduced themselves, which was a nice way to get a feel for who's around and what everyone's working on. I also had a one-on-one with mrjo that was more about getting to know each other, and it was a really easy, warm convo that set a good tone for the months ahead.

After that I went back through my proposal and refined it, reread the relevant parts of the codebase, and put together a clearer weekly plan along with a risk assessment so I'd know ahead of time where things could get tricky. A good chunk of bonding was back-and-forth with mrjo on all of this, talking through the design and tightening up the approach until it felt solid.

His feedback during this part was a big help. Having someone to sanity-check my thinking early made the whole thing feel a lot less daunting, and a few short conversations saved me from going down wrong paths more than once.

By the end of bonding I had a clear picture of where my first changes needed to land and why, which felt good going into actual work.

Week 1

The first piece of real code went in: a database migration that adds some new schema fields for encryption metadata PR #15557. Nothing user-facing yet, but it's the groundwork everything else sits on, so I wanted to get it right rather than fast.

The part that taught me the most was testing it. I set up two separate profiles syncing through the filesystem and pushed notes and an attachment back and forth between them, just to confirm the new fields behave correctly and sync stays clean. Watching it round-trip properly across profiles was genuinely satisfying. I also hit a couple of build quirks along the way that ate some time, but figuring those out left me understanding the dev setup much better than before.

mrjo's steady feedback through the week kept things moving smoothly, and I'm heading into week 2 with good momentum.

That's it for now. More next Friday :slight_smile:

If you want the longer day-by-day version, I keep notes here: Local note encryption / Keshav

8 Likes