SIA-ONE: One Platform for Sia Ecosystem

Introduction

Project Name: Sia-One

Name of the organization or individual submitting the proposal: Mert Köklü

Describe your project

ONE platform to show everything about Sia

Sia team consistently delivers impressive achievements like new apps to interact with network and the community is actively contributing, building new applications every day, which can be seen with an increasing number of proposed grants over time. However, this rapid growth also makes it challenging to keep track of all the developments and stay updated within the ecosystem.

The Sia-One is designed as a central hub for the Sia network to simplify this process. It provides a centralized platform where users can easily access projects and activities within the Sia network. The platform offers a comprehensive, categorized list of all Sia projects and their details as well as every aspect of the Sia network from overall development, forum activity, to grants and articles shared by Sia Foundation.

Who benefits from your project?

  • Users and developers, both new and experienced, gain easy access to comprehensive information about all Sia projects.
  • The Sia Foundation benefits from enhanced transparency and data-driven insights into grant programs and project developments.
  • The entire Sia community benefits from a unified platform that keeps everyone informed and engaged.

Ecosystem Fit

  • Central Hub: It brings together everything about Sia in one place, making it easier for users to access and understand growth and development of the Sia network.

  • Lists All Projects: It categorically lists all Sia projects and their details, helping users find the right project for their needs. User can find the project they are looking for by filtering projects based on their type (explorer, media-streaming, etc.) without even asking in Discord!

  • Community Connection: It keeps the community updated and engaged with the latest happenings in Sia ecosystem from articles to grants and development activities. Monthly reports (via forum, discord, and email) will be created to keep community updated based on the data provided by the platform.

  • Grants/Hackathons Tracking: By tracking grants program with detailed metrics and development activity of projects, it helps Sia Foundation to make better decisions about grants, payments, or renewals. It also increases transparency, allowing the community to see how grants are progressing over time.

  • Easy Start for Users and Developers: New users/developers can quickly learn about Sia with provided resources. This will help them to start using/developing on Sia network faster.

How does the project serve the Foundation’s mission of user-owned data?

The project supports the Foundation’s mission of user-owned data by making it easier for users to understand and be part of the Sia network. The platform brings together all the important development and growth about the Sia ecosystem in one place. This means users can easily find out what’s happening, from new projects to network development direction.

By showing up-to-date information and trends, Sia-One not only helps users feel more connected to the community but also encourages them to participate and contribute. The platform’s focus on making project details, community and development activities easily accessible aligns with the Foundation’s goal of creating a data ecosystem.

Grant Specifics

Technical Stack

  • Backend

    • Python
    • Fast API/Graphql API
    • Firebase (Firestore)
  • Frontend

    • Next.js
    • Redux
    • shadcn/ui
    • Tailwind CSS
    • Algolia (Search Infrastructure)
    • Apache e-charts
    • React Hook Form ()
    • Zod (schema declaration and validation library)

