Play the Dragon Ball Super Card game? Then you should check out DeckPlanet, a high-performance one-stop platform built from the ground up to support players, local shops, and anyone interested in this popular game. The platform provides gamers with a user-friendly deck building tool, along with information, tips, and tricks to help them optimize gameplay.
Funded primarily by user donations, DeckPlanet was the brainstorm of Tristan Jacobs, an enthusiastic developer and player of Dragon Ball Super based in Amsterdam. Tristan designed the platform during the global pandemic lockdowns so that he and his friends would have a better solution for deckbuilding than the slow, “bare bones” websites that were available at the time. However, DeckPlanet’s popularity grew organically once word got out, effectively putting the other websites out of business.
Today, roughly 15,000 people worldwide use the feature-packed, beautifully designed platform – with 75% or more using it monthly. While the service is free, Tristan is in the process of developing a premium subscription-based service that would unlock additional features and functionalities for serious gamers.
But in the process of developing DeckPlanet, Tristan encountered performance roadblocks, and he set out to find an alternative solution for connecting to the database that powered the platform. His mission to boost performance while keeping costs low led him to Directus.
Speed and Cost-Efficiency Were Crucial
When DeckPlanet was a small website with few users, performance and cost were non-issues. However, as more people signed up, Tristan ran into performance issues that impacted the user experience. “We built the platform using a beta version of Strapi,” Tristan said. “It was a fine tool for certain use cases and had some good APIs, but it wasn’t developer-friendly.”
According to Tristan, query response times with Strapi were far too slow – a data set of about 5,000 cards took 30 seconds to complete. “In the world of databases, 5,000 records isn’t much, so it should have been relatively fast,” he said.
Tristan is a JavaScript developer, so he wanted to avoid moving toward a PHP framework. Since the site runs on donations, cost was a key consideration. “The trick was providing the necessary performance while keeping costs down,” he said.
In his research, Tristan came across a Tweet from a former classmate, Rijk van Zanten, Co-founder and CTO at Directus. “I asked a bit around in colleague circles about Directus and decided to try it out. The performance is impressive. I was able to upload 5,000 users with a single request in less than a second.” After that, moving to Directus was a no-brainer, said Tristan. “It took me about three days to complete the full migration from Strapi to Directus.”
Easy Setup with No Impact on the Database
Tristan uses ReactJS and connects that frontend to a PostgreSQL database via the Directus REST and GraphQL APIs. The site is hosted on DigitalOcean and Netlify, and Tristan uses Google Cloud for file storage to minimize the cost of storing the massive library of card images. Directus file storage handles all other content, including blog posts, screenshots, and other files.
For Tristan, the best thing about Directus is that it wraps around the database without influencing it. “With Strapi, you have to set up your database from scratch, but Directus doesn’t get in the way of your data,” he said.
Tristan loves the Directus no-code app and interface and the platform’s ease of use. “It was intuitive and easy to learn,” he said. “I love that Directus is completely open source, as well, because that means I can contribute to the platform.
Tristan appreciates the ability to set roles and permissions at a granular level within Directus so that users see only their content and data. Additionally, the filtering system enables him to fetch data in one collection via relationships in another – a feature missing from other solutions. “I also really like the new Flows feature, which is in the latest release,” he said. “I plan to implement those more moving forward.”
Fast, Feature-rich Site Outperforms Competitors
Thanks to Directus, Tristan was able to implement advanced features that set DeckPlanet apart from competing solutions:
Several components that make the site interactive and easy to navigate. Live data filtering enables updates in real-time. Instead of downloading the data into a browser state for display, Directus acts as the primary source of truth, and the data refreshes instantly based on changes made on the server. Players can use a comments section to comment on other players’ decks, post videos, and share tips and ideas. “Directus allowed us to create a very high-performing platform with features our competitors could not offer,” he said.
The First Choice for Any Use Case
Since migrating DeckPlanet to Directus, Tristan and his crew of volunteer developers have not only noticed dramatic performance increases, they’ve saved money. Before the migration, Tristan was constantly upgrading his account with DigitalOcean to accommodate more traffic. “Eventually, I was paying 75 euros per month,” he said. “With Directus, we’ve slashed server costs to 25 euros per month, including my Google Cloud bill,” he said. “We’re spending about 50% less than we did with Strapi.”
With these significant performance gains and cost savings, Tristan plans to use Directus in future projects whenever possible. “I will always try to use Directus first,” he said. “It’s a flexible, powerful, and open platform that I believe will work for up to 90% of the projects I take on.”