Small Grant: S5 ecosystem & vup chat

Project Name: S5 ecosystem & vup chat

Grant Submitter: Luke McCarthy, Linkedin
I have been a part of the Sia community for a while now (since late 2019 when I began lurking). I generally have had a strong interest in distributed storage systems. I took an interest in Sia due to it being one of the few Crypto implementations with a specific (and useful) purpose and function.

Project Description:
The S5 project is already known and funded by the Sia Foundation. This project is giving a grant to another developer to be able to work on more S5 related things. Redsolver & I have already talked at length about this and he will comment below about it.

Specific goals of this grant:

  • Improve documentation and workflow for all S5 related projects:
    • S5 core - Create thorough and intuitive API docs. Improve build/testing automation.
    • S5 docker/server - Improve documentation to bring to visual and usability parity with other projects like IPFS.
    • vup - create necessarily guides & improve build/testing automation
  • Improve vup chat: Vup chat is an experimental, privacy focused, messaging platform build on the S5 streams backend. It’s architecture is highly similar to Simplex, but with the capability of build in message backups via S5 & the capability to facilitate larger public chat rooms on top of ATProto.
    • Bring visual parity of vup chat to similar apps like fluffychat/discord
    • Help implement both E2EE (small, private, chat rooms) & ATProto (large, public, chat rooms) powered chat rooms. All images and backups will be persisted to S5 (and in turn could be stored on Sia) allowing for seamless data portability & user control with minimal user friction.
    • Add “nice to have” features like location (similar to Life360)/music sharing (similar to AirBuds) while respecting privacy, unlike other similar apps.

How does the projected outcome serve the Foundation’s mission of user-owned data?
The S5 project has shown it’s capability of providing secure, low friction experiences while being tightly integrated into the Sia ecosystem (specifically with first party support for renterd as a storage backend).

This project will allow Red to focus more on the core coding components of the S5 stack while I work on things like documentation and user facing applications, furthering the Sia ecosystem’s reach.

Grant Specifics

Amount of money requested and justification with a reasonable breakdown of expenses:
9,600 USD in salary over the course of 3 months ($3,200/mo). Paid monthly after task completion.

Milestone 1 (By End of June, 2024):
Complete overhaul of all documentation and build workflows for core s5 projects (s5-dart node & vup).

Milestones 2 (By End of July 2024):
Begin work in modernizing and building out vup chat interface.

Milestones 3 (By End of August 2024):
Continue work on vup chat UI & begin work on more niche features like integrating with spotify’s API and location sharing.

What are the goals of this small grant?

  • Improve all levels of documentation.
  • Improve and build out the prototype Vup Chat app.
    • Bring user interface up to par with modern standards (parity with discord, signal, etc)
    • Add new features like location & music sharing with trusted friends via the Vup Chat E2EE channel system.

Potential risks that will affect the outcome of the project:

  1. While I have experience coding, I am an entry level developer and may not get as much done as I project.

Development Information

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

Leave a link where code will be accessible for review.

Do you agree to submit monthly progress reports? Yes
[Progress reports must be submitted monthly here in the forum.]

Contact info:

Email: mail@lukehmcc.com

Any other preferred contact methods:

  • Matrix: @covalent:jptr.tech
  • Discord: covalent1

Isn’t what you propose already a part of another grant (Grant Proposal: S5 Network and Apps)? What is the difference specifically?

The specific purpose is to have another developer working on parts of the project that red doesn’t have high on the priority list, but are still important. Good documentation and user experience are important, but secondary to having something that exists and works in the first place. It makes sense they haven’t been worked on as much as the core code, but it would be beneficial to the project if they were to be worked on more. Hence the purpose of this grant.

1 Like

Im definitely behind this getting done.

1 Like

@Covalent has a lot of experience on Sia and Skynet-related projects, he was the first developer who tried an early version of S5 back in 2022 and gave valuable early feedback and inputs. As such, I think it would greatly benefit the usability and growth of the S5 Network (and as a result Sia), if he could work on some key areas like documentation for S5 as part of this grant.

The S5 APIs are now at a pretty capable state, but most developers aren’t aware of all the possibilities when they start building something on S5 and just use it as file storage - so I think better documentation would be really useful to change this. Another part of this small grant is @Covalent building a new decentralized chat app on S5. This serves multiple purposes: Gaining a deeper understanding of the S5 APIs, finding and fixing obstacles in the developer experience when using S5 libraries and also building a great Discord alternative of course :slight_smile:

I do agree that a decentralized chat app is a great idea.
My question was about the docs: isn’t that something that @redsolver has to do as a part of his grant?

I already wrote some documentation and guides on https://docs.sfive.net/ (most recently the Sia renterd setup guide), but there are still a lot of useful pages that could be added - for example a “Getting Started” guide for developers, examples on how to implement common patterns or more detailed explanations of the different data structures. I’m better at writing code than documentation, so I think it makes sense that @Covalent helps me with that, so I can focus more on the core parts like improving network scalability and performance.

1 Like

I worked with Covalent on Skynet Guide before and he has all my support. The posts by mike/pcfreak/redsolver answered whatever was unclear, so my only question is basically… what’s next? Will you continue helping in this direction under another grant?

I understand that you probably want to start low to see if foundation would approve this and since it’s very low risk and you’re well known I think this will be met with positive answer. If the plan is to ask for another grant after you meet the current milestones, then it’s fine.

Because I’m surely not the only one who would like to see what you can do if you’re given budget for more than just three months:) As long as you would be interested in it of course, it cannot be forced.

2 Likes

I really appreciate the vote of confidence (:

In terms of the future the biggest hurdle for me is (as it says in my linked linkedin profile) I am still in Uni. So I really only have the months of June-August free for the time being. That considered, I think it makes sense to start small and see how things go.

1 Like

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

This proposal was submitted after our Wednesday cutoff last week, and unfortunately we didn’t have time to review it during this week’s meeting. It will be reviewed during the committee’s next meeting on April 2nd. Thanks!

1 Like

Thanks again for your proposal. After review, the committee has approved your grant request. Congratulations!

The committee is excited to see these improvements to S5 and Vup. We’ll reach out to your provided email address to get you set up. Onboarding can take up to a couple weeks, so we’ll ask you to provide a slightly updated timeline and milestones once you can get started on your project.

1 Like