Proposal: Data Integration Infrastructure

Proposal to create infrastructure for all the content produced across the DAO to be accessible via a single service that is easy to plug in anywhere (mentioned further as Content Gateway).

Title: Data Integration Infrastructure
Authors: @0xNSHuman
Squad: @0xNSHuman, @addamsson, @eddiekollar.
Date Created: 9/20/2021
Date Posted: 9/25/2021

SUMMARY

In Season 1, BanklessDAO has proven to be an extremely resource-efficient entity, producing competitive products for the economy of the future, and a trusted source of knowledge for many to rely on when it comes to navigating the waters of the decentralized world.

Naturally, most of the projects that made this possible were autonomous to a large degree. This was an essential part of the evolution, and the fact that those teams of passionate individuals managed to organize their talent, find the product-market fit, and start shipping, amazed and inspired the next generation of the DAO newcomers such as myself.

We are now seeing the opportunity in Season 2 to have a brand new class of products emerged — those built on top of the existing progress, leveraging everything that’s already being produced by the DAO and multiplying the value of these previously standalone products by having them all delivered to the users in one unified interface or/and ecosystem.


BanklessDAO mobile app concept proposed by @0xNSHuman

However, this evolution path presents new challenges for the organization, such as:

  • Standardization of practices, tools and policies utilized across the guilds and projects. This is something that’s already being addressed, and there are relatively new roles in the organization dedicated to support the efforts of others.
  • Infrastructure that connects the independently created pieces together, multiplies their outputs, streamlines the operations and experience around them, and enables scalability that can’t be reached without automation.

In this proposal we pursue the establishment of the latter, and the first development iteration that delivers an integrated data layer known as Content Gateway by the end of Season 2. This infrastructure will be immediately available to all present and future project teams, unlocking access to many DAO content sources at once.


BanklessDAO mobile app concept proposed by @0xNSHuman

BACKGROUND

The need for aggregated data service came up while designing the BanklessDAO Mobile App (link to the project), and was later supported by the BanklessDAO Website team (link to the project).

As more documents outlining the vision appeared in discussions, it became clear that the other projects and guilds have interest in having the infrastructure in place. We spent a considerable amount of time designing and prototyping the architecture and integration process that would be feasible in such a dynamic, diverse and permissionless environment as a DAO.

We have also made sure to limit the Season 2 scope to only include the priorities that generate immediate added value around the existing projects, minimizing risks of the initial investment in this long-term vision that would surely take more than one season to fully realize.

MISSION & VALUES ALIGNMENT

Here’s how the Content Gateway infrastructure addresses the mid- and long-term objectives.

Season 2 Priorities

  1. Happiness and retention (link to Season 2 planning section)
    • KPI-based compensation and full-time contribution encouragement were mentioned among the top season priorities.
  2. Doubling down on revenue-generating activities (link to Season 2 planning section)
    • DAO-to-DAO services were identified as a potentially scalable source of revenue.
    • Software products is another central theme, as more and more projects are on their way to gaining traction.
    • “Properly build out teams, source talent, set objectives, and scale” were mentioned as necessary steps to make the scale-up possible.

The proposed infrastructure is meant to boost productivity and value output of the engineering and content creation teams by removing the friction from data souring, reducing duplication of effort, and leveraging the previously developed solutions. This attracts more product-oriented contributors and lets people focus on building new experiences around the existing data, arguably leading to better capital efficiency.

By potentially integrating all the revenue-generating products together, it also creates an ecosystem, enabling user experiences similar to those provided by larger companies in the traditional economy. This makes all sorts of cross-promotion and partnership possible.

One example could be bundling a Bankless Academy course with a Bounty Board listing that matches the skills the user has just learned from the course.

Expanding on the revenue generation models, one of the proposed long-term strategy for this project is to package it as a DAO Operating System — a SaaS product available for the other DAOs to use. A standardized access for the outside entities to all the DAO content is especially important in this case.

Long-term Priorities

Help 1,000,000,000 people go bankless

The biggest and most engaging consumer-facing experiences produced by the DAO are going to embody the work of many independent creative teams, seamlessly integrated with each other. Think Apple ecosystem. People call it a “smooth experience”, but have you ever thought about what powers the “smoothness”?

SCOPE OF WORK

