GSoC 2025 Blog — Week 1: Starting the Project

GSoC 2025 Blog — Starting the Project

Kicking Things Off

The first weeks of GSoC were all about getting familiar with the project, understanding its current state, and laying the groundwork for upcoming work. We began by listing the key features we plan to implement and prioritizing them based on impact and feasibility.

Cleaning Up the Repo

Before diving into development, we focused on improving the current state of the codebase:

  • Filtered through existing PRs.
  • Merged those that were ready.
  • Closed duplicates or low-quality submissions.
  • Requested changes when necessary.

This cleanup helped fix some bugs and made the repository more maintainable moving forward.

CI Enhancements

To ensure future contributions are smoother, we improved the Continuous Integration setup:

  • Added conditional CI jobs to run frontend or backend tests only when their respective files are changed.
  • Introduced Codecov comments to show coverage of newly added lines, making it easier to track test quality in PRs.

These changes should streamline reviews and reduce unnecessary CI runs.

Early Contributions

I also started contributing new features and improvements:

  • Integrated ExoMol and NIST databases into the backend.

While integrating the NIST database, I encountered a tricky error related to the RADIS package:

No databank named nist in `/home/mohy/radis.json`. Available databanks: […]

It turned out that the version of RADIS in the was outdated and didn’t recognize the `nist` databank. This was fixed by upgrading RADIS:

pip install — upgrade radis

Then, another error popped up related to pandas:

No such keys(s): 'future.no_silent_downcasting'

This was caused by version incompatibility, which was resolved by upgrading pandas:

pip install — upgrade pandas

After these upgrades, the databases worked correctly on the backend. The frontend integration and performance optimizations (e.g., caching) are next on my list.

  • Increased backend test coverage, especially for newly added endpoints and database integrations.

That’s a wrap for the first weeks! It’s been a productive start, and I’m excited to keep building and learning in the coming weeks. Stay tuned for more updates!