Standard Grant: SkyMusic (Part 2) - Updated

Update Information

Thank you for the feedback and guidance regarding the project. I fully understand and respect the commitment to open-source principles and I am happy to comply with these standards.

I would like to confirm that I have removed the expanded license solutions from the project plan, focusing entirely on open-source development. I will also make the project’s middleware API open source.

I will continue developing the web application until the Grants Committee meeting, and I assure you that I will publish the current development code and the middleware API on GitHub before the meeting. This will allow for a review of the status of my work and provide an opportunity to receive any feedback.

In the following, I would like to present the updated Standard Grant Proposal.

Introduction

Project Name: SkyMusic

Name of the organization or individual submitting the proposal: Mózes Dániel

Describe the project:

SkyMusic is a web based music streaming application and a decentralized alternative to Spotify and YouTube Music that operates on the S5/Sia network. Users can stream music from our library, S3 storage and local sources. SkyMusic primarily utilizes the S5 channel (developed by Redsolver).

Who benefits from your project?

Artists, listeners, Sia network, community developers and everyone who wants to stream music anonymously and securely.

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

The data is completely anonymous, and no user statistics are collected during the application’s usage. We apply S5 security for the storage of music connected from S3 and local sources. Users can connect to any S3 completely anonymously and securely.

Grant Specifics

Budget: 33000 USD
Budget: 19000 USD

  • My full time salary: 6000 USD for 5 months (minimum 160 hours work per month)

  • Maintenance costs and other expenses (e.g. storage, marketing): 2000 USD

  • Expanding our music library: 1000 USD

  • My full time salary: 6000 USD for 3 months (minimum 160 hours work per month)

  • Maintenance costs and other expenses: 1000 USD (I have removed the marketing expenses. Originally, 2000 USD was equally split between marketing and maintenance. Now, the 1000 USD is allocated to maintenance costs and other expenses, focusing on essential infrastructure and operational needs. Below, I will list a few costs associated with the project.)

    • Server Costs: I am using Renterd and S5, which cost approximately 14.50 USD per month combined.
    • Server Management: For managing these servers, I utilize RunCloud, which costs between 8-15 USD monthly.
    • Deployment and Hosting: I am currently using Vercel and plan to use the Pro package for this project, which would be around 20 USD per month.
    • Database Management: The backend currently utilizes Firebase, but I am planning to integrate Supabase into the project. The Pro version of Supabase would cost 25 USD per month.
    • Sia Network: I also use SiaSatellite, the costs of which depend on the usage of the web application.

Timeline: 5 Month
Timeline: 3 Month

Project Milestones

The project is divided into five three main milestones, each of which falls into a specific month and enjoys priority during that period. Alongside these, I naturally continue to work on the other tasks of the project, although I progress with them at a lower intensity during that month.

Milestone 1: Expanding Web App Functionality and Design (1st month)

During the first milestone, I will concentrate on expanding the functionalities of the web application. This phase is aimed at enhancing the user experience and adding new features to ensure the application meets the increasing needs of its users. This includes refining the design of the user interface and the development of design elements, for example, to provide a more intuitive and visually appealing experience.

Milestone 2: Mobile Application Development (2nd month)

The second milestone focuses on the development of the mobile application. My goal is to create an intuitive, fast, and stable application that aligns with the web interface. I aim to make the app available across multiple platforms (e.g., iOS, Android), thereby ensuring widespread access. This approach simplifies the user experience, making the app easy to use regardless of the type of device.

Milestone 3: Developing Desktop Application (3rd month)

The goal of the third milestone is to make my application accessible on a variety of devices, not limited to web browsers and mobile apps. In this phase, I’m focusing on developing a desktop application, enabling the music streaming service to be used in diverse environments and situations. My ambition is to create a cohesive music experience that offers seamless usage through a unified user interface in the desktop environment.

Milestone 4: Completing Initiated Tasks for Balanced Progress (4th month)

The fourth milestone serves to conclude the tasks that were initiated but not completed during the previous three milestones. This becomes necessary as it might happen that certain milestones require more work than initially estimated. This stage ensures balanced progress in all areas, so that every detail of the project can reach the fifth milestone in a detailed and ready state.

Milestone 5: Project Finalization and Release the Stable Version (5th month)

In the fifth milestone, based on user feedback, I correct the remaining errors and refine the user interface (UI) and user experience (UX), and aim to make the application future-proof and scalable. This can significantly contribute to the success of the project. In this milestone, I also aim to release the stable version of the project.

Milestone 2: Web App Integration and Testing (2nd month)

The second milestone focuses on integration and testing. I will develop a comprehensive testing plan to ensure that new features operate flawlessly across different devices and browsers. This phase also involves refining based on user feedback and addressing any UI issues that arise.

