Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create Open Source GUI for Golem in TypeScript #1189

Open
jdegoes opened this issue Dec 13, 2024 · 15 comments
Open

Create Open Source GUI for Golem in TypeScript #1189

jdegoes opened this issue Dec 13, 2024 · 15 comments

Comments

@jdegoes
Copy link
Contributor

jdegoes commented Dec 13, 2024

Golem only has two methods of interaction:

  • The REST API
  • The Command-Line Interface (golem-cli)

Both of these are useful for programmatic purposes, while the CLI is designed mostly for developers in mind. However, neither of these methods are discoverable or provide a high-level graphical user-interface with a wonderful developer experience. While Golem Cloud comes with Console, a high-level graphical user-interface, Console is deeply integrated into the Cloud offering and relies on APIs that don't even exist in OSS or make sense there.

In order to provide developers a new graphical way of interacting with Golem, we wish to sponsor a ticket that is primarily intended for TypeScript developers -- with a shout-out to developers familiar with Effect TS (though use of this library or any other is not required). The end result will be a GUI for Golem that ships with the single executable (even though you could use it elsewhere) and makes it easy for developers to do local development and testing.

In order to claim this bounty, you need two do two things:

  1. Build a TypeScript application that allows graphical management of Golem, supporting all the APIs that Golem supports. This requires knowledge of TypeScript, front-ends, cross-browser development, user-experience, user-interface design (including usability), and developer experience.
  2. Serve the application as part of the Single Executable build of Golem (which bundles everything together in a single executable). This may require a tiny amount of Rust knowledge, but you can probably get by with Google and Copilot.

In particular, the application must support:

  1. Component management. Developers can create, update, and delete components visually. All backend APIs should have a way to perform the function visually.
  2. Worker management. Developers can create, update, manage, and delete workers visually. All backend APIs should have a way to perform the function visually.
  3. API management. Developers can create, update, manage, and delete APIs visually. All backend APIs should have a way to perform the function visually.
  4. Plugin management. All backend APIs should have a way to perform the function visually (chiefly about installing / uninstalling plug-ins inside components and workers).

Although one can take inspiration from Console, this is not necessary, as Cloud is designed for use in a multi-tenant environment, which does not apply to Golem. However, the breadth of support for backend APIs, as well as the polish and attention to aesthetics, should be similar to Console. You are free to make your own decisions on design, user-interface, user-experience, etc. However, if you choose poorly, and your user-interface is ugly, difficult to use, inconsistent, incomplete, or buggy, then your PR won't be merged.

A winning pull-request will include screenshots of every major area of the user-interface and attach pre-compiled single-executable binaries for Linux / MacOS or both.

@jdegoes
Copy link
Contributor Author

jdegoes commented Dec 13, 2024

/bounty $10000

Copy link

algora-pbc bot commented Dec 13, 2024

💎 $10,000 bounty • Golem Cloud

Steps to solve:

  1. Start working: Comment /attempt #1189 with your implementation plan
  2. Submit work: Create a pull request including /claim #1189 in the PR body to claim the bounty
  3. Receive payment: 100% of the bounty is received 2-5 days post-reward. Make sure you are eligible for payouts

Thank you for contributing to golemcloud/golem!

Add a bountyShare on socials

Attempt Started (GMT+0) Solution
🟢 @Mubashirshariq Dec 13, 2024, 3:34:08 PM WIP
🟢 @vikashsprem Dec 13, 2024, 3:37:01 PM WIP
🟢 @neo773 Dec 13, 2024, 3:43:28 PM WIP
🟢 @Myestery Dec 13, 2024, 3:43:34 PM WIP
🟢 @35C4n0r Dec 13, 2024, 4:28:50 PM WIP
🟢 @andrueandersoncs Dec 13, 2024, 4:54:17 PM WIP
🟢 @syedbarimanjan Dec 13, 2024, 5:00:19 PM WIP
🟢 @sonkeydotcom Dec 14, 2024, 11:28:56 PM WIP
🟢 @zelosleone Dec 15, 2024, 1:29:04 AM WIP
🟢 @giraffekey Dec 15, 2024, 4:45:55 AM WIP
🟢 @promisingcoder Dec 15, 2024, 11:21:50 AM WIP

@Mubashirshariq
Copy link

Mubashirshariq commented Dec 13, 2024

/attempt #1189

Algora profile Completed bounties Tech Active attempts Options
@Mubashirshariq 4 bounties from 4 projects
JavaScript, TypeScript,
Rust & more
Cancel attempt

@vikashsprem
Copy link

/attempt #1189

@Myestery
Copy link

Myestery commented Dec 13, 2024

/attempt #1189

Algora profile Completed bounties Tech Active attempts Options
@Myestery 2 bounties from 2 projects
MDX, TypeScript,
JavaScript & more
﹟1178
Cancel attempt

@neo773
Copy link

neo773 commented Dec 13, 2024

/attempt #1189

@35C4n0r
Copy link

35C4n0r commented Dec 13, 2024

/attempt #1189

Algora profile Completed bounties Tech Active attempts Options
@35C4n0r 34 bounties from 7 projects
Python, TypeScript,
HTML & more
Cancel attempt

@syedbarimanjan
Copy link

syedbarimanjan commented Dec 13, 2024

/attempt #1189

Algora profile Completed bounties Tech Active attempts Options
@syedbarimanjan 9 bounties from 4 projects
TypeScript, HTML,
JavaScript & more
Cancel attempt

@decebal
Copy link

decebal commented Dec 13, 2024

/attempt #1189

@rajesh-jonnalagadda
Copy link

rajesh-jonnalagadda commented Dec 14, 2024

@vikashsprem @Mubashirshariq @neo773 @35C4n0r @andrueandersoncs @syedbarimanjan @decebal
Is anyone interested in collaborating?

Reacting with a 👍 or 👎 won’t hurt anyone, and your prompt greatly helps! 😄

@sonkeydotcom
Copy link

sonkeydotcom commented Dec 14, 2024

/attempt #1189

1 similar comment
@zelosleone
Copy link

zelosleone commented Dec 15, 2024

/attempt #1189

@rajesh-jonnalagadda
Copy link

@vikashsprem @Mubashirshariq @neo773 @35C4n0r @andrueandersoncs @syedbarimanjan @decebal Is anyone interested in collaborating?

Reacting with a 👍 or 👎 won’t hurt anyone, and your prompt greatly helps! 😄

@decebal @sonkeydotcom @RougeLoop We are looking for a Rust developer. If you're interested, feel free to reach out to me on Discord: rajeshjonnalagadda_59495

@giraffekey
Copy link

giraffekey commented Dec 15, 2024

/attempt #1189

Algora profile Completed bounties Tech Active attempts Options
@giraffekey 1 bounty from 1 project
JavaScript, Rust,
HTML & more
Cancel attempt

@promisingcoder
Copy link

promisingcoder commented Dec 15, 2024

/attempt #1189

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests