Akash Deploy Website

Developer Award Application

Proposal: Akash Deploy Website

Contact:

1. First & Last Name: (optional)
SpacePotato :slight_smile:

2. Email Address:
spacepotahto@gmail.com

3. Akash Wallet Address:
akash12maevnhvagm97wwdxwsxtpnevst94hyp9fvdgz

4. Akashian URI:
TBA

5. Time Zone:
EST

6. Language:
JavaScript/TypeScript and Python mostly. Oh and English.

Social Networks

7. Discord Username:
wabam#3288

8. Discourse Username:
SpacePotato

9. Github:
spacepotahto

10. Twitter:
N/A

11. LinkedIn:
Private

12. Website:
TBA

13. Blog:
TBA

Experience:

14. Are you a developer or software engineer?
Software Engineer

15. Are you currently involved in Akash’s Discord developer community channel? (discord.akash.network)
Yes, been there since Akash testnet 2 before mainnet 2.

16. Have you deployed on Akash’s Mainnet or Testnet? (docs.akash.network)
Yes, on both.

17. Do you have other team members?
No

18. Are you looking for additional team members?
No, but if you’re a visual or UX designer and interested, please reach out!

19. Are you interested in working on Akash full-time? Akash is hiring engineers and contractors. Learn more here: Careers | Akash Network
Yes! But it’s not quite the right time for me to leave my current position yet.

20. What Cloud hosting services do you currently use? (Amazon/Google/Microsoft)
A bit of AWS, GCP, DigitalOcean.

21. How much do you pay per month for Cloud services / hosting?
~$1000

22. How did you hear about this program?
I’ve been keeping up with basically all the Akash channels since testnet 2, and I saw the first proposal of this on forum.akash.network.

Product Vision:

23. What is your project?
To build a self-contained (i.e. no setup or installation necessary) Akash Deploy Website with Keplr integration. I built a basic but functional one for the Gitcoin Akash Deploy UI Hackathon, and my submission can be viewed here: Akash Deploy UI Challenge (SpacePotato) - #3 by SpacePotato. I hope to receive funding to build a much better version of it, that takes advantage of a complete AkashJS library (proposed at AkashJS - Akash JavaScript Library), with a redesigned UI and improved UX.

24. What is the problem you will solve?
Although the Akash CLI is pretty fun to use, it can be daunting for newcomers. A deploy UI can lessen the learning curve and reduce friction considerably. The community agrees, and built a number of deploy UIs (Deploy UI Tools) to this end.

The two most popular ones right now are Akashlytics’s Desktop Deploy UI by @baktun14, and the Deploy Tool by @tombeynon . The former features a beautiful UI and polished UX, but the tool requires installation, is only supported on Windows and Mac currently, and utilizes an in-house wallet solution. The latter runs in the browser and integrates with the Keplr wallet, but requires a local instantiation of a docker container that runs the Akash binary. I believe the ideal UI is something that combines the best of both worlds and doesn’t require user installation, i.e. a website that one can simply visit, paste in their SDL, click deploy, and pay through their Keplr wallet. Such a website is as cross-platform as Chrome and Brave is, and when combined with an intuitive interface, would further increase the accessibility of Akash.

25. What are your goals?
My goal is to create a deploy website that makes deploying onto Akash hassle-free and fun, both for newcomers and Akash CLI experts. Aside from requiring a Keplr wallet account with AKT in it, there is absolutely no installation or setup necessary. One can just visit the website and be able to click a few buttons to deploy (think Uniswap).

26. What impact will this project have on the Akash developer community?
I believe this project will reduce the barrier to using Akash, both for developers who are dockerizing their apps and creating SDLs, and developers who are consuming SDLs provided by others. With the SDL, anyone can deploy onto Akash easily using the website.

27. Who will use your project when it’s complete?
Anyone who wants to deploy something onto Akash using a website + Keplr wallet!

28. Will you monetize your project?
No

29. Will you open source your project?
Yes

Product Leadership / Drive:

Refer to my answers from AkashJS - Akash JavaScript Library

Product Execution:

37. How would you utilize the grant funding?

  • Pay for indefinite hosting of the website, probably on Akash.
  • Pay for a domain name, to set up HTTPS (required to use browser Web Crypto APIs to manage certificates, among other technical reasons).
  • If applicable, pay for a visual/UX designer (see #18).
  • Whatever is leftover I’ll using to support myself as a developer and indefinite maintainer of the project.

38. Have you already started this work?
I built a basic but functional one for the Gitcoin Akash Deploy UI Hackathon, and my submission can be viewed here: Akash Deploy UI Challenge (SpacePotato) - #3 by SpacePotato. However, I plan to rebuild it using a complete AkashJS library (AkashJS - Akash JavaScript Library) and with a redesigned UI and improved UX.

39. Do you have a GitHub or website for your project?
The GitHub of the version I submitted to the Hackathon is here: GitHub - spacepotahto/akash-deploy-ui
but I’m planning on starting a new repo for a (hopefully much better) rewrite.

40. How will this task be accomplished?
By lots of coding, see milestones below, and iteration based on community feedback.

41. How would you break this work up into 3 or 4 phases / milestones?

Milestone 1: Website Scaffolding
Involves visual design and building out the website wireframe.

Milestone 2: Certificate and Deployment Workflow
Involves building out and integrating the components necessary for certificate management and deployment.

Milestone 3: Deployment Management
Involves building out and integrating the components necessary to manage deployments, e.g. to view them, close them, and query provider logs.

Milestone 4: SDL Gallery
At minimum, this involves building out an SDL Gallery section similar to what I had in my hackathon submission, that allows one to browse the AwesomeAkash SDLs and easily choose one to deploy.

However, my vision for this is something where the community can easily contribute SDL templates, and define UI elements to help generate specific SDLs for deployments. For example, someone can contribute a PKT miner template, and also define additional UI elements where the user can specify the desired deployment resources and mining pools, and the final SDL can be generated and deployed. Basically, one wouldn’t need to understand the SDL format to obtain an SDL. Details still need to be worked out. In the future, @zJu 's AwesomeAkash+ Proposal: AwesomeAkash+ API will also be utilized.

42. How many months of work will this project require?
1 to 2 months (assuming 1 to 2 weeks per milestone) to complete Milestones 1 to 3, and the minimum for Milestone 4.

More time will be needed (probably an extra week or two) to achieve the Milestone 4 vision.

43. What’s the expected amount of funding required for your project?
$10,000

Product Progress:

44. Will you open source your project?
Yes

45. How do you plan to share your work with the community once complete?
I plan to post on Discord, this forum, maybe Telegram, and to write Medium articles.

46. Will you report your progress to the community every month?
Yes, I will keep the forum updated with my progress.

47. Do you have any screenshots, videos, or other context you can share?
I built a basic but functional one for the Gitcoin Akash Deploy UI Hackathon, and my submission can be viewed here: Akash Deploy UI Challenge (SpacePotato) - #3 by SpacePotato. Video demo here:
Akash Deploy Website (SpacePotato) - YouTube

As you can see from the video, the deploy website allows complete deployment, from certificate creation to obtaining deployment details, all in 1.5 minutes and 3 mouse clicks. With this project, I’m planning a visual redesign, improved implementation, and will uitlize a finalized version of AkashJS (proposed here AkashJS - Akash JavaScript Library), so it can only get better from here!

Developer Associations:

48. Are you associated with any accelerators, incubators, venture capital firms, or startup funds?
No

49. Are you associated with any startup communities?
No

50. Are you associated with the Cloud Native Computing Foundation (CNCF)?
No

51. Are you associated with any open source projects?
No

52. Are you associated with any of the Akash Network core team members?
No

Legalese:

53. Are you a resident of, citizen, or located in a geographic area that is subject to UN, US, EU, Swiss or any other sovereign country sanctions or embargoes?
No

54. Are you over the age of 18?
Yes

7 Likes

Mega excited for this !!!

2 Likes

Also excited! This would lower the barrier to entry immensely.

2 Likes

Love everything about this. I think a hosted deploy tool is really necessary - something a developer can play with before committing to downloading any software etc. I can see a place for a few different types of deploy tools, and this sits nicely alongside Akashlytics app based deploy tool.

I love the code from your first iteration of this project, and I think it’s a great idea bringing it inline with ovrclk/akashjs project and potentially furthering that too. I couldn’t be more on board with this :rocket:

2 Likes

Thanks @tombeynon , and I absolutely agree that it’s best to have multiple options for deploy tools!

2 Likes

Loving what I am seeing here.

1 Like

We will fund this issue with up to $1,000! The CAB will need to vote to extend this to $10,000!

1 Like