Milestone 3: Preparing and Optimizing the Stable Version (3rd month)

In the third milestone, I will focus on preparing and optimizing the stable version of the web application. This phase concentrates on improving performance and scalability to support future growth. The goal is to deliver a stable, efficiently functioning web application to the users at the project’s conclusion.

Potential risks that will affect the outcome of the project:

  • Streaming music is dependent on the Sia network, as every music file (Our music library) is stored and served from the Sia network.
  • SkyMusic uses the S5 network, so the application is dependent on this network.

Development Information

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

Yes, coding will be open-source.

Link where code will be accessible for review:

Development: SkyMusic · GitHub

Project Link

Website: https://skymusic.app/

Do you agree to submit monthly progress reports?

Yes, I agree.

Contact info

Email: [email protected]

IMPORTANT INFORMATION

Allow me to share some important information regarding the SkyMusic project. I am deeply grateful for the support the project has received; its development is progressing excellently. My previous experience with the Sia network enabled me not to start from scratch and acquire many new insights that can be further utilized in the project’s next phases.

Here is a brief summary of the project’s additional results so far:

  • I have created a middleware API, which is crucial in handling API requests, thereby enhancing the system’s security by ensuring limited access.
  • I have prepared the project documentation, which is currently a public GitHub repository and available on the https://docs.skymusic.app/ website. I am continuously developing this documentation.
  • The project’s website, which presents the application, is separate from the application itself and can be found at https://skymusic.app/ . I cannot make the website public since its style conflicts with licensing limits, although this does not affect the application’s functionality, where I have applied a proprietary design. If this is a problem, then within the scope of this grant, I will create a landing page for the web application demo, which will naturally be open source.
  • Moreover, I am continually developing our music library.

It is important to illustrate how uploading a song practically works:

  1. I search artists who create music under the Creative Commons license.
  2. I contact them via email to permit their music to be used in the SkyMusic project. Although this would not always be necessary, I consider this step ethical.
  3. After obtaining permission, I begin uploading the songs, typically received in WAV format. The upload process requires the provision of only a few details, which I aim to further optimize for speed and simplicity. With the middleware API, I automatically convert the tracks into Opus format in various qualities (320, 160, 80, and 40 kbps), then upload them to the Sia network through the S5 network automatically and add the data to the database.
  4. The files do not automatically enter the web application, providing an opportunity to make corrections in case of erroneous data. If everything is in order, I can easily update the songs in the database.

Forecasting maintenance costs, I’ve somewhat simplified it because the costs depend on several factors:

Assuming the application streams music content at 160 kbps quality, as recommended, it generates 72 MB of data traffic per hour. Currently, the average download price: (per TiB) is 5.93 USD (Sia Satellite). Based on this, I calculated that approximately 2456 hours of music listening generates 1 USD of cost.

So, the project will have one source of revenue, which is the donations detailed in the support system.

Introducing the support system:

The application’s support system is built on two main elements.

  • Application Maintenance Costs: This is the most critical element, enabling the application’s operation. Users can directly support the costs necessary for the application’s operation, ensuring its uninterrupted maintenance.
  • Personal Support: Users also have the opportunity to directly support the person or group behind the application. This support does not directly affect the application’s operation but can contribute to the project’s long-term sustainability and development.

Considering the project’s current status and needs, I would like to continue working along the future plans. I am highly motivated and would like to push my other projects and work into the background to fully concentrate on the SkyMusic project. Until now, I could only work on the project part-time, which was a significant disadvantage since I could not focus my full attention on it. Now, understanding the path to make the project more stable and future-proof – especially important for the Sia network as the application can increase network usage – I detailed my plans within this grant.

I intend to work on the project full-time to complete it as soon as possible and allow users to stream music smoothly. If possible, I would like to start the next phase of the project in May.

The web application is available here: https://beta.skymusic.app/

Should you have any questions, I am readily available to discuss the details further.

Thanks for submitting your updated proposal to the Sia Foundation Grants Program. After review, the committee is requesting more info and recommending some changes to this grant.

  • Building a web app, mobile app, and desktop app all within a three month period is quite ambitious and our committee would like to see a focus on just the web app for this grant.
  • They’d also like to see a better budget breakdown.
    • “Maintenance costs and other expenses (e.g. storage, marketing)” should be more precise if possible. What maintenance costs are you specifically referring to? Also, marketing is something that the Foundation will not fund.
    • “Expanding our music library” should either be removed, or have some context actually provided. As it stands, the committee can’t fund that as they don’t know where the money is going or for what purpose.

We’ll leave this grant in the Proposed section for now. If you wish to update your proposal after considering our comments, please update your original post rather than commenting with the changes.

