completed impact proposal

MLabs - CTL Blockfrost Backend

$50,000.00 Received
$50,000.00 Requested
Ideascale logo View on ideascale
Community Review Results (1 reviewers)
Impact / Alignment
Feasibility
Auditability
Solution

MLabs has been working with IOG to build the Cardano Transaction Library (CTL), a framework for building Cardano transactions. We propose adding Blockfrost as an available query layer within CTL.

Problem:

Making Blockfrost easily accessible to dApp developers as the default, regardless of all other technical choices, will help Blockfrost adoption grow first and foremost.

Yes Votes:
₳ 226,478,708
No Votes:
₳ 22,337,961
Votes Cast:
617

Équipe

This proposal was approved and funded by the Cardano Community via Project F9: Building (on) Blockfrost Catalyst funding round.

  • Video cover image

\N- [IMPACT\N] Veuillez décrire la solution que vous proposez.

Marché

Développeurs d'applications, développeurs de statistiques hors chaîne, scientifiques des données.

Espace Problème

Blockfrost est utilisé par de nombreuses applications numériques comme " couche d'interrogation ", pour inspecter l'état de la blockchain Cardano et effectuer certaines actions importantes telles que la soumission de transactions et l'estimation des frais. D'autres services peuvent être utilisés à cette fin, notamment Ogmios, Koios et Carp.

La Cardano-Transaction-Library est une boîte à outils permettant aux développeurs de créer des transactions pour la blockchain Cardano. Ayant atteint la version 1.0 en juin 2022 et ayant déjà été adoptée sur la chaîne par plusieurs applications industrielles à grande échelle, le CTL utilise actuellement Ogmios pour combler cette lacune. Ogmios est une solution auto-hébergée, et certaines fonctionnalités disponibles sur Blockfrost ne le sont pas sur Ogmios, ce qui nécessite une infrastructure supplémentaire. En fait, un utilisateur du CTL devra exécuter Ogmios, un nœud Cardano et d'autres utilitaires sur un serveur pour réussir à établir des transactions aujourd'hui.

