Please describe your proposed solution.
Since many organizations are embracing the containerized approach to application development, our approaches leverage kubernetes and docker.
The development solution is a docker-compose config. It gives the developer a single line command that can be used to standup blockfrost. While being similar to the production config, this docker-compose approach provides direct access to the all deployed resources and a quick feedback loop.
The production solution is a helm chart, which can be deployed on a kubernetes cluster. This helm chart has an out-of-the-box configuration so developers can get started quickly. However it also accepts a variety of parameters so the deployment can be customized for their specific environment/use case. It also has settings to enable the deployment to scale with increased usage.
How does your proposed solution address the challenge and what benefits will this bring to the Cardano ecosystem?
We built and tested a solution we'd like to share with the community that decreases the mean time to deployment, increases operational consistency, and lowers the effort required for developers to start using Blockfrost. The docker-compose aspect of our solution allows a developer to deploy and develop against a local Blockfrost instance in just a few seconds. Developers can use this to for new POC projects or features dependent on Blockfrost without having to interact with the cloud provider or setup an account.
The helm/kubernetes deployment option gives teams the ability to use a self hosted Blockfrost resource instead of the cloud hosted one. This gives teams more flexibility, reduces their dependence on a centralized third party, and makes it easier to stand up staging or per-production instances of their projects. Additionally, our configuration uses best practices which helps teams deploy robust and stable instances by default.
The project which result was to create easy deployable instance of blockfrost and relevant sub-services (like submit-api) has been used with success as part of our internal applications. As a company we solved engineering problems we faced thanks to this. We strongly believe that solution we prepared can be used in similar cases by other.
On of the priority of each company, not only our, is to build customers trust by delivering proven and reliable solutions. Including blockfrost into our stack we sign the project by betting our reputation. It’s the highest level of trust we can provide.
How do you intend to measure the success of your project?
Success will be measured by both internal and external indicators. Internally, we will track the impact on our own projects, monitoring uptime, resiliency, and performance. Additionally, we will measure the reduction in Mean-Time-to-Deployment (MTTM) for new projects relying on Blockfrost.
Externally, we will gauge success through community engagement on our Github repository. Metrics such as pull requests, stars/follows, and low issue reports will indicate value and adoption by the community.
These measures will reflect the benefits our project brings to Cardano's productivity and growth in the short and long term. By continuously evaluating and refining our solutions based on these metrics, we aim to maximize their impact on the Cardano ecosystem.
Please describe your plans to share the outputs and results of your project?
We have already published blog posts on our website and Medium.com, explaining the benefits of our solution. Our open-source Github repository allows for community feedback. We will continue documenting our experiences, sharing examples, and incorporating user feedback into further development. Our goal is to engage the Cardano community, disseminate knowledge, and contribute to ongoing research and development activities.