Standard Grant: Dartsia Mobile App V2

Standard Grant

Introduction

Project Name: DartSia Mobile App

Name of the organization or individual submitting the proposal:

James Brel tamegno

Egoume Mouyong Rekiyatou

Project Description :

Dartsia is a mobile application which aims to allow users of the sia ecosystem to access a Renterd node and be able to interact with it. The Sia application platform is full of a wide range of software to enable the storage and sharing of data and among these software, renterd is the most efficient. Renterd allows users to store data on the Sia network and also to be able to interact securely with the network, but the problem that arises in turn comes from the fact that users of mobile devices do not have the possibility of accessing the network from their phone. It is for this reason that we considered creating an application that would allow easy access to a renterd node (even for novice users) while ensuring the security of their data.

During our previous grant, we made the application fully functional by developing the following features:

  • Login : Be able to connect to a rented host using its IPv4 or DNS address and password.

  • Network Overview : This functionality allows you to display real-time data on the state of the Sia network as well as its interactions (Numbers of active hosts, Total Network storage, Total used storage, Storage Price per TB)

  • Host Research : This functionality allows you to list all the hosts available and active on the network.

  • Show Host informations : This feature allows you to display all of the host’s information as well and its scoring.

  • My Host Overview : Allows you to display the operating information of your host and see its operating status

  • Modify Host Parameters : This feature allows you to easily modify your host’s configuration settings.

  • Buckets and file management (70%) : This functionality gives the possibility of managing Buckets on your renterd host as well as all files and folders (Creation of folders, Uploading of files, Renaming of files, Deleting files and moving files).

  • Communication Middleware : We created a middleware application in Go to ensure the communication functions between the application and Renterd, initialization and recording of user connection information and especially encryption of traffic via SSL and AES256 protocols.

During this new phase of our project, it will mainly be a question for us to improve the application with new features to allow end users an optimal use. We will try to rework the UI / UX part of our application and then make the features that could not be completed fully functional and finally we will work on additional features among which:

  • Implementation of a file encryption feature
  • Implementation of a phone file backup feature similar to Google drive
  • Implementation of the notification functionality
  • implementation of a file viewer compatible with several file types (documents,videos…)
  • Implementation of a sqlitedb backup system for the Renterd server

Timeline :

This second phase of our project will be divided into 5 months, each month corresponding to a set of milestones :

Milestone 1 : (4 Weeks)

  • Create the file viewer functionality
  • Create the file sharing functionality
  • Publish the app on Apple Store
  • Integrate test and Deploy the New Features
  • Send the sia Grant Report

Milestone 2 : (4 Weeks)

  • Create the Notification system (Middleware Service)
  • Create the Notification system (App service)
  • Change the file encryption system
  • Integrate test and Deploy the New Features
  • Send the sia Grant Report

Milestone 3 : (4 Weeks)

  • Implementing host scoring for the host list
  • Implementation of the error management system
  • Fixing non-functional features
  • Integrate test and Deploy the New Features
  • Send the sia Grant Report

Milestone 4 : (4 Weeks)

  • Create the phone system on app backup

  • Redesign the mobile APP to optimise the User Interface

  • Integrate test and Deploy the New Features

  • Send the sia Grant Report

Milestone 5 : (4 Weeks)

  • Real time upload statut
  • ChunKed upload function (Large file spliting)
  • Integrate test and Deploy the New Features
  • Send the sia Grant Report

Budget :

To be able to carry out this project, we are requesting a total budget of $41250. As indicated in the terms of the Sia Foundation, the budget will be used monthly and at each Milestone. The use of this budget will be made according to the following points:

Milestone 1: Budget $8250
Flutter Developer Salary (Frontend) $4000
Go Lang Developer Salary (Middleware) $4000
Cloud hosting service $250

Milestone 2: Budget $8250
Flutter Developer Salary (Frontend) $4000
Go Lang Developer Salary (Middleware) $4000
Cloud hosting service $250

Milestone 3: Budget $8250
Flutter Developer Salary (Frontend) $4000
Go Lang Developer Salary (Middleware) $4000
Cloud hosting service $250

Milestone 4: Budget $8250
Flutter Developer Salary (Frontend) $4000
Go Lang Developer Salary (Middleware) $4000
Cloud hosting service $250

Milestone 5 : Budget $8250
Flutter Developer Salary (Frontend) $4000
Go Lang Developer Salary (Middleware) $4000
Cloud hosting service $250

