DEV Community

Cover image for My passion for the world of graph databases
Michal Štefaňák
Michal Štefaňák

Posted on

My passion for the world of graph databases

The world of programming has always fascinated me and with hand in hand goes data and databases. I used mostly relational databases in my life but when I discovered graph database my perspective changed. There's something truly special about graph databases. They offer a unique way to store data, represent and explore connections, which makes them perfect for dynamically evolving systems. That's why I'm incredibly excited to share my journey into this dynamic field!


This technology area is still developing and that opened up opportunities for me to contribute. My first major contribution is a PHP Bolt driver. This might sound technical, but it essentially allows your php backend to communicate seamlessly with any graph database that uses the Bolt protocol. Think of it as a bridge between your code and the database, enabling smooth communication. My goal? To create a low-level library that supports all Bolt protocol versions and stays up-to-date with the latest specifications. This ensures your code can seamlessly interact with evolving graph database technologies. This opened a door for others and php community can now appreciate multiple tools.

Driver is available at Bolt. Don't be confused by neo4j-php organization. Neo4j created GitHub organization for php community, but they do not provide official support. It serves as hub and you can find more libraries there.

This dedication for staying relevant earned the project significant recognition within the community. I was thrilled to receive the Graphie Award as MVP in the ecosystems, highlighting the driver's impact on developers working with graph databases.


I didn't stop there. Graph databases hold immense potential, but the Cypher query language can be a barrier for those new to the field. I wanted to make graph databases more approachable, even for those without these knowledges. Tool which will ease transition for everybody who wants to manage and administer data in graph database. I was thinking about it for few years. But then it finally happened and cypherGUI was born! This user-friendly administration tool provides a graphical interface for managing your data in graph database, specifically designed to demystify graph databases for everyone. You can view nodes, relationships, and properties – all neatly organized in tables. Plus, you can create, edit, and delete data with ease, even search across all properties. But cypherGUI goes beyond the basics. It is showing you executed cypher queries what gives a opportunity to learn it. Of course it allows you to write own cypher queries and see the results in various formats, including tables, JSON, and even in the natural way of graph databases which is a visual graph!

Project is available at cypherGUI. Recently I spent many hours on adding new features and now it gaves even more mature impression.


My passion for graph databases extends beyond creating tools. I'm actively involved in the community, collaborating with inspiring folks at Neo4j and Memgraph. We exchange ideas, provide feedback, and offer support – it's a fantastic way to stay on the cutting edge of this technology. Unfortunately I haven't yet connected with the Amazon Neptune team which means I haven't been able to provide test coverage for Neptune graph database just yet, but I'm hopeful for future collaborations!

Speaking of sharing my knowledge, I've had the incredible opportunity to present my work at conferences in Berlin, Zagreb, and even online (ex. Nodes 22, Neo4j Live)! These experiences have been incredibly rewarding, allowing me to connect with other like-minded individuals and share my enthusiasm for graph databases.


As you can see my journey in this fascinating world is going on for some time and I believe is far from over. I'm constantly learning, building and improving my tools. If you share my excitement for graph databases, I'd be thrilled for your support! My projects are available as opensource and I will appreciate if you consider giving my projects a star on GitHub, or if you're feeling generous, a donation would mean a lot to me. Every bit of support helps me to keep working on these projects.

ko-fi

Top comments (0)