Bien que ce niveau d'infrastructure permette un système décentralisable et entièrement open-source, la configuration et la maintenance d'un serveur prennent du temps et [personne ne veut gérer son propre serveur] (https://notes). alexkehayias.com/nobody-wants-to-run-their-own-server/).

Une alternative claire consiste à autoriser Blockfrost en tant que service backend alternatif. Au lieu de gérer leurs propres serveurs, les utilisateurs fournissent une clé API Blockfrost et toute autre configuration requise. Cependant, la maintenance de leur serveur peut être considérablement réduite ou éliminée. En raison de sa relative facilité d'utilisation, on s'attend à ce que de nombreux développeurs utilisent le service Blockfrost par défaut pendant le développement et la production.

Veuillez décrire comment votre solution proposée répondra au défi dans lequel vous l'avez soumise.

NOTRE PROPOSITION

MLabs souhaite accélérer le développement d'un backend Blockfrost pour [CTL] (https://cardano.ideascale.com/c/idea/396607), en simplifiant l'infrastructure nécessaire pour faire fonctionner CTL et en permettant aux développeurs de profiter de la vitesse et de la fiabilité de Blockfrost. Cela peut se faire sans nécessiter de "code glue" entre l'intégration de l'API Blockfrost et la cardano-serialization-lib.

Au lieu de cela, les développeurs seront en mesure d'écrire du code déclaratif de haut niveau, qui décrit comment construire une transaction d'une manière inspirée par le PAB. Cela permet d'utiliser au mieux la formation existante des cours Plutus Pioneer tout en s'appuyant sur un ensemble d'outils prêts à être utilisés en production.

En faisant de Blockfrost une option disponible dans le cadre de CTL, nous nous attendons à ce que davantage de développeurs testent et finalement utilisent Blockfrost efficacement pour de nombreux projets à venir.

Quels sont les principaux risques qui pourraient vous empêcher de mener à bien le projet et veuillez expliquer comment vous allez atténuer chaque risque ?

Notre Cardano-Tx-Lib, qui a reçu un financement dans le cadre du Fonds 8, a déjà accompli la majorité des étapes décrites dans [la proposition] (https://cardano.ideascale.com/c/idea/396607). En tant que telle, la proposition actuelle est décidément à faible risque car elle se concentre sur l'intégration d'un backend, et des intégrations similaires ont déjà été réalisées.

Veuillez fournir un plan détaillé, comprenant un calendrier et des étapes clés pour la réalisation de votre proposition.

3 Mois:

  • Compléter une version de CTL qui peut utiliser Blockfrost pour ses transactions.
  • Présenter un dApp capable de basculer facilement entre les options Ogmios et Blockfrost dans CTL.

**6 mois : **

  • Achever les tests de Blockfrost et les plans de fiabilité pour garantir une expérience positive aux utilisateurs.

  • Rédigez un rapport sur l'expérience utilisateur du premier dApp à adopter CTL en utilisant Blockfrost et répondez aux premiers commentaires.

    \N- [FEASIBILITÉ] Veuillez fournir une ventilation détaillée du budget.

Heures impliquées : 625

Total : 50 000

Répartition:

Configurer les appels API de base de Blockfrost pour répondre aux besoins : 105

API utilisateur : Configurer Blockfrost : 40

API utilisateur : Utilisation de Blockfrost de manière interchangeable avec le runtime par défaut : 40

Fonctions de conversion de format : 65

Test : 165

Démo &amp ; Polissage : 110

Sous-total : 525

Modifier le budget : 100

Durée totale : 625 heures

Coût total : 50 000

\N- [FEASIBILITÉ] Veuillez fournir des détails sur les personnes qui travailleront sur le projet.

MLabs

MLabs est rapidement devenue l'une des principales sociétés de développement de l'écosystème Cardano. Nous sommes un partenaire Plutus d'IOG et nous travaillons régulièrement avec IOG pour développer la blockchain et l'écosystème Cardano. Notre équipe est composée de développeurs talentueux qui ont aidé à construire des projets communautaires tels que :

  • Liqwid
  • SundaeSwap
  • Optim
  • Beaucoup d'autres

Grâce à notre travail sur des projets en phase de démarrage, nous disposons de l'un des plus grands groupes de développeurs Haskell/Plutus de la communauté. De plus, MLabs a la capacité de conceptualiser et de livrer des applications avancées en Plutus et sur Cardano.

Site web : <u>https://mlabs.city/</u>

[FEASIBILITÉ] Si vous êtes financé, retournerez-vous à Catalyst lors d'un tour ultérieur pour un financement supplémentaire ? Veuillez expliquer pourquoi / pourquoi pas.

Les fonds désignés devraient être suffisants pour atteindre nos objectifs. Nous n'avons pas actuellement l'intention de faire une nouvelle demande sous le même projet pour des tours ultérieurs de Catalyst.

Veuillez décrire ce que vous allez mesurer pour suivre les progrès de votre projet, et comment vous allez les mesurer ?

Nous allons mesurer :

  • le nombre de fonctionnalités mises en œuvre
  • le nombre de problèmes découverts et résolus
  • la facilité d'utilisation du backend Blockfrost de CTL pour les projets qui l'ont incorporé
  • le nombre de contributeurs qui ajoutent des données au dépôt GitHub
  • le nombre de projets Cardano qui s'appuient sur CTL
  • la perception générale du projet dans l'espace

Nous attendons une croissance/des résultats positifs dans ces domaines et nous nous engageons à respecter les étapes que nous avons établies tout au long de cette proposition.

\N- [AUDITABILITE\N] A quoi ressemble le succès de ce projet ?

Impact du projet : élevé

1) Accessibilité: En mettant Blockfrost à la disposition des utilisateurs de frameworks, tous les utilisateurs de ces frameworks auront la possibilité de tester et d'utiliser Blockfrost facilement de bout en bout pour savoir très rapidement si Blockfrost leur convient.

2) Fournir une boîte à outils concise : En rationalisant l'API de Blockfrost, nous réduisons la nécessité pour les développeurs de comprendre et d'apprendre toute l'API, et offrons plutôt un moyen intuitif d'utiliser les outils fournis par Blockfrost pour ses cas d'utilisation les plus importants : les opérations de contrats intelligents et la collecte de statistiques hors chaîne.

