DEV Community

Cover image for Luminary: Week 3 - Bringing it to Life
Isaac Shosanya
Isaac Shosanya

Posted on

Luminary: Week 3 - Bringing it to Life

So welcome back to my weekly update on the luminary project if you don't know what luminary is well, probably go read my last two articles but for those of you too lazy for that (side-eye). Luminary is an open source platform with it's main purpose to bring women and their accomplishments to the spotlight, it's a directory of the contributions and achievements of exceptional women. Now that we are up to speed into the thick of it we go ( who remembers that song from the movie )

My Contributions This Week

This week was honestly a tough one for me. I had to step in and handle most of the backend work since the backend lead was dealing with some personal issues. It wasn’t something I felt fully prepared for at first, but I stepped up and made sure things kept moving regardless.

Here’s what I worked on:

  1. Remodeled the database schema to better support the nomination workflow and improve overall structure.
  2. Implemented authentication and authorization flows for admins, covering actions like approving, rejecting, and suspending nominations.
  3. Built out the nomination endpoints, handling the full flow from submission to admin review.
  4. Developed an upload endpoint to support image uploads as evidence for nominations.
  5. Reviewed and merged pull requests from other team members to keep development moving forward.

It was a stretch week for me, but also one where I had to take ownership and deliver beyond what I initially thought I could handle.

Technical Decisions I Made This Week

I had a number of decisions to stew about through out this week. The main ones were around whether to stick with Supabase or move to a dedicated PostgreSQL instance, and whether to use Supabase Storage or Cloudinary for handling media uploads, along with a few smaller things along the way.

For the database, I decided to stick with Supabase. The biggest factor here was speed. Using a managed service allowed us to keep things moving without getting bogged down setting up and maintaining individual pieces of infrastructure. At this stage of the project, getting things delivered matters more than finding the absolute optimal architecture. That said, the way things are structured right now still gives us the flexibility to move to a dedicated PostgreSQL instance later if and when we outgrow Supabase.

For media storage, I went with Supabase Storage (buckets) over Cloudinary. This was mostly a decision driven by continuity and time constraints. Since we were already within the Supabase ecosystem, it made more sense to avoid introducing another external dependency just for uploads, especially with tight deadlines. It kept the setup simpler and reduced the overhead of managing multiple services.

Overall, most of the decisions this week came down to a balance between speed, simplicity, and leaving room to scale when necessary.

Reflections

This week hasn’t really been my best, if I’m being honest. I’m proud of what I was able to get done and how far I pushed the project forward, but at the same time, I can’t shake the feeling that I could have done more and left things in a much better place.

That said, getting the project into a stable, workable state was a big win for the team, especially given the circumstances. Stepping up and making sure things didn’t stall is something I don’t take lightly, and I’m proud I was able to contribute to that.

Shout-out to the Team

Finally, a huge shout-out to my teammates. This project — and this article — would not be complete without their contributions.

Product Lead 1: Ramnan Ramyil
Product Lead 2: Awoyemi Abiola
People Manager: Emmanuel Dania
Engineering Lead: Daniel Chisom
Design Lead: Michael Omonedo
Volunteer (UI/UX): Ariyo Taiwo

You can follow the development progress here: GitHub repo

Check out the live site here: luminary

Top comments (0)