Thank you for your feedback. I have updated my original plan as requested. The project will now solely focus on the development of the web application over the next three months. I have prepared a more detailed budget that accurately lists the maintenance costs and other expenses. Additionally, I have removed the marketing costs from the budget. Based on the suggestions, I have also removed the “Expanding our music library” section. I hope these modifications meet the committee’s expectations.

Thanks for the updates to your proposal. After review, the committee has approved this grant!

The committee appreciated your commitment to streamlining the work by removing the desktop and mobile app development, as well as the removal of marketing and license expansion milestones.

We’ll reach out to your provided email address to begin onboarding to the program, which can take up to a couple of weeks. This should be a quick process because you are a previous grantee. We’ll discuss any timeline adjustments that might be required as a result.

Progress Report (June)

What progress was made on your grant this month?

  • I have further developed the app design, with particular attention to the mobile appearance, although I have made a few minor changes to the desktop version as well.
  • I have expanded the search function, which is now available on mobile devices.
  • I have started developing an interactive globe solution similar to the one you can see on the https://sia.tech/ website, to make the application even more interactive in the future.
  • I have updated the web application’s documentation and plan to refresh it frequently as I continue developing the app, due to the frequent changes. I have particularly focused on updating the Installation Guide and the Usage Guide.
  • I have started replacing the Firebase database with a Supabase solution (Because Supabase is an open source project). This process is expected to be completed within 1-2 weeks. Once finished, I will update the documentation.
  • Additionally, I am continuously working on creating content for our social media and Discord pages to grow our community. Furthermore, a YouTube video is being produced to showcase the SkyMusic project. Due to the testing period in July, I consider it crucial to build and inform the community.
  • I have improved several components in the application and added new ones as well.
  • Additionally, I have created a Bootstrap version of the website, which is now open source. And added more sections and informations to the website.
  • Finally, I have also extended my private music library.

Links to repos worked on this month:

https://github.com/skymusicdev/site

What will you be working on this month?

  • I aim to complete the Firebase to Supabase integration.
  • I would like to conduct comprehensive testing on the application.
  • I aim to complete the interactive globe solution to make the application even more engaging and interactive for users.
  • To add more features to the web application, and improve user experience.
  • Continuously updating the web application’s documentation.
  • I would like to add more sections and informations to the web application website. And I would like to improve the web application design.
  • I would like to expand my private music library.

Progress Report (July)

What progress was made on your grant this month?

  • I have replaced the Firebase database with a Supabase solution (Because Supabase is an open source project).
  • I have updated and added some new blocks to the web application website part.
  • Fixed some bugs and improve the web app functionally. For example, the playlist update has been added, which now allows you to listen to playlists in addition to music.
  • I have updated the web application’s documentation so users and developers will understand the operation of the web application sooner.
  • Created a showcase video of the project. And after the Sia Community Call, I will publish on social media the video.
  • I have improved several components in the application and testing the application functions.
  • I have finished developing an interactive globe solution similar to the one you can see on the https://sia.tech/ website, to make the application even more interactive in the future.
  • Fixed a minor problem about the music converter part in the Middleware API.
  • Finally, I have also extended my private music library.

Links to repos worked on this month:

What will you be working on this month?

  • I would like to release the live version of the web application.
  • I would like to develop and research the stability and scalability of the web application.
  • To add more features to the web application, and improve user experience.
  • I would like to update the web application website landing page to a complete website with 5-10 subpages.
  • Continuously updating the web application’s documentation.
  • I would like to expand my private music library.

Hello @mozes

Thank you for your progress report!

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

Progress Report (August)

What progress was made on your grant this month?

  • I have updated and added some new blocks to the web application website part.
  • Fixed some bugs and improve the web app functionally. For example, I added more settings options, skeleton screen loading and music listening history component.
  • I have developed and researched the stability and scalability of the web application.
  • I have continuously updated the web application’s documentation so users and developers will understand the operation of the web application sooner.
  • I have improved several components in the application and testing the application functions.
  • I have updated the web application’s landing page into a complete website with 5-10 subpages.
  • I have simplified the music upload process in the admin interface. Now, it’s no longer necessary to convert CID separately in the database, as everything is handled automatically with the help of the Middleware API.
  • Finally, I have also extended my private music library.

Links to repos worked on this month:

What will you be working on this month?

  • I am pleased to announce the upcoming release the live version of the web application, where every feature has been carefully developed to work perfectly. Since it’s not an overly complex application, I conducted the beta testing privately. There are still a few final touches to be made before I take it live. I plan to launch the live version on September 12th, 2024. I hope it will appeal to all music enthusiasts. :)
1 Like

Hello @mozes

Thank you for your Final Progress report!

A member of the team will reach out to your regarding the wind-down of your grant.

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