MLabs rendra compte des progrès et des étapes à la communauté Cardano directement, publiera des vidéos de démonstration sur les médias sociaux et travaillera avec les partenaires d'adoption pour fournir des rapports d'expérience lors de l'utilisation des nouvelles fonctionnalités.

Veuillez indiquer si cette proposition est la continuation d'un projet précédemment financé dans Catalyst ou un projet entièrement nouveau.

Il s'agit d'une nouvelle proposition.

Avis des conseillers communautaires (1)

Comments

Monthly Reports

Following the Fund9 voting results, MLabs organized a roadmap for integrating Blockfrost endpoints into the API interface of CTL. This piggybacked on early exploratory work we had already done when originally composing our original Fund9 proposal. The timeline identified several key early goals:

  • Make Contract runtime and ConfigParams parametrizable with a backend.
  • Identify core functionality needed to support multiple backends
  • Move every core query layer function to a handle (as in handle pattern)
  • Move every Ogmios query function that is not in the core set to a separate namespace (Contract.Ogmios)
  • Implement stubs for Blockfrost functions in the "core" handle Issues on the CTL repo were added to organize development here, and an initial issue was assigned.

That said, the main focus since project initialization has revolved around the broader architecture of the CTL project and untying it from a particular query layer. Specifically, some broad changes are needed before we can begin supplementing our reliance on Ogmios, the only chain indexer supported up until this point. Work along these lines included:

  • extending the TxConstraints API to support staking operations (stake credential registration, pool registration, etc)
  • extending CTL types to optionally accept staking credentials
  • add constraints that apply these changes to transactions
  • update the Contract interface to support these changes as well as inline datums.

And similar issues are highlighted throughout the CTL repo.

Disbursed to Date
$50,000
Status
Still in progress
Completion Target
4. After 6 months
Comments 0

Login or Register to leave a comment!

The CTL has undergone some moderate reconfigurations over the last two months. Part of these efforts involved complications stemming from a separate query dependency, while others involved changes to make the project backend more generalizable. For instance, developers made progress:

  • considering workarounds for how Blockfrost handles UTXO support
  • designing around Blockfrost's era summaries
  • integrating challenges stemming from changes on the Blockfrost end aiming at integrating CIP25

And other issues.

Perhaps more prominent, however, developers focused on configuring the Contract backend. Changes here were probably the most involved over the last month, and they are important in lay grounding for further Blockfrost integration.

Disbursed to Date
$50,000
Status
Still in progress
Completion Target
3. In the next 6 months
Comments 0

Login or Register to leave a comment!

close

Playlist

  • EP2: epoch_length

    Authored by: Darlington Kofa

    3 min 24 s
    Darlington Kofa
  • EP1: 'd' parameter

    Authored by: Darlington Kofa

    4 min 3 s
    Darlington Kofa
  • EP3: key_deposit

    Authored by: Darlington Kofa

    3 min 48 s
    Darlington Kofa
  • EP4: epoch_no

    Authored by: Darlington Kofa

    2 min 16 s
    Darlington Kofa
  • EP5: max_block_size

    Authored by: Darlington Kofa

    3 min 14 s
    Darlington Kofa
  • EP6: pool_deposit

    Authored by: Darlington Kofa

    3 min 19 s
    Darlington Kofa
  • EP7: max_tx_size

    Authored by: Darlington Kofa

    4 min 59 s
    Darlington Kofa
0:00
/
~0:00