@espicodes

Engineering @JupiterExchange Co-founded @abklabs. Core contributor on @metaplex DAS, @triton_one Yellowstone OSS, @anza_xyz Codama.

Joined August 2017
Pinned Tweet
Yellowstone Vixen is now Shipstern, under the Solana RPC Working Group. From hand-written parsers at Holaplex to Janus, the data backbone of @JupiterExchange. The full story and what's next. Using Shipstern? Reply, I want to hear how it can serve you.
4
14
3
40
8,890
Shipstern 0.11.0 is out. The Codama proc-macro now honours every IDL length prefix (u8/u16/u64/u128, big-endian, shortU16), not just borsh's u32 LE. Misaligned fields are fixed. Updated to codama-nodes 0.13, unsuffixed integer literals in generated parsers. Rewrote Anchor IDL to shipstern parser documentation. 3 weeks. 3 releases. github.com/solana-rpc/shipst…
2
2
13
644
Generating a Shipstern parser from an Anchor IDL, end to end. Convert the IDL to Codama, point the proc-macro at it, and get typed account, instruction and event parsers. Covers discriminators, the program-events feature, and self-CPI events from emit_cpi!. github.com/solana-rpc/shipst…
1
1
148
shipstern-jetstream-source stays at 0.9.0 on crates.io until anza-xyz/jetstreamer cuts an Agave 4.x release. Use it as a git dep at the v0.11.0 tag until then. Thanks to @senzenn and @Aursen for the PRs.
1
88
Now this is a compliment.
Replying to @jords @espicodes
can’t teach that, espi n jords already cool tho
2
193
Shipstern 0.10.0 is out. Agave 4.2.2 stack. Transaction V1 (SIMD-0385) now decodes end to end: the V1 message variant, its inline compute budget, and the Jetstreamer replay path that used to fail on it. spl-token-2022 v11 brings the PermissionedBurn extension. DeactivatedStake rewards and exact commission basis points are forwarded from Agave 4.2. Requires Rust 1.93+. 18/19 crates published, jetstream-source follows once upstream Jetstreamer ships an Agave 4.x release. github.com/solana-rpc/shipst…
2
4
16
974
Shipstern 0.9.0 is out. Live filter updates on the Yellowstone gRPC source. Take a RuntimeHandle, patch the filter set with update_filters, the subscription is replaced mid-stream. No reconnect. Also: Transaction V1 (SIMD-0385) support with the inline compute budget on InstructionShared, Prefilter now covers the full Yellowstone subscription surface (memcmp, datasize, lamports, data slices, accounts_exclude, vote, interslot_updates), DISCRIMINATOR constants on generated types, and CPI event envelopes read straight from the IDL. Breaking if you match exhaustively on PrefilterError or build prefilters with struct literals. Builder users unaffected. github.com/solana-rpc/shipst…
1
3
1
20
2,786
Steal from the poor, give to the rich. Really living up to the Robinhood name. Oh wait… that’s not how the story goes.
Robinhood users are getting raped. I don't know how to say this. I don't mean to fud or hurt your feelings, I genuinely love all of you and wish you nothing but the best in life. - Robinhood fees did $8.2m in a single day with only 14M transactions. - Solana fees were $531k that same day with 309M transactions. - Solana users paid only 6.5% of Robinhood's total fees to execute 22x more transactions than Robinhood. On RH you are paying more for an objectively slower and shittier user experience. Read this again and choose wisely. I love you.
1
280
Smells like GUM.
You don’t need a bridge anymore. Introducing Universal Deposit. Send a token from any supported chain and receive USDC in your Solana wallet. Universal Deposit handles the routing, bridging, and swapping automatically: - Send funds from the wallet you already use - Deposit from Ethereum, Base, Arbitrum and Sui - No bridge apps, network switching and extra transactions - Flat $0.30 fee, whether you send $100 or $10M The most seamless cross-chain transfer experience is here. All roads lead to Solana
4
36
905
I'll share more context on this exciting revelation this weekend, but in the meantime, all you devs using Yellowstone Vixen should take note.
Yellowstone Vixen is now Shipstern. Repo moved: rpcpool/yellowstone-vixen → solana-rpc/shipstern. Same framework, new name. crates.io: yellowstone-vixen 0.7.0 stays up new releases publish as shipstern 0.8.0 Update your crate names when you migrate. If you consume the gRPC stream or Any type URLs, read the 0.8.0 notes first package paths moved from vixen.* to shipstern. github.com/solana-rpc/shipst…
2
9
733
An integrator who has switch to the new Metis binary observed a 2x improvement in p99 quote latency. Let us know what you'd like to see in future releases.
Metis Binary v7.1.0 is out v7.1.0 is live: - 9 new AMMs added - faster routing with pruning + interpolation - fixed Pump Mayhem sell failures - fixed Raydium CLMM SOL/USDC and PumpSwap hop routing - fixed dynamic slippage errors github.com/jup-ag/metis-bina…
1
3
1
29
6,656
The Portfolio V2 API is powered by an on-chain data layer we've built at Jupiter over the last 6 months. Portfolio is the largest product we've shipped on it, but not the first. It already tracks historical account state for Jupiter Lend, powers our mobile notifications, and gives our business analytics real visibility. At its core is Yellowstone Vixen, a Solana data framework I started while working with @triton_one and was lucky enough to keep developing at @JupiterExchange alongside a new set of talented engineers (@KinoDataEnjoyor , @TheOnlyOrex). Vixen turns raw on-chain events into structured data. Sources are pluggable, so Dragon's Mouth gRPC, RPC, and snapshots all normalize through one parser and handler pipeline. We write the decoding logic once. On top of that, our data layer maintains a program registry that tracks IDL revisions, and handles consistency, ordering, and persistence. One foundation, many products. Today it tracks 75+ protocols and we're adding more every day. We can gain visibility into any program on Solana as soon as it ships or updates. In the coming days Yellowstone Vixen will be renamed Shipstern and join the Solana RPC GitHub organization, alongside Cloudbreak, a Postgres backed RPC for getProgramAccounts, and Superbank, Solana ledger data in ClickHouse served over JSON-RPC. It continues Jupiter's commitment to making Solana more accessible. github.com/rpcpool/yellowsto…
The best onchain portfolio tool just got even more powerful. Introducing Portfolio v2. 10x faster. 10x sleeker. 10x more useful. For the first time ever, you can now actively manage your DeFi positions directly from within Portfolio. Borrow, lend, withdraw, repay, swap, close, claim, and more, all from the same screen. Take control of your onchain assets, don't just look at them. jup.ag/portfolio
2
8
598
At @JupiterExchange we built and operate our own transaction-sending network, so your trades go straight from us to the leader. We continually benchmark it against the top transaction-sending services to ensure your trades are not only safe but also fast. The result: the lowest sandwich rate of any trading venue.
Everyone compares trading fees Nobody checks where is lowest sandwich rates Same $100k of volume, four apps, last 30 days: • Axiom 8.84 bps = $88.40 to bots • GMGN 4.42 bps = $44.20 to bots • FOMO 0.58 bps = $5.80 to bots • Jupiter Ultra 0.06 bps = $0.60 to bots Here's what's actually happening: A bot sees your swap, buys the token in front of you, your order fills at the worse price it just created, then the bot sells into it That's a sandwich 147x difference between Axiom and Jupiter Ultra, 10x between FOMO and Jupiter Ultra with same trade Most of that gap is slippage, the wider you set it, the more a bot is allowed to take
12
9
2
85
17,504
Yellowstone Vixen v0.7.0 is out 🚀 This release is all about making production indexing more reliable while improving data completeness. Highlights: • Jetstreamer upgraded to v0.5 Block rewards now forwarded Block entries included Built-in stats tracking Graceful shutdown support • Yellowstone gRPC now auto-reconnects by default with replay-aware recovery (when supported by the server), making transient outages much less painful. • Block coordinator is significantly more resilient: Better historical backfill Correct skipped-slot handling Handles late arriving records • Runtime rewritten with a native worker pool for bounded concurrency and much cleaner shutdown semantics. • Proc macro migrated to codama-rs events, bringing numerous parser fixes, SPL Governance support, improved Kafka error reporting, and more robust IDL generation. • New downstream APIs: InstructionUpdate::direct_log_messages() Flat instruction indexes • Added pToken instruction support. There are a few breaking changes for projects constructing config structs directly (JetstreamSourceConfig and YellowstoneGrpcConfig), but existing config files continue to work thanks to serde defaults. Thanks to everyone who contributed! Looking forward to seeing what the community builds with it. github.com/rpcpool/yellowsto…
1
6
1
11
1,206
This would not happen on @solana and wire time measured in seconds instead of days. Sending money with traditional banking is so frustrating yet is a basic banking primitive. The change is inevitable.
1
9
1,226
Had to make @JupiterExchange Ron and claimed Harry for @triton_one 😜
5
272
Thrilled to represent @JupiterExchange in the Solana RPC Working Group. Even more excited to see Cloudbreak released, which brings to life early prototypes and design patterns I developed while contracting with @triton_one. My old team and I are immortalized in the authors list: github.com/solana-rpc/cloudb…
Introducing the Solana RPC Working Group Its mission is to advance Solana's open-source RPC stack, making the read layer more accessible for all. Built in the open by @triton_one, @Helius, @JupiterExchange, @anza_xyz, and @SolanaFndn 🧵
6
5
2
43
5,062
Finishing up my game and using GPT-5.5 for ability icons. The icon on the far right was generated by GPT Image 2 as a reference. The icons on the left were hand-drawn with a JavaScript script written by GPT-5.5. Hilarious. Building @FAANGorigins on nights and weekends.
2
160