Horizon is a client-facing API server for the Stellar ecosystem. It is how developers connect their applications to Stellar Core. SDF currently maintains three Horizon SDKs: Javascript, Java, and Go.

Early this year we reached out to developers in the ecosystem to get their feedback on Horizon. We’ll use this quarter to focus on improving the Horizon admin and developer experience.

Mid/Late Q2

Bring Horizon SDKs to parity with Horizon server

The three SDF-supported Horizon SDKs don't all support every Horizon server feature. We want developers to be able to use whichever one they are most comfortable with, so we need each SDK to have full functionality. Therefore, we’re adding full Horizon server feature support to each of the ones we maintain.


Create technical spec for Core/Horizon API

We will define a schematized API for how Horizon fetches data from stellar-core. The new approach will remove the tight coupling between Horizon and the stellar-core database, reduce load on the stellar-core database from Horizon, allow stellar-core to update its DB schema without needing Horizon changes, and improve Horizon ingestion performance. It should also make it easier to build non-Horizon systems on top of stellar-core via a simple and stable API. This is just the planning step, implementation will happen later in 2019.


Add transactions that fail in consensus to Horizon

Horizon's original design ignores transactions that are submitted to the network (and thus pay a fee) but that fail to execute due to issues like an insufficient balance or a bad sequence number. This behavior has two main consequences: users can be charged a fee but not see how that happened when examining their transaction history, and the Horizon /fee_stats endpoint will do a poor job of estimating accepted fees if a majority of transactions fail. The former is important for users to have precise accounting of their account balance, and the latter is important for wallets to ensure that transactions execute in a timely manner during surge pricing conditions. We are adding a configurable feature to Horizon in v0.17.2 to make it ingest failed transactions as well, resolving both issues.


Whittle down the Github PR and issue backlog

Community engagement in Horizon development is extremely important to us. We will reduce the backlog of PRs and issues in Github from 2018 and earlier. Going forward, we will respond within 3 weeks to new Horizon issues and PRs in Github.

Stellar Core

Stellar Core is the software that nodes on the network use to achieve consensus and validate transactions. It’s the backbone of Stellar, and SDF is currently working to make it more efficient, more responsive, and easier to install and maintain.


Improve decentralization while preserving performance

More validators will join the network if a Stellar node can run on medium-range hardware. Towards that goal, we will improve data access to stellar-core's database (by implementing batching and prefetching). We will add safeguards for bad archives and allow full validator discovery and quorum configuration by Q3.


Make node management faster and easier

It should be easy to maintain a Stellar validator or a watcher node. We will eliminate exposure of unreachable peers to speed up connection times, develop ways to define and measure peer quality so that people can better understand network topology, and define and measure quorum quality to make it easier for people to create safe quorums.


Maintain a consistent ship schedule

We will have 6 Minor Releases in 2019; one each in February, March, May, June, August, and October. We will push 3 Protocol upgrades; one each in Q2, Q3, and Q4. In Q2 we will migrate the SDF infrastructure to a new production environment.


Product at SDF entails everything from the brand and messaging for Stellar to building SDKs for Stellar-based apps. SDF’s product team also publishes open-source tools that make Stellar more powerful and easier to use.


Redesign Stellar.org

The Stellar.org website has needed an overhaul for a long time. Work on this is well underway. We anticipate that the new site will be up May 1st.


Publish More Content

We will publish use case explainers and walkthroughs for core concepts like Decentralized Trading and Asset Issuance. We will also publish a human-readable SCP explanation. We will also post more often about what we and important partners are achieving. We will continue to improve and post to our new Developer’s Blog as well.


Make Better Tools

We’ve begun reworking the Dashboard and the Laboratory to make them more useful. We’ve begun building a SEP6 validator (rough version here) and plan to add one for SEP1 as well.


Create an open-source Wallet SDK

We will create a first-class, open-source Stellar Wallet SDK. This will make Stellar easier to build on, and strengthen the network. For example, fiat tether issuers will be able to use Stellar knowing that wallets can uniformly support in-app deposits and withdrawals of their token. By Q3, we will have at least one high-quality, high-impact project using our new framework.


Improve Kelp

Kelp is a trading bot library designed to make it easy to make markets on Stellar. The project was launched last summer and is now being maintained by SDF. We will address currently open community PRs/issues. We will extend the library for usage on centralized exchanges. We will enable historical indicator-based trading strategies and provide a way for the community to share trading strategies with one another.


Continue work on Lightning-like Payment Channels (aka Starlight)

Last year, we laid the groundwork for lightning-like payment channels on Stellar, and Interstellar built a bidirectional preview implementation, which they called Starlight. However, Stellar is still several months away from fully supporting a lightning-like experience. Hiring more engineers to finish this work is a top priority.


Stellar’s social and developer communities are among the most active in fintech, and one of SDF’s primary roles is to support the people and teams who build on and talk about the Stellar network.


Increase community and marketplace presence

We will increase SDF presence across our online channels, as well as increase support for local events around the world. We will have a Stellar Conference in 2019.


Integrate more community feedback

Last year, we announced a process for Core Advancements Proposals — proposals to change or improve the Stellar Core protocol. Any approved CAP will be implemented into Stellar-core within 6 months of finalization. CAP005 and CAP006 will be in Stellar 11.0.0 (our April 2019 release). New CAPs will receive feedback within two weeks. We will also have all development-related conversations (unless ops or security related) in stellar.public on Keybase.


Collaborate with ecosystem projects

We want to form real, ongoing relationships with the teams doing meaningful work on Stellar. We want to do a better job sharing the design, engineering, and product expertise that we’ve assembled here at SDF. Above all, we’d much rather collaborate with our community of developers than simply dispense lumens.

So, to help important projects become better participants in the Stellar ecosystem, we will be providing detailed product and development guidance, targeted grant rewards, and sometimes working directly on the projects themselves. This is what the Stellar Developer Program, announced in December, will be.

  • Stellar.expert: supporting their headcount growth as they develop StellarExpert ID and also improve the information design and functionality of their ledger explorer.

  • AnchorUSD: supporting improved brand messaging and user experience.

  • StellarX: supporting their continued development as an open interface to Stellar’s decentralized exchange.

In 2019, we will identify at least 7 other projects for detailed engagement and support. Our goal is to see meaningful growth/improvement in at least 7 of the 10 projects we collaborate with. Because of the amount of work each new project will entail, we ultimately decided not to take applications; SDF will instead reach out to prospective partners. Emerging projects will for this program continue to receive support via the Stellar Community Fund. We will announce the specifics of the Community Fund on Mar 20th.



Hire more good people

Hiring is a top-level goal for SDF. We will grow the core team by at least four engineers, add at least two major senior executives, and build out a marketing and content team to accomplish our communications goals. We already have the nucleus of a product team, but we will have 6 people working on Stellar products and ecosystem tools by the end of the year.


Increase clarity around SDF’s lumen holdings and distribution plans

A full accounting of SDF’s projects, grants, XLM holdings, and plans for those holdings is long overdue. By year-end there should be complete clarity around all SDF’s activities and assets.

The Stellar Roadmap is for informational purposes only and subject to change. Do not rely on what’s presented here to make decisions with regard to the sale or purchase of XLM. The value of any blockchain asset is subject to market and other risks.