Deliverables

  1. Frontend - Dashboard page - Summary of main Sia metrics and information.

    • Active hosts, storage utilization, blockchain height, average storage price, average download price, average upload price. Data will be fetched from SiaCentral API until explorerd API is released.
    • Summary metrics of some widgets from development/forum pages.
    • Latest articles shared by Sia Foundation
    • Latest tweets from Sia Foundation
  2. Frontend Project List page

    • List all projects with their descriptions, stargazing counts, and health scores.
    • Projects will be categorized based on their type (explorer, media-streaming, etc.)
    • Algolia search integration to improved search and filtering capabilities.
    • Project adding form to accept new projects to the list from the community. This will be a form that will be manually reviewed by me before adding the project to the list.
    • Project updating form to accept updates existing projects from the community. This will be a form that will be manually reviewed by me before updating the project details.
  3. Frontend - Project page

    • Project description, details, relevant links, and other information.
    • Project Github development stats
    • Stargazing trend - How many stars project gained over time
    • Language breakdown - The distribution of programming languages used in the repository
    • Commit activity - Number of commits made to the repository over time.
    • Community profile - Key components of the protocol’s community structure (guidelines and resources).
    • Latest commits/releases/issues/PRs - The latest commits/releases/issues/PRs made to the repository.
    • Contributor breakdown - Commit contribution distribution.
    • Code frequency - The distribution of code changes (addition and deletion) over time.
    • Punch card - Commits happen throughout the week, allowing to spot peak contribution times.
    • Issue/PR activity - The number of issues and pull requests opened and closed over time.
    • Issue/PR count - Total number of open/closed issues and pull requests.
    • Participation trend - View the weekly commit activity chart for the past year, highlighting contributions from all, owners, and others.
    • Most active issues/PRs - The most active issues and pull requests.
    • Health score - Overall health score of the protocol based on various development metrics. This will be calculated based on commit activity, issue resolution, pull request engagement, release consistency, and contributor involvement. A comprehensive glimpse into the ongoing development and maintenance status of the project.
  4. Frontend - Development page - Cumulative/aggregated statistics of all listed and indexed projects that will show overall development of Sia. Will be similar to projects page but will show aggregated data of all projects.

  5. Frontend - Forum page - Forum statistics that will show how well community is active in Sia forum.

    • Forum overview (Total replies, total posts, total views, total likes, average replies per topic, average post per topic, average views per topic, average likes per topic)
    • Topic activity - The number of topics created over time.
    • Top topics - The most active topics.
    • Tags and category distribution - The distribution of tags and categories used in the forum.
    • Top users - The most active users.
    • Latest topics/posts - The latest topics and posts.
  6. Frontend - Developers page

    • Developer overview (Full time dev, monthly active devs, total commits, total repos)
    • Total active devs - The number of active developers over time.
    • Commit activity based on dev type - The number of commits made by full time devs, part time devs, and community devs over time.
  7. Frontend - Leaderboard page

    • Projects leaderboard - The most well-maintained projects based on their Github development statistics (will be ranked based on their health scores).
    • Contributors leaderboard - The most active contributors across all projects based on their Github development statistics (will be ranked based on their commit counts).
  8. Frontend - Grants page

    • List all grants that is submitted to Forum with their respective status (approved, rejected, in-progress, etc.)
    • Grant metrics that will show how grants are progressing over time.
    • Total grants submitted, approved, rejected and in-review.
    • Grants elapsed time - Time between approved to completed
  9. Frontend - Articles page

    • List all articles shared by Sia Foundation.
    • Algolia search integration to improved search and filtering capabilities
  10. Frontend - Learn page

    • List all Sia development resources - API docs, tutorials, courses, etc either relevant links or embeddable content. I may create courses myself in the future (especially development with SDKs that will be available in near future based on Sia roadmap) and will be added to this page as well.
  11. Backend

    • Github Crawler - Automatically find Sia related projects on Github based on package usages, keywords, and other factors.
    • API Handles - will be used to fetch data from Github Rest/GraphQL, Discourse Rest, or any other source APIs with error handling.
    • Database Layer - Firebase (Firestore database) will be used to store all projects, their details, and all relevant data to feed the frontend. It also includes functions related to save/fetch data from db.
    • Fast API (or Graphql API) - will be used to provide API endpoints for the frontend. I may use Graphql API instead of Fast API during development if I see that it will be more suitable for the project.
    • Caching Layer - will be used to improve response times and reducing load on the database and API.
    • Processing Layer - will be used to process fetched data (from Github, Discourse or any other source) to expected data format (like Apache e-chart chart format) for every widget in the frontend.
    • Algolia Integration - Algolia will be used to provide search and filtering capabilities for the projects and articles.
    • Firebase-Algolia Extension - The integration will be used to sync data between Firebase and Algolia automatically using this plugin.
  12. My Services

    • Maintaining Sia project list - Providing Github crawler to automatically update sia-foundation.toml file in electric-capital/crypto-ecosystems. It is a taxonomy for sharing data around open source blockchain, Web3, cryptocurrency, and decentralized ecosystems and tying them to GitHub organizations and code repositories. All of the ecosystems are specified in TOML configuration files. My crawler will find Sia related projects and will create PR request to my forked repo. Then I will manually review the list (whether they are Sia related or not) and merge the PR to the main repo. This will be done monthly to keep the list up-to-date.

    • Creating monthly forum post - Includes a summary report of respective month’s Github, forum, and developer statistics/changes. Also recent articles shared by Sia Foundation, and any news that worth mentioning will be included. This will be manually created by me, and will be posted to Sia forum, and discord server. Community can also opt-in to receive these reports via email as well. This will be a great way to keep community updated about Sia ecosystem.

    • Public API - Will be publicly available for anyone to use to further build anything related to above features. The API will be hosted by me, free to use and will require auth. Detailed documentation will be provided as well.

    • Manual Project Addition/Validation - Altough crawler will find most of the Sia related projects, there may be some projects that may not be found by the crawler or there may be exist some projects that are not on Github. Also even though a project is found by the crawler, the details of it may be missing. In such cases, the platform will provide two easy-to-fill forms to the community to add new projects or update existing projects. I will manually review the submissions in case of unnecessary or wrong submissions and will add/update the projects accordingly.

Milestones

# Milestone Deliverables Estimated Date of Completion Budget
1 Implement Github crawler. Create Firebase-firestore db, Algolia integration, and plugin set-up. Implement frontend Project, Project List, Leaderboard pages with their related API endpoints and processing/caching functions in backend 2, 3, 7, part of 11 21.03.2024 14.400$
2 Implement frontend Development, Forum, Grants pages with their related API endpoints and processing/caching functions in backend 4, 5, 8, part of 11 03.05.2024 10.400$
3 Implement frontend Dashboard, Developers, Articles, Learn pages with their related API endpoints and processing/caching functions in backend 1, 6, 9, 10, part of 11 12.06.2024 11.200$
4 Providing services 12 13.06.2025 1.800$

Amount of money requested and justification with a reasonable breakdown of expenses

Project estimated date of completion: 14.06.2024

  • Milestone 1: 01.02.2024 between 21.03.2024 - 36 workdays x 8 hours x 50$ hourly = 14.400$
  • Milestone 2: 22.03.2024 between 03.05.2024 - 26 workdays x 8 hours x 50$ hourly = 10.400$
  • Milestone 3: 04.05.2024 between 12.06.2024 - 28 workdays x 8 hours x 50$ hourly = 11.200$
  • Milestone 4: 13.06.2024 between 13.06.2025 - 12 months x 150$ monthly = 1.800$

Total requested amount: 37.800$

Potential risks that will affect the outcome of the project

  • Sia Central API Depreciation: In some dashboard widgets, data will be fetched from Sia Central API, and since explorerd will be released in near future, there’s a risk that Sia Central API will be deprecated. In such case, I will use explorerd API instead. This will require some changes.

  • User Adoption: The platform partly depends on its adoption by the Sia community. There’s a risk that the platform might not engage the intended audience as expected, impacting its effectiveness. I may request from the Foundation that the platform be displayed on the Sia website in third-party section to increase its visibility and adoption.

Development Information

Will all of your project’s code be open-source?

  • Yes, all of the project’s code will be open-source with licensed as Apache 2.0.

Leave a link where code will be accessible for review.

Do you agree to submit monthly progress reports?

  • Yes, I agree to submit monthly progress reports.

Contact info

Contact Name: Mert Köklü

I worked as Intelligent Video Analytics Team Leader in a NVIDIA distributer company that develops video analytics solutions for 2 years. After diving into Web3 ecosystem, I have become a grantee for multiple blockchain ecosystems by developing innovative projects. As a certified NVIDIA instructor, AAVE Turkey Community Co-Manager and ambassador for organizations such as Microsoft and The Graph protocol, I have become a trusted voice within the communities.

I have experience as a grantee from working with well-known protocols such as Sia, Aave, Compound, Filecoin, Flow, Lens Protocol, Web3 Foundation, and Solana demonstrating my extensive experience and expertise across multiple blockchain ecosystems.

:trophy: I am also a grantee of Sia Foundation with project Sia Telegram Alert Bot.

Hey @mert, thanks for your patience! The committee wasn’t able to review your proposal during their last meeting, but should be able to take a look at the next on February 6th.

Just FYI, the initial review time for Standard Grants is 4-6 weeks. Thanks for hanging in there!

1 Like

Thanks for submitting your proposal to the Sia Foundation Grants Program!

The committee is interested in this grant but is recommending changes and has some clarifying questions. They’d prefer to see it broken into parts, perhaps with multiple Small Grant requests. Building slowly with the automate-able tasks might better help the committee see where this idea is going before committing to a full-project funding.

This type of project can easily get out of hand in terms of maintenance, so they’re also wondering what your plans are surrounding keeping the information that can’t be automated updated. I know you mention this is section 12 “My Services” as “Maintaining Sia project list” and “Manual Project Addition”, and the idea in the proposal is to keep a form that the community can fill out to add/remove that you would then validate. We can say from experience that the Skynet community attempted something similar with their Skynet App Store and it wasn’t exactly a smooth process.

As such, this version of the proposal will be moved to the Rejected section of the forum. Please feel free to submit an updated proposal addressing the committee’s concerns above at your convenience. Thanks!