As mentioned earlier, the Season 2 priorities and scope are chosen carefully to shift the balance slightly more from the long-term vision to maximal value output during these initial MVP iterations.

Objectives:

  • Integrate and aggregate as many of the existing DAO content as possible into a single data source that can be plugged in anywhere.
  • Make plugging your new project in as simple as possible.
  • Support the Website and Mobile App projects as the two upcoming major platforms to rely on the infrastructure, laying the groundwork for other platforms and projects to join.
  • Establish a DAO-wide standard of data integration, and create development tools that remove the friction from following this standard.

Functionality:

  • Content Gateway API, the interface for data consuming projects to integrate BanklessDAO content into their websites and applications.
  • Content Gateway SDK, the development kit for data-producing projects to enable their content to be available to everyone else via the Content Gateway.

Executables:

  • Cooperate and communicate with the partnering DAO projects on regular basis to ensure their priorities are reflected in our roadmap and releases.
  • Implement the designed system architecture.
  • Assist other project teams with the integration of their data into the system.
  • Support the development and release of the consumer-facing products that rely on the system, such as Website and Mobile App.

SPECIFICATION

The proposed system design is a combination of the long-term vision for the infrastructure and its reduced version that fits into Season 2 and reflects the top priorities to address.

Long-term vision

In the long run, we envision the system to be a hub for all the DAO data to pass through, be analyzed and filtered, repackaged and ultimately delivered to the end user in the form that is most expected, optimized and efficient for the particular platform it’s being consumed on.


The architecture vision proposed by @addamsson

Whether it’s a website, mobile, wearable or IoT application, social media feed, analytics dashboard or an outside server to pass the data to — the preferences of every user and use case vary, as well as the resources and capability of any single project. The infrastructure is meant to contain and isolate the complexity of data transportation and manipulation.

Season scope

In Season 2, we take the first steps to establish the essential flow of data from the existing DAO products, through the content aggregation layer, to the target consumer-facing products.

Here is the main idea:

And the [more intimidating] architecture diagram with the reduced scope:


The reduced architecture to meet the MVP milestone proposed by @addamsson

As a concrete example, the following data and user experience flow is what we are planning to achieve by the end of Season 2:

  1. New pieces of content have been created across the DAO.
    • Bankless Academy has created a new course called “Course A Lorem Ipsum”.
    • Two bounties were created on the Bounty Board, called “Bounty B Lorem Ipsum” and “Bounty C Lorem Ipsum”.
    • Writers Guild has released a weekly newsletter called “Newsletter D Lorem Ipsum”.
  2. The new data pieces are delivered to the the Content Gateway from their respective independent storages.
  3. The Content Gateway aggregates and persists the data together.
  4. A BanklessDAO user opens the Home screen or webpage.
  5. The aggregated data is requested from Content Gateway and delivered to the user.
  6. The data is presented to the user via the interface as shown below.

The product

We understand the gravity of a project like this. Although we believe it’s the right time for the DAO to invest in the infrastructure, we also want the return on this investment to be clearly visible on the horizon.

That is why we intend to kick off the creation of a consumer-facing product that leverages Content Gateway and brings BanklessDAO in its full greatness to the end users. The mobile application project is going to be proposed by the same team and is meant to be the first in the ecosystem of products that relies on the new system exclusively.

The mobile app project details can be found here: link.

FINANCIAL IMPLICATIONS

The assumed hourly rate is 1,000 BANK / hour.

The assumed Season 2 delivery period is 12 weeks.

Project budget breakdown by role:

  • Project Manager

    • Duties:
      • Manage roadmap and iterations delivery;
      • Maintain weekly reporting to the DAO and represent the team;
      • Organize weekly meetings and keep the history;
      • Track resources and compensation.
    • Hours per week: 8.
    • Weeks: 12.
    • Role funding subtotal: 96,000 BANK.
  • Integration Coordinator

    • Duties:
      • Maintain high-level architecture consistency with the other projects;
      • Evaluate technical solutions based on priorities and risk tolerance;
      • Coordinate communication and collaboration with the other teams;
      • Manage integration priorities and verify the execution;
      • Schedule and take part in the integration testing and delivery.
    • Hours per week: 8.
    • Weeks: 12.
    • Role funding subtotal: 96,000 BANK.
  • Software Architect

    • Duties:
      • Design the system architecture and oversee its implementation;
      • Participate in the communication with the internal and external teams.
    • Hours per week: 12.
    • Weeks: 2.
    • Role funding subtotal: 24,00 BANK.
  • Software Engineer (Platform & Tools)

    • Duties:
      • Implement the system components according to the roadmap;
      • Participate in the communication with the internal and external teams.
    • Hours per week: 28.
    • Weeks: 12.
    • Role funding subtotal: 336,000 BANK.
  • Software Engineer (Integration)

    • Duties:
      • Evaluate the partnering projects’ codebase and assist them in SDK/API integration.
    • Hours per week: 8.
    • Weeks: 10.
    • Role funding subtotal: 80,000 BANK.
    • Notes: This role can be outsourced and/or delegated to the partnering projects, so its funding is meant to be used for bounties where possible.

