Skip to content

DbSchemaLibrary Project Update #3


Michael Salim



Good news! DbSchemaLibrary is now out for public release 🎉

This is the 3rd project update for DbSchemaLibrary. If you missed the first two, you can read them here.

#1 Public Release

5 months in the making, and hundreds of data point processing later, it’s finally here. DbSchemaLibrary is now ready and is released to the public. However, this is only the beginning. With a stable base, I can now work on improving the platform along with adding more quality data.

To celebrate the launch of DbSchemaLibrary, full lifetime access is available at 50% off for a limited time only. Get it now before it’s too late!

#2 Platform improvements

The past month has been a busy one. Throughout the beta, I received various questions and confusion about how some things work. Most of them are now tweaked to make them more intuitive. I have also added some features to make the data easier to understand. Below are some details on what has changed.

#2.1 ERD decluttering

The ERD view can be difficult to parse — especially when the schema has a lot of tables. In this release, I have excluded tables that do not have any foreign keys from this view. This removes a lot of clutter and makes the schema much easier to understand.

Alongside this change, I have fixed a bug that causes some many-to-many tables to be hidden.

#2.2 Separated tabs + New enum & modules tab


At the core of DbSchemaLibrary is the DDL of each schema. Much of the value that DbSchemaLibrary offers is extracting information from this data and presenting various insights from it.

All this data originally resulted in a cluttered schema page with a lot of condensed information. To make it more manageable, I have separated the page into various tabs. Each with its own data.

You will also see 2 new tabs in this section. One tab for showing the list of enums in the schema. And another tab to show the list of tables in a module. More about the module tab later.

2.3 Browse page

A simple but powerful addition is the Browse page. This page allows you to search through our schema. It is currently in its early stage. However, this page will eventually allow you to filter through various metadata like table & column names. You will also be able to sort schemas based on different parameters.

#2.4 Performance speedup

If you opened the schema for GitLab during the beta, you’ll know that it has an absurd amount of tables. 582 of them! Understandably, it took some time to load everything. This release improved the performance of big schemas, making it faster to load and navigate.

#2.5 Various minor improvements

There are many smaller changes that aren’t substantial enough to have their own section. For example, there is now an icon to navigate between foreign keys. I have also added links to the original project. Additionally, there is now a Legend to indicate what icons mean. Alternatively, you can hover at them to see what they indicate.

These changes aren’t much by themselves. But each of them builds on top of the other to make a better experience.

#3 Completed Module Data

All the modules have now been processed, each with its own identified patterns. These insights are crucial and are the reason why DbSchemaLibrary took a while to reach this point.

One common feedback from the beta period was that modules did not show enough data regarding their schema. Since then, I have spent a significant amount of time tagging the table that connects to each module. This took a LOT of time. In total, I tagged a total of 2736 tables.

It was a tedious process but it was worth it. You are now able to see the tables that connect to each module. This connection helps explain how a certain schema implements a feature/module. In the future, I aim to make modules even easier to parse.

#4 Future plans


Coming in the following months are several important milestones. A big one is the inclusion of industry metadata. This will make it easier to find a schema in a similar industry as yours. Similarly, I am planning to improve the browse page mentioned in section 2.3.

Following that, I am always looking to insert more data into DbSchemaLibrary. So stay tuned for that!

#5 Thank you to all beta testers!

All your feedback has been very helpful and I appreciated each of them. DbSchemaLibrary would be a worse product without it. I read every single one of them so thank you for your thoughts! In fact, you can reply to this email and I will receive it in my inbox. Feel free to say hi if you’d like!

#6 Get it now – 50% percent off 🤩

For a limited time, DbSchemaLibrary is available for half the price. Get it now before the deal ends. This is the lowest it will ever be. Make sure you don’t miss it and again, thank you for following DbSchemaLibrary!