Why I’ve Decided to Build a Desktop App Next

2025-02-12 · Ryan X. Charles

The webapp hosted at earthbucks.com runs on every platform, including mobile and desktop. However, there is a problem with the webapp when building and launching the peer-to-peer (P2P) network: each mine and each wallet will have a separate UI, which will divide the user experience, development efforts, and marketing efforts across a heterogeneous field of front-ends that will be difficult for end-users and the company to manage.

I believe the best solution is to build a desktop app first and a native mobile app second. The webapp hosted at earthbucks.com will continue to exist but will be regarded as the easiest entry point for new users, while the ideal user experience will actually happen on desktop (and mobile for users on the go).

Solving Problems with a Desktop App

The desktop app solves the following problems:

  • Mining on multiple mines simultaneously: Right now, there is only one mine hosted at earthbucks.com. When the other mines launch at compucha.com, ninjabutton.com, and others, it will be very cumbersome for users to switch mines. Putting the mine client into a desktop app will allow easily switching from one mine to another with a simple drop-down box.
  • More reliable mining app: Although the first desktop app will use WebGPU, just like the webapp, long-term, using a desktop app fundamentally enables any technology to be used for mining, such as CUDA directly on Windows or Linux.
  • Real decentralization: By building a real client-side application, the user will be able to seamlessly switch from mine to mine and wallet provider to wallet provider all within the same desktop app, proving real decentralization of the EarthBucks network. So long as the app is tied to a domain name like earthbucks.com, like the current webapp, that’s not possible. Liberating the client-side app from any particular domain name is maximal decentralization.
  • Many assets: Instead of forcing every mine to support EBX and other assets such as BCH, BTC, LTC, etc., protocols can be created to enable the desktop wallet to use any “blockchain service provider” with plugins, thus theoretically enabling the client-side desktop app to support any digital asset without requiring every server to support everything.
  • Decentralized exchange: A true decentralized exchange can be built this way where the user can hold, for example, both BCH and EBX in the same client-side desktop wallet and then access a distributed order book on the EarthBucks blockchain to engage in trade. A desktop app is the best way to do this because it is the best way for an app to “stay online” and sign messages when necessary, such as signing and sending a transaction when a trade is made.
  • Client-side reliability: If one server goes down for any reason, many functions will seamlessly transition to another server, or will already be using many servers (such as querying headers), and the user will not even notice the difference. Some functions can’t be done automatically (like moving keys), but they can be done with a few clicks. This enables true custody of client-side assets, unlike a webapp which always depends on the existence of a particular server.
  • Fleshing out the API for apps: By building all the core features into an open-source desktop app, I will have to create all APIs necessary not only for my own apps but also for third-party apps as well. This means all the APIs needed for exchanges like Binance and wallets like Exodus will be created, making it possible for third parties to begin integrating EarthBucks, or to begin building new businesses from scratch that leverage the EarthBucks network.
  • The appearance of decentralization: Not only does the desktop app have some superior decentralized properties, such as independence from any particular domain name, it also provides a greater appearance of decentralization, which will be helpful to prove to new users that EarthBucks is not just an app hosted at earthbucks.com, but is a truly decentralized network. It will also enable companies to build alternatives or complements to the main desktop app.

Experimenting with Electron

I will be building the desktop app using Electron. I have never built an app with Electron before, so this will be an experiment. However, based on my research, it should work flawlessly. There will be a testnet blockchain with the new desktop app first, and if all goes well, I will switch the network over to use the new P2P protocol. From that point forward, the desktop app will be the primary app (the webapp, which works on desktop and mobile, will continue to exist, but the desktop app will have more features).

The Coming EarthBucks Network

The new desktop app will be both a mining app and a Simplified Payment Verification (SPV) wallet as described in the original Bitcoin white paper. The app will use a new tRPC-based P2P network that works over the web, where the most foundational difference with the web is that every mine and wallet provider must have a domain name in order to act as a node on the network.

In building the P2P network, the following features of the API for mines will be implemented:

  • Querying all block headers
  • Querying blocks and transactions
  • Submitting new blocks and transactions
  • User registration and settings such as avatar

The desktop app will provide a unified experience for managing your identities across every mine and wallet provider and fulfill the vision of a scalable client-side SPV wallet for end-users, while leaving mine operations to professional businesses.

A Vision for a Mobile App

Many users, perhaps most, spend more time on a mobile phone than on a desktop or laptop computer. It is imperative, long-term, to have a native mobile app for sending and receiving EarthBucks and tokens. However, building a mobile app is a completely different technology stack than building a desktop app. The desktop app will be built first, and the mobile app will be built second.

Conclusion

The desktop app will be the primary app for EarthBucks, and the webapp will be the easiest entry point for new users. The desktop app will be the most feature-rich and reliable way to use EarthBucks and will be the primary way to mine and use the network. A mobile app is also very important, but that requires completely different technology to build, so it will come second.


Earlier Blog Posts


Back to Blog

Home · About · Blog · Privacy · Terms
X · Telegram · Discord · reddit · GitHub
Copyright © 2025 EarthBucks Inc.