Additionally, the expenses to prepare the project:

  • Multisig wallet creation gas fees 276 BANK (as of 2021-09-25).

Total Season 2 funding requested: 632,276 BANK.

BRAND USAGE

We don’t anticipate the system to feature any branding in Season 2, as it’s intended for internal usage. In a future season, however, a part of it may evolve into a SaaS product available for the other organizations. That will be the time to think about the branding.

SUCCESS METRICS

For the first couple of release iterations, success is defined as the ability of any project to be included in the aggregated content data source, or consume it.

Several metrics are proposed for tracking the progress:

  • Content producers integrated.
    • Number of independent projects plugged-in and having their data passed through the gateway.
  • Content consumers connected.
    • Number of products using the aggregated content API.
    • Amount of data consumed via the API per a reporting period.

NEXT STEPS

  1. Contunie shipping progress as we’ve been doing for the past few weeks.

SQUAD BACKGROUND

@0xNSHuman spent most of his career building and launching software products, first as a one-man army design & development professional, and later as an agency owner leading the digital strategy for various growing brands. Contributing to crypto projects since early 2021, @0xNSHuman joined the DAO in late Summer and immediately spotted the opportunity to add value towards its incredible growth.

@addamsson has been working on enterprise systems for 10+ years including high-throughput big data pipelines and integrated micro-service architectures. Having been a problem solver by nature, he came to the DAO seeking opportunities to apply his expertise in the new environment and build things that scale along with the organization.

BONUS

The season has barely started, but we’ve achieved progress in the past 2 weeks, getting the Proof-ofConcept of the system up and running, and having the mobile app on the way to display some of the first aggregated content!


Our most recent weekly dev call update.


Screenshot of the early mobile app progress.

LINKS

Discord channel: #content-gateway.

Content Gateway project details: link.

Mobile App project details: link.

Website project details: link.

Season 2 discussion: link.

POLL

  • SUPPORT
  • DO NOT SUPPORT (Comments are appreciated)

0 voters

4 Likes

As a member of the silent generation I am thrilled to be included in an infrastructure project of such potential. When mobile hit I was thrilled as I basically missed the computer generation and have been limited in the use of desktops but moved right to the IPhone and IPad which have not been as helpful in my learning progress. I can serve as a test pilot and am good at breaking things. I can not wait to use the new and improved content gateway coordination tools. What a great source of future long term revenue as other DAOs are able to progress with the bDAO’s tools. Love it.

4 Likes

I think an official mobile app is a really great idea and something that would on board so many users into the Bankless journey. Having said that, I’m going to play devil’s advocate here.

  1. I see in the GitHub repo the mobile app is for iOS. Has the team looked at the rules for the App Store? Do you foresee any issues providing bounties functionality with Apple?

  2. Is the content gateway a major requirement for the mobile app?

  3. Earlier it was mentioned that the content-gateway team will fork existing projects and start the integration work. I don’t see those details here. Actually I see “Assist other project teams with the integration of their data into the system.” Does this mean devs from other projects will need to do work to make content-gateway a reality?

I like to think of the DAOs as a startup and as most startups fast iterations with front facing user results works really well. Content gateway is certainly something that is needed in the long term but is it possible to build the mobile app without it?

3 Likes

