Hey y’all! It’s about that time of the week again. Welcome to another issue of the Stellar Dev Digest, a weekly recap of all things related to the development of the Stellar Network.
What is Stellar? Stellar is a platform that connects banks, payments systems, and people. Integrate to move money quickly, reliably, and at almost no cost.
Featured Developer Posts and News from the Week
The world of cryptocurrency is a slow, beautiful evolution, working towards an exciting goal of global financial inclusion… sort of like a butterfly.
First we had #HODL
During the #HODL stage of crypto, there was literally nothing you could do with your crypto (well, besides buying drugs and cool things on the Silk Road). Wallets were primitive, applications non-existent, and exchanges hacked nearly every month. Thus, the only logical thing to do was to hold your crypto, using a paper wallet stored in an underground bunker in case of a zombie apocalypse. Obligatory link to original HODL forum post.
Next we had #BUIDL
During the most recent crypto winter (when our caterpillar friend turned into a cocoon), the wonderful Ethereum community began what became known as the #BUIDL stage. This stage saw the rise of some fantastic applications, my personal favorite being CryptoKitties, MakerDao, and EosKnights. Stellar saw some exciting projects come to fruition as well: StellarX, Solar Wallet, and Keybase’s Stellar integration. This stage, still very much going on today, represents the transition from creating blockchains to creating blockchain applications and safe, usable crypto wallets.
Now we have #USEL
I believe we are, in the coming years, approaching the transition to the final stage, #USEL. This stage is the most exciting, but also the most challenging to uncover because it requires a solid foundation in distribution (#HODL) and application development (#BUIDL). With Stellar’s Keybase Airdrop, we have #HODL. With the wonderful developers featured in this digest, we have #BUIDL. So how can you #USEL? The goal of this new section of the digest is to answer this question!
XLM → USD: Keybase and Path Payments
The simplest way to use your XLM is to send it, as a payment to someone else. However, you are not limited to just sending XLM… you can send ANY asset that the recipient has explicitly chosen to accept (with a trustline). Let’s say I want to send $1 to Kolten. I don’t hold USD because I think its too stable; I enjoy volatility. However, Kolten just bought me a candy bar and I want to pay him back. I could send him XLM, utilizing the conversion rate provided for me by Keybase, but Kolten doesn’t want XLM, he wants a USD stable coin. With Keybase this is incredibly simple — you just need to select the destination asset, the send asset, and how much you want to send… it does all the black magic calculations for you! Within five seconds, I have paid back Kolten in full, and I am munching on my favorite candy bar (a Crunch Bar, thanks for asking!).
Application of the Week
Tree3 Network is a “decentralized platform for micropayments, offchain data and blogging powered by Stellar and IPFS.” Tree3 offers a whole suite of tools (and helpful documentation) for online content creators who are looking for additional, or alternative ways to raise money for their work. Just recently they released a CLI tool which provides various options for storage and management of digital identity, content and syncing data between (tree3) nodes. If you are interested in getting involved, there are many ways to do so — learn more here.
Interested in promoting your own project, or another exciting project in the ecosystem? If so, please make a submission here.
Updates to Stellar Protocol (CAPs) and Core
This week I am going to combine the protocol and stellar-core sections as we now have three — yes three! — CAP’s in the Implementation Review stage of the CAP cycle. For those new to Stellar, or generally unfamiliar with CAPs and Core, let me clarify a few things.
Core Advancement Proposals (CAP) are a formal way of documenting proposed standards to improve various aspects of the Stellar Network. These function similar to EIPs and BIPs from the Ethereum and Bitcoin communities respectively. CAPs represent the culmination of many discussions that often take place on the Stellar Developer Google Group.
CAPs go through the following life cycle:
- Draft: a CAP that is currently open for consideration and actively being discussed
- Awaiting Decision: a mature and ready CAP that is ready for final deliberation by the CAP Core Team
- Final Comment Period: after one week has passed, during which any new concerns should be addressed, the CAP will head towards its intended disposition [Acceptance/Rejection] or go back into a Draft state
- Accepted: a CAP that has been accepted on the merits of its idea pre-implementation, and is ready for implementation
- Implementation Review: a CAP that has a preliminary implementation, often in the form of a PR (pull request). During this time the proposal is brought up again before the protocol group for additional comment
- Implemented: a CAP that has been implemented with no issues brought up during Implementation Review, with the protocol version specified in the CAP
- Final: a CAP that has been accepted by a majority of validators (nodes) on the network
Stellar-core is the backbone of the Stellar network. It maintains a local copy of the ledger, communicating and staying in sync with other instances of stellar-core on the network. Optionally, stellar-core can store historical records of the ledger and participate in consensus.
So which CAPs are in the Implementation Review stage?
CAP-0024: right now
PathPaymentOp lets you specify how much the recipient will receive while the amount sent can vary. This CAP introduces an option to specify the send amount while the amount received can vary. You can follow the progress of this CAP’s implementation here.
CAP-0025: this CAP introduces simplifications to the bucket list data structure in stellar-core, such that the new bucket merge logic results in different buckets, than ones produced by previous versions. You can follow the progress of this CAP’s implementation here.
Calls for Participation
Looking to get your hands dirty and not sure where to begin? The Stellar ecosystem is full of open source projects looking for help. The following projects are interested in some help and are very likely willing to offer mentorship in exchange:
awesome-stellar (Markdown): A curated list of Stellar applications, blog posts, educational resources, tools, and more
- Add more projects to the developer: useful tools section 👈 (Easy one!!!)
Stellar Vanity Wallet Generator (Rust): generate Stellar vanity wallets
scala-stellar-sdk (Scala): Scala Sdk for the Stellar network
astrocore (Rust): Stellar-core implementation in rust
Kelp (Go): a free and open-source trading bot for the Stellar universal marketplace
Stellar Go Monorepo (Go): Stellar’s public monorepo of go code
State of the Developer Ecosystem
While we certainly witnessed many bug fixes, new feature implementations, and general code improvements, there were no new SDK, Horizon, or Stellar-core releases this week.
Upcoming Events and Days of Note
Looking to work on Stellar full-time?!? Check out the list of job openings below:
Did I Miss Something?
Darn, I knew it! If you found that something from this issue is missing or inaccurate, please open an issue here or message me (r_durst) on Keybase and I will get around to it ASAP. Thanks!
Disclaimer: this is entirely an endeavor of my own, in no way, shape or form endorsed by or a result of my employment with the Stellar Development Foundation.