Potentials risk to the project :

The potential risks that can affect the completion of our project can be numerous and varied. Here are some of the most common risks:

Financial risks: This includes project budget overrun, exchange rate fluctuations during monthly payments, unexpected costs related to cloud resource consumption, etc.

Risks linked to deadlines: Delays in the development of the modules of our package, planning problems over the duration of the milestones, unforeseen difficulties can lead to delays in the completion of the project.

Human Resources Risks: This includes loss of key team members, internal conflicts, competency issues, etc.

Technical risks: Problems related to technology (framework to use, external packages, etc.), tools, equipment, software or hardware can affect the progress of the project.

External risks: This includes unforeseen events such as illness, legal or regulatory changes, political issues, etc.

It is essential for the success of a project to properly identify, evaluate and manage these risks throughout its implementation.

Development Information :

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

All of our project will be open source and under the MIT Licence

Leave a link where code will be accessible for review : GitHub - DartSiaProject/siahost

Do you agree to submit monthly progress reports ?

We agree to submit the progress report every month on the dates mentioned on the Notion board.

Contact informations :

Email: [email protected]

Any other preferred contact methods:

Linkedin : https://cm.linkedin.com/in/brel-james-172a89202

Thanks for your proposal to the Sia Foundation Grants Program.

The committee will be meeting next on October 15, 2024. They will attempt to review your grant then, but the number of current proposals may push this to the following meeting on the 29th.

Hi @innovtech, we have some early comments on this proposal before review on the 29th.

  • The committee would like to see a demo or video of the work completed during the first DartSia grant
  • You quote three months in your timeline but then list 20 weeks of milestones. Please clarify this.
  • You currently have utility costs (electricity/Internet) in the budget. Please remove these as the Foundation does not pay these costs.

Hello Steve,
We have corrected the errors on the number of months and we have removed the part on the utility cost as you requested.
We have also made a demo video of the application with the features developed during the first phase that you can find here:

It should be noted that we were not able to make a demo of the file management functionality because our renterd server was not able to form the 30 necessary contracts. We will add this demo part to the video once this is done.

Thanks for your latest proposal to The Sia Foundation Grants Program.

The committee is impressed with your proposal so far but is holding off on a formal decision until your video demo of the file management functionality is posted. They did have a specific concern they wanted to pass on:

  • Please provide more info and context surrounding the “Implementation of a sqlitedb backup system for the Renterd server”. The committee wasn’t quite sure what your intention is with this point and would like some clarity.

We’ll keep this in the Proposed section while you work to post that demo and respond to this concern. Thanks!

Hello Steve and thanks to the foundation for the interest on our proposal. We redeployed the server and made the demo video with the manipulation of files from the mobile application.

As for your concern about the backup system for the db.sqlite database of renterd, it will be a question here of setting up to make recurring backups of this DB either on the storage of the mobile, or on an external drive connected to the mobile (Gdrive, Dropbox…).

Hoping that this answers all your concerns and that the committee finds satisfaction at the next meeting.

TBH I am not even sure if this is needed/makes sense b/c the core team is implementing this in renterd directly themselves.

This will allow users to have another backup point outside their Renterd server which will guarantee the security of their local SQLite database and make this task easier for users.

Can you explain what you plan to do exactly?

See Integrate SQLite backup endpoint · Issue #1621 · SiaFoundation/renterd · GitHub

Thanks for your patience while we reviewed your updates. The committee has decided to approve this grant. Congratulations! The linked video was very helpful to determine the current state of DartSia.

We’ll reach out to your provided email address for onboarding and will need to verify your location and bank account location against our updated guidelines of restricted countries. Be prepared to update your timelines to accommodate for onboarding.

Progress made on our grant this month?

During the month of December, we worked on the mobile application by continuing on the integration of the file viewer functions to be able to open pdf, video and audio files from the application.

We also continued with the publication of the application on the Google store in the test phase. We also undertook the publication of the application on the F-Droid store.

Problems Encountered during the work

During this month, we were faced with an availability problem that was mainly caused by the end-of-year holidays.

Links to the repositories worked on this month:

(GitHub - DartSiaProject/siahost)

(GitHub - DartSiaProject/renterd-remote)

What will you be working on next?

For next month, we will finalize the file viewer and finish with the publications on the stores. We will also be working on the notification system in parallel with this.