I can only comment on the content gateway part: The CG aggregates data from multiple data sources. Some of them require integration with 3rd parties (note that from a CG standpoint any other project is a 3rd party), some of them don’t. By the end of October we’re going to have integrations with data sources such as POAP and $BANK on-chain data. We’ll prioritize the sources that have APIs or other forms of self-service integration options, then we’ll proceed to integrate individual projects. This will provide an early sneak-peek into what you can expect later, and the necessary learning material for us, to be able to quickly integrate things like DEGEN.

A note on forking: this is just a way to achieve this result. We fork → add integration → open PR. So to answer your question: we don’t need input from other teams to make CG a reality, but it helps to unlock its full potential and/or to integrate faster.

I like to think of the DAOs as a startup and as most startups fast iterations with front facing user results

:point_up: this is why we start with the self-service integrations: it will be easier to show results early. We’ve also allocated a significant part of the budget for bounties to give incentives to individual project owners to onboard themselves with the CG Client that we’ll offer. In case the project doesn’t support javascript/typescript a REST API can be used (in fact the Client will use this REST API too).

Ok. this is super incredible work. If we can afford it, we should totally do it.

3 Likes

Thank you very much to the authors for putting this together.

I have voted against and, as requested, I explain the reasons.

The proposal is very well drafted and the product seems valuable to me, but my impression is that it does not fit with the current state of the DAO.

We are still finalizing our website, which should also work as a content gater. In my opinion, it is more proper to start from the website and then create a mobile app on the basis of the website. At any rate, I don’t like the idea of having two products that look in a different way.

From a financial point of view, I would like to understand why the funding for the mobile app is more than 2x the one first requested for the website (when the value of BANK was very low).

I would therefore postpone to Season 3 when times will be more mature and the core products of the DAO will be available. In particular, Bankless Academy.

2 Likes

Thanks for taking a look at it Brian!

I’d argue the mobile app concerns are separate from Content Gateway, and these questions are a great opportunity to draw the distinction for anyone interested.

AppStore Distribution

I see in the GitHub repo the mobile app is for iOS. Has the team looked at the rules for the App Store? Do you foresee any issues providing bounties functionality with Apple?

That’s a very fair question. We haven’t researched this specifically for the mobile app project, but I have some visibility from years of experience shipping mobile apps.

  • The first possible issue to mention is intellectual property ownership.

    • When you submit an app to the AppStore, their process assumes that the person or entity submitting it declares that “the app only includes content that you created or that you have a license to use”.

    • Since we’re planning to have quite a diversity of content there, this sure may raise questions from the AppStore reviewers and require us to prove having this content licensed for distribution.

    • This is not a mobile app issue strictly, I think it has to be solved on a global level in the DAO if it still hasn’t been.

  • Expanding on ownership, there are restrictions on how a Freeware / Copyleft software should be distributed.

    • Again, someone has to submit the app. If you take a look at any of iOS apps licensed as open-source, there’s always some a clearly defined entity or person behind it.

    • Sometimes people just elect a person or company for representation, and this person is then seen as the producer of the app. Sometimes a legal entity is formed, like Ethereum Foundation, to release and support the freeware.

    • Either way, there are many open-source projects released on iOS, plenty of them are crypto projects, some of which offer tokenized value exchange and are released by an entity that’s given a freeware license.

  • With the Bounty Board in particular, there’s an aspect of having a marketplace with payments that assumes passing some of the AppStore guidelines.

    • It’s no secret that Apple doesn’t want apps to use anything other than their own In-App-Purchase mechanism to unlock freemium features, so having any third-party payment integrations has been a hot debate over the course of 2010s. This has changed recently when a court ruled Apple has to allow 3rd-party payments.

    • However, this is not a concern for any marketplace platforms where the value exchange doesn’t involve unlocking any of the app’s functionality itself (it’s 100% free from the beginning). Any transactions representing a real-world value exchange have no barriers as long as the app itself is not being the the product. Freelance platforms can be a close example to Bounty Board.

    • What might be not 100% clear is any caveats that go along providing an interface for a marketplace that’s not owned by any legal entity.

1 Like

Life With and Without Content Gateway

Is the content gateway a major requirement for the mobile app?

It depends on how we define the requirement.

  • From purely technical perspective, Content Gateway is not a requirement for anything. I could start building the app right away, which I honestly tried to do. The steps are roughly as follows:

    1. Integrate POAP protocol either via Web3 or TheGraph API.

    2. Source BanklessDAO token either via Web3 or TheGraph API.

    3. Find a way to pull the Writers Guild content somehow without an official API existing; optionally host its copies somewhere.

    4. Find a way to pull the LLC podcasts somehow without an official API existing; optionally host its copies somewhere.

    5. Contribute to First Quest project to create a web service for their quests, then integrate its API.

    6. Wait for Bounty Board to build an API and expose their data and functionality for 3rd-party use, or contribute to their project in that direction.

    7. Wait for Bankless Academy to build an API and expose their data and functionality for 3rd-party use, or contribute to their project in that direction.

    8. Start actually doing the mobile app work.

    9. Occasionally spread myself thin over the first 7 steps to be able to achieve anything.

    • The resulting mix of API integrations on the mobile app side would be an absolute nightmare to maintain, and would affect device network consumption and user experience negatively because of all the server requests - the problems solved by Content Gateway - but let’s assume we don’t care about it (we sure do).
  • Now let me approach this from resource efficiency, talent acquisition and DAO growth perspectives.

    • I myself happen to be a guy who enjoys both designing great user experiences and building the stuff under the hood, so I would personally have no problem doing all the 9 steps above.

      • However, most people we’ll want to build outstanding products for us to onboard 1,000,000,000 people will simply walk away if you tell them to do the first 7 steps. This talent is lost because they don’t have the bricks to do what they do well with those bricks.
    • We can throw 3-4 more people at the problem to cover those roles, but then we’d start thinking…

      • “If we’re doing this, it doesn’t make sense for just this mobile app, right?”

      • “What about the DAO Website project? They mentioned they are planning to enable more DAO content, but not doing this for now because it requires a lot of integration effort.”

      • “This new guy came to the DAO yesterday and he wants to create a VR app for the new Microsoft Hololens helmet, where do we point him to? Maybe tell him to come in Season 6 when we have all the APIs built?”

      • Chances are that by this point someone might mention a reasonable idea to collect priorities from all stakeholders and create a team that would work on encapsulation of these complexities for all the product-building teams. This would arrive at Content Gateway.

    • The current mobile app budget assumes only working on #8 from the steps above, and partially #9. The complexity of the first 7 steps was extracted to Content Gateway because:

      • In my experience, spending extra 600,000 BANK and unlocking a substantially larger pool of capable product builders sounds better than spending extra 300,000 BANK without a plan.

      • Justifying a 700,000 BANK budget for a mobile app would obviously be a challenge. It sounds completely unreasonable, and rightly so, because apps should not assume backend complexity in their budgets.

    • I we go beyond the bounds of BanklessDAO and assume that more outside organizations would like to integrate with us, the 7 steps above become an absolute blocker. I realize this is not a valid argument for Season 2 funding.

I like to think of the DAOs as a startup and as most startups fast iterations with front facing user results works really well. Content gateway is certainly something that is needed in the long term but is it possible to build the mobile app without it?

I completely agree, and I could never push the Publish button for this proposal without having the mobile app as the consumer-facing experience built on top of it.

On the fast mobile app release iteration possibility… **A** mobile app would sure be possible, but not **the** mobile app proposed.

I started designing the app by asking the question of how to drive people towards the DAO, not the question of what can be built with today’s limitations. I never intended to have this whole infrastructure project going, I just wanted to build a cool app.

The resulting concept uncovered the lack of tools to implement it quickly. Then I applied product strategy and system analysis framework to come up with a solution that turns a hardly justifiable short-term splurge into a scalable cross-organization growth solution for the same cost.

Whether it’s time to do it or not — that’s what I leave the DAO to decide.

2 Likes

Cross-project Coordination

I see “Assist other project teams with the integration of their data into the system.” Does this mean devs from other projects will need to do work to make content-gateway a reality?

No, this was not the meaning. By assisting we mean doing the work needed in order to include the other projects’ content into the Content Gateway API. This is part of our budget, and we would be happy to share it with anyone wanting to do the job of SDK integration themselves for any reason.

I can re-phase this in the proposal if you’d like!

1 Like

Hi @Eagle! Thanks for your input, appreciate looking at the proposal.

We are still finalizing our website, which should also work as a content gater. In my opinion, it is more proper to start from the website and then create a mobile app on the basis of the website. At any rate, I don’t like the idea of having two products that look in a different way.

I just posted a reply to @amaredeus’s fantastic questions here in the comments, there’s a very detailed explanation on what makes these projects distinct, and why this proposal has little to do with Website VS Mobile App, but rather caters for both of them, and many more products in the future.

Let me know if you have more questions on that.

From a financial point of view, I would like to understand why the funding for the mobile app is more than 2x the one first requested for the website (when the value of BANK was very low).

I assume you’re referring to the 232,000 BANK funding in Season 1. Correct me if I’m wrong and we should compare it to Season 2 requested funding.

First, I think you might be still mixing up the Content Gateway and the Mobile App proposals.

  • We are currently looking at Content Gateway proposal, which is a cross-DAO infrastructure that both Mobile App and Website will rely on in the future. Nothing in this proposal’s budget assumes any work on the mobile app itself. I hope the other replies I posted here will give more clarity on the difference.

  • Here’s where Mobile App proposal lives: Notion – The all-in-one workspace for your notes, tasks, wikis, and databases.. It’s a separate project with separate funding request.

  • Looks like you’re taking USD exchange rate into the consideration when calculating the 2x multiple, so I think if I say it’s 1.5x not 2.0x — this might look awkward on my side :smiley:

  • In any case, what we’re building on the mobile app side is significantly more ambitious approach than what the Website did in earlier seasons.

Another point to make is that we have a substantially bigger time commitment on both Content Gateway and Mobile App projects.

  • We don’t have day jobs, we wake up every day to work on these, and do it all week, all month, all Season round.

  • Our weekly sprints are packed with work, and we’ve delivered two weekly updates already before the Season or funding has even started.

  • I personally worked nearly full-time on the DAO projects including these two for the past month without any funding whatsoever. And we are open to deferring 100% of the payment until the end of the Season as long as the commitment is coming from both sides — ourselves and the DAO.

  • I don’t think many project budgets have similar semantics, something to consider when making a comparison.

Now, I’d like to stress again that this project is not a mobile app. I appreciate the attention to the mobile app, and I hoped for people to see the value of Content Gateway through the lens of mobile experience, but I’m making an effort here to draw a distinction in all my comments.

I respect your opinion that this might be something to postpone, and I’ll leave the DAO to decide that.

2 Likes

I’d argue that it makes the most sense for a product like this to exist as early as possible because integrating apps that weren’t designed with this option in mind is much harder. With very little change new products can also use CG as a source of truth instead of rolling their own database which will come with cost savings when it comes to both infrastructure and integration.

A website is also not a good candidate for a content gateway as it has a different purpose: it is designed for people to read. The content gateway is designed for programs to consume.

A mobile app is a very different product compared to a website and it has a different purpose. This is why both Apple and Google flat out reject apps that are just web views.

I believe that postponing something like this will make it much more costly to add later and we would also miss opportunities in S3 without having a data integration infrastructure in place (please refer to projecs like Dao Dash to connect the dots).

The main point I’m trying to make is that CG is not an inhibitor, but an enabler especially for products that don’t exist yet. With a program like this in place, the authors of Bankless products can work more effectively, and focus on producing business value instead of having to think about infrastructure.

3 Likes

@angyts Thank you! The First Quest is the perfect case for this technology. Serving all the relevant DAO content as part of the interactive onboarding experience would be quite a user experience. And it could exist as Web / Mobile / Wearable / Alexa / Siri / Google Home / Etc apps powered by Content Gateway! :open_mouth:

1 Like

DAO Dash Input to the Content Gateway Proposal

The DAO Dash team has discussed the Content Gateway proposal and has aligned with a consensus that is roughly as follows:

  • Content Gateway is an important piece of underlying infrastructure that will support many of the DAO’s technology projects across the Dev and Analytics Guilds

  • Content Gateway serves as an intermediary layer that allows data and content to flow between projects in a consistent, repeatable, and scalable manner that supports accelerated shipping. Bankless ships.

  • DAO Dash is focused on using analytics to solve problems with data. We are ingesting raw data from many disparate sources, building bots and pipelines, and mashing that data together to discover new insights, build new data tools, and quickly providing visual outputs.

  • CG is focused on standardization of existing data from known solutions to pipe into other applications, and as such Content Gateway has natural synergy with DAO Dash.

  • We intend to be publishers to the GC which will ultimately enable Mobile App, etc. to use the analytics output including data visualizations across other platforms.

  • We intend to be consumers of the GC. An example of this would be integrating data from Academy, Mobile App, and Bounty Board into our analytics without duplicating effort with those projects.

4 Likes

Clear and concise, this is great @RunTheJewelz.

I think this proposal is incredibly well thought-out and detailed, kudos to @0xNSHuman and @addamsson for the hard work to put Content Gateway together and address the various questions that have arisen. I voted in favor :white_check_mark:

I do have one question, as a matter of curiosity; when the various standalone DAO products (e.g., Weekly Newsletter, Bounty Board, Academy) get integrated into Content Gateway SDK - how labor intensive is that? is that a relatively automated process?

+1 to @RunTheJewelz 's comments detailing DAO Dash, where it stands in relations to Content Gateway. There is a lot of natural synergy between the two projects and we look forward to working with the CG team.

2 Likes

Hey @paulapivat, thanks for your support.

I do have one question, as a matter of curiosity; when the various standalone DAO products (e.g., Weekly Newsletter, Bounty Board, Academy) get integrated into Content Gateway SDK - how labor intensive is that? is that a relatively automated process?

Let’s suppose you’ve created a small discord bot that lets people check-in around the world providing their current location (bad example from privacy perspective :smiley:).

You are working on the product, having your own database where you store their most recent check-ins, etc. At some point someone asks you “hey, I’d like to add DAO member check-ins to my new crypto-dating website!”. Since you don’t have your own API, you decide to integrate with Content Gateway.

Here’s roughly what you do:

  1. Install CG SDK:
    npm install bankless-cg-sdk

  2. Give Content Gateway the information about your data structure:

class CheckIn {
    @Required(true)
    id: string;
    @Required(true)
    discordName: string;
    @Required(true)
    timestamp: number;
    @Required(true)
    locationName: string;
    @Required(false)
    locationCoordinateLon: number;
    @Required(false)
    locationCoordinateLat: number;
}
  1. Send whatever data you want whenever you want from your application’s code:
let checkIn = ... // Create check-in object
contentGateway.create(checkIn)

There’s obviously more to it, but the idea is that you are very flexible about when and how you integrate with CG, and when you do decide to go with it — you’re given SDK hiding all the complexity.

@addamsson is the best source of knowledge for this, I’ve outlined it on a high level.

1 Like

This is what you have to more or less. The only thing that’s missing is the registration. You have to register each version of CheckIn with the client:

contentGateway.register(
    CheckIn,
    {
        "namespace": "test",
        "name": "CheckIn", 
        "version": "V1"
    }
);

Then the part that sends the data (outlined by @0xNSHuman ) should be called whenever you save/update/delete your data. You can also add this asynchronous call to loading your data, so CG will eventually backfill its database based on these. The only constraint we have now is for each entity to have an unique id, so that CG can identify the entity that’s sent.

There is a REST endpoint on the CG side, so if you’re not using javascript/typescript you can call it, but in that case it is your job to register your schema with CG (we use JSON Schema for this, because it is a very well-known format, and it is supported by many languages).

1 Like

Thanks a lot for your reply.

The way in which you are answering to the requests of clarification shows once more the seriousness of your intent. The project is indeed a special one and it could really amount to a kind of quality pedigree for our DAO. My only concern was that, at this stage, we are creating a “gater” before having the “content”.

Apologies for my confusing remarks on the mobile app. The images of smartphone were somewhat misleading for me. But now everything is clear and I will fully support this strong project!

2 Likes

Thank you for clarifying the “chronological” aspect of the project. It was very helpful for me.

Just to be clear, here I comment as a member of the community, not as a GC member. Nevertheless, I fully agree: GC should not inhibit anyone! The consensus of the community is the primarily (if not the only) source of truth in our DAO. The GC should only put some methodological rules, as milestones, payment standards, etc.

I wish you all the best with this ambitious project. Your success is the success of the Bankless DAO. I will be your first supporter in this regard.

1 Like

Too much too fast too soon? Small flag here is low intra-dao collaboration, and dearth of team-building. Well-crafted proposal, but feels like a product pitch toward the DAO, not a content gateway Minimum Viable Product (MVP) from the DAO. Baked too quickly in one oven for my tastes. I’d say we stay off the app stores for at least a year, and revisit. - Frank