Small Grant: SiaGraph

Introduction

Project Name: SiaGraph

Name of the organization or individual submitting the proposal: CtrlAltDefeat

Describe your project
SiaGraph is a website that provides data and insights into the Sia network. SiaGraph aims to help track the growth of the network by offering users access to various metrics, including storage usage, individual host statistics, and other global network statistics.

How does the projected outcome serve the Foundation’s mission of user-owned data?
The projected outcome of SiaGraph directly supports the Foundation’s mission of user-owned data by enhancing transparency and accessibility within the Sia network. By providing data, analytics, and insights into the Sia Network, SiaGraph empowers users with the information they need to make informed decisions about storage pricing, trends, and host selection. By fostering a better understanding of the network’s operations, SiaGraph contributes to a more informed and engaged community.

Grant Specifics

Amount of money requested and justification with a reasonable breakdown of expenses:
Total: €1950. €650 per month, for a total of three months.

  • Salary for myself: €450, paid out each month.
  • Operational expenses: €200, paid out each month.
    This will be used to rent server space and buy Siacoins for renting. The latter will be explained in the next section.
    This is estimated on the higher end. Any OPEX funds still remaining at the end of the grant will be spent to continue running SiaGraph after the grant.

What are the goals of this small grant?
The first thing being worked on is a significant rewrite of the front end. I’ve learned a lot since I started working on SiaGraph. The purpose of the rewrite is to clean up redundant code, make the code base more modular and easier to extend, and improving load times.

The rewritten front end will be using an API to fetch the data. This API is being built in parallel of the rewrite to the point of being functional enough for the front end. After completing the rewrite, the API will be extended and documented to be usable to the community.

More visualizations will be added as they become ready throughout the grant. What this will include is yet to be determined.
At the start of the grant, either one, or multiple Renterd nodes will be created. These instances will be holding an undetermined amount of data, and will be used to gather renting specific statistics. Visualizing this data will happen after the completed API.

Finally if time allows it, a rewrite of the back end is happening. The goal of this rewrite is simplification, adding more robustness and logging. The rewritten back end will be made open source. This section is made cursive as it should be considered an optional goal. Due to potential risks listed in the next section, there may not be enough time to complete this goal.

Potential risks that will affect the outcome of the project:
As I don’t have much experience building websites, or developing complex projects, there are multiple risks that are connected to each other:

  • SiaGraph is something I work on next to my full time job. I may be unable to allocate enough time to complete all goals.

  • Building new features/components might prove more difficult or time consuming than expected. This can result in new features being delayed or abandoned. This should have no impact on existing features.

  • This is also my first time working with statistics of this scale. Visualizing new data in a useful and correct way may take longer than expected.

Development Information

Will all of your project’s code be open-source?
Both the rewritten front and the back end will be made open source.
All raw data will be available in JSON format via a documented public API.

Leave a link where code will be accessible for review.

Do you agree to submit monthly progress reports? Yes

Contact info

Email: Will be shared in private.

Any other preferred contact methods: Discord

This one is a no-brainer:) Only suggestion is to add more $ for the running costs to make sure it runs at least for next two years. Also giving budget to pre-pay the required services might reduce the monthly costs due to better deal possibility.

1 Like

Thanks for the support and the suggestion :slight_smile:
I honestly hadn’t considered asking for OPEX funds for such a time frame (and the possible discount that comes with it).

I’ve got a load of things I’d love to implement/work on, but I’m not really sure yet what resources it would require, and what costs would come with it.

I’m hoping to use this grant to ‘test the waters’ so to say. As explained in the grant, a lot of things are still new for me.

Trying to keep the scope a little small this time. The next one might be bigger :grin:

2 Likes

Thanks for your recent proposal to the Sia Foundation Grants Program. After review, the committee has voted to approve your proposal.

One note is that proposals must be in USD, so for the purposes of this approval we did a rough conversion to $2,160. We can also only pay out in USD, so please let us know if that’s an issue for you.

We’ll reach out to you in Discord to get your email address. Onboarding to the Grants Program can take up to a couple weeks, please adjust your timelines as appropriate and be ready to provide those to us during the process.

Congratulations!

Progress Report for October

What progress was made on your grant this month?

  • Added a private Beta environment to the development workflow, allowing testing on an identical environment as the public one, without constant interference of active work. Access can be given to the Grant team per request.
  • Created 8 API endpoints. These are not yet documented anywhere as they are constantly changing and shouldn’t yet be used by anyone else.
  • Rewritten a large part of the website
    • Added more modularity making future additions more easy
    • Moved almost all database related code to the API.
  • Added a few more graphs.

Summarize any problems that you ran into this month and how you’ll be solving them.

  • Some code changes proved more difficult than anticipated, but most have already been taken care of.
  • It appears I didn’t configure my .gitignore properly resulting in some sensitive info to be included in the code base/commit history. The repo will be made public at the beginning of next week.
  • The initial plan was to start Renterd node(s) in October to begin collecting data. This has been paused until the design is finished.

Links to repos worked on this month:

What will you be working on next?

  • Finish rewriting the website
  • Standardize API calls and responses

Hello @CtrlAltDefeat

Thank you for your progress report!

Regards,
Kino on behalf of the Sia Foundation and Grants Committee