## TLDR
This week I finished the code for the updates' database, and the PR got merged.
I started working on the `GetLightClientUpdatesByRange` API to change it and have it use the new db.
I also started a new project called Selene, a simple light client in Dart. might be useful for building Flutter applications.
## Recap of last week
Last week I continued the work on the light client updates database. Mostly had design discussions with Radek.
The outcome was that the DB should just return any updates that it has in a given period, and the APIs should decide what to return to the user based on the result that they get from the DB.
## What happened this week
The DB PR got merged this week, so we now have a DB to use. the next two steps are to:
- Fix the API to return some results based on the DB response.
- Save the updates as the node receives new blocks.
I started the work on the first one for now. there is a bit of a challenge on how to figure out what list of updates are valid and which ones are not.
Since the start of this project, I have wanted to develop a simple light client, to be able to understand the sync-protocol and the light client concept itself better. So I finally decided to start this week. I started writing one in Dart, because Flutter applications can just import and use it, allowing trust-less dApps/wallets to be developed in Dart/Flutter using Selene (yes the name is a rip off of Helios). I'm doing this project as part of the EthGlobal's EthOnline 2024 hackathon, just to have a deadline that I might stick to.
## What's next
For the next week I will focus on the `GetLightClientUpdatesByRange` API to have it read from the DB, and will work on Selene in parallel as well.
## Other notes
- [Selene](https://github.com/Inspector-Butters/selene)
- [`GetLightClientUpdatesByRange`](https://ethereum.github.io/beacon-APIs/#/Beacon/getLightClientUpdatesByRange)