All case studies

Technology

Launching Smart Contract Database (DB), an Open-Source Website for the Chainlink Developer Ecosystem

Supported by a Chainlink Community Grant, This Dot Labs recently created Smart Contract Database (DB), an open-source website for the Chainlink developer ecosystem.

ClientChainlinkYearStackReact, Next.js, Blockchain
main-bg.png
Built withNextJSVanilla CSSFuseJSJestNetlifyGitHub Actions

Overview

Supported by a Chainlink Community Grant, This Dot Labs recently created Smart Contract Database (DB), an open-source website for the Chainlink developer ecosystem. This resource serves as a knowledge guide about blockchain technologies for developers and Web3 enthusiasts, no matter their level of experience.

The Smart Contract Database (DB) spreads awareness of smart contracts and blockchains, providing community members with a central hub of useful Web3 resources, courses, reading material, and more.


Services Provided

Working with the Chainlink Labs team, This Dot Labs created a design layout to best represent the site content and provided guidance on how to create an optimal experience for open-source contributions. After the initial design phase, we built and deployed the resource and prepared the repository for open-source contributions.


Tech-stack

  • NextJS
  • Netlify
  • GitHub Actions
  • Vanilla CSS
  • FuseJS
  • Jest
  • NextJS: Provided light-weight static site capabilities and SEO-friendly design.
  • Netlify: Hosts the site and manages the CI/CD pipeline leveraging its built-in CI/CD.
  • Vanilla CSS: Enabled us to produce a few simple design components, replacing Material UI and Storybook.
  • Github Actions: Facilitated resource-specific automation in instances where Netlify was not optimal.
  • FuseJS: Helped us build a search function.
  • Jest: Enabled us to test the site.

Initiating the Development Process

When the development process began, we needed a low-configuration solution for quickly scaffolding a site. In order to maintain relatively flat scaffolding, the team did not design a heavy component system. We also promoted consistency using relevant deployment tasks like linting and formatting. This direction helped our developers quickly dive into development with minimal focus on setup and additional configuration.

code-editor

Finding an Optimal Search Engine Tool

Because this website uses the same approach as other documentation websites, most data is front-loaded, resulting in few-to-no network calls. Maintaining searchability and performance for the growing archive became a matter of curating new resources for SEO. This presented an opportunity to integrate an efficient search engine tool.

Options that were considered included: Elastic Search, Algolia, and FuseJS. Utilizing either of the first two meant implementing a backend service and database, which we didn’t deem important enough to justify. Indexing was another common concern related to search engine integration. However, FuseJS permitted us to leverage the front-loaded data without a database, and it included indexing with advanced querying, which is why the team chose to use it.

smart-contract

Forgoing a Dedicated Backend Provider

The team saved significant time and decreased costs by choosing not to use a dedicated backend provider. By keeping the deployment simple and storing resource data as static pages, we were able to enjoy a smoother development experience, and ultimately deliver a product that is easier for contributors to use.

cloud-computing

A Collaborative Process

Throughout the development process, This Dot Labs worked closely with Chainlink Labs to ensure that our team’s work aligned with their vision. To find relevant resources, Chainlink Labs provided a diagram of tools and services separated into categories that they deemed most valuable to users.

In order to maintain resource relevance in this open-source project, This Dot provided a contribution guide to help this initiative. Utilizing this guide, developers and other users enjoy a seamless experience when contributing to the Chainlink ecosystem, using pull requests facilitated by Github.

smart-contract2

An Open-Source Community Resource

This website used an architecture similar to other documentation websites while also allowing community members to contribute additional information to the project. New additions are moderated and assessed for accuracy before they are added to the database.

smart-contract-github

Chainlink is the industry standard for building, accessing, and selling oracle services needed to power hybrid smart contracts on any blockchain. Chainlink oracle networks provide smart contracts with a way to reliably connect to any external API and leverage secure off-chain computations for enabling feature-rich applications. Chainlink currently secures tens of billions of dollars across DeFi, insurance, gaming, and other major industries, and offers global enterprises and leading data providers a universal gateway to all blockchains.

Have a project like this one?

Tell us where you're headed and what's in the way. We'll tell you how we'd approach it.

Start a conversation