I'm Josep M Sobrepere (@josepot), a software engineer based in Barcelona. I have been contributing to the Polkadot ecosystem since September 2021, when I joined Parity Technologies to work on substrate-connect and smoldot.
In early 2024, I left Parity to found Streamsphere Labs, a small company (3 people) dedicated full-time to the Polkadot ecosystem. Streamsphere Labs is the team behind Polkadot-API (PAPI), which has been continuously funded by the Polkadot Treasury since February 2024.
I have spent the last ~5 years building the libraries and infrastructure that Polkadot developers rely on daily. Joining the Fellowship is a natural next step: it gives me a formal role in the technical governance of the protocol I am already deeply committed to, and ensures that the developer-facing layer of Polkadot evolves in step with the core protocol. I want to contribute more directly and consistently to Polkadot's technical evolution, not just by building the tools that consume the protocol, but by helping shape the protocol itself.
Primary author and technical lead - github.com/polkadot-api/polkadot-api
PAPI is the officially recommended successor to polkadot.js for building dApps on Polkadot and Substrate-based chains. I conceived, architected, and built PAPI from scratch while at Parity, and have continued leading its development full-time since founding Streamsphere Labs. Key design decisions I made:
The library has shipped 118+ releases, has 1,326 commits, and is used across the ecosystem by wallets, dApps, and tooling teams. It was transferred from Parity Technologies to the independent polkadot-api GitHub organization in February 2024.
Presented at Polkadot Decoded 2024: "Build a Modern dApp with Polkadot-API", youtube.com/watch?v=fj63gYJmuIk
Active contributor and co-designer - github.com/paritytech/json-rpc-interface-spec
As the primary implementer of the new JSON-RPC spec in PAPI, I identified issues and gaps in the spec itself and contributed fixes and proposals back upstream. Selected contributions:
transaction: add searched eventfinalized event of submitAndWatchinaccessible event on chainHead_unstable_callrpc_methods return valuearchive_v1_storage wrong referencechainHead_unstable_unpin accepting multiple hashes (#46), stop event semantics (#86), system_accountNextIndex alternative (#156)These contributions came directly from building PAPI against the spec and discovering ambiguities or missing guarantees that would otherwise cause subtle client bugs.
createTransaction RFC: Wallet Interface RedesignI authored a detailed RFC proposing createTransaction as a forward-compatible replacement for the signPayload interface used by all Polkadot wallet extensions. The core problem: signPayload predates Metadata V14, cannot support custom signed extensions, and breaks with every non-trivial chain upgrade (e.g. CheckMetadataHash, Extrinsic V5). My proposal defines a TxPayloadV1 structure that passes complete metadata and extension definitions, making it resilient to protocol evolution and compatible with both online and offline signers (hardware wallets, browser extensions).
This RFC has driven ecosystem-wide discussion around the wallet/dApp boundary and is informing how the extension communication protocol evolves.
Significant contributor: github.com/paritytech/substrate-connect
During my time at Parity I made numerous contributions to substrate-connect, the browser extension and library that enables light-client connections for dApps. Selected PRs:
createPolkadotJsScClient (API simplification)healthChecker APIContributor: github.com/paritytech/smoldot
substrate-connect were forced to use any types as a workaround) and standardized client.terminate() behavior between Node.js and browser environments, fixing memory leaks and race conditions.name property to smoldot-light errorsExtrinsicBaseWeight in fee constants. A subtle but important correctness fix: the runtime was using a generic constant that didn't match the value in System.BlockWeights.per_class_normal.base_extrinsic, causing discrepancies in fee calculation tools. Merged March 2024.payout.expire_at field to reset with PayoutPeriod on each valid payout attempt.Since February 2024, PAPI has been fully funded by the Polkadot Treasury through a series of referenda. Starting with a modest 2-month proposal, we progressively earned the community's trust by consistently over-delivering and growing the library from early beta to the de-facto standard for Polkadot application development.
15roJ4ZrgrZam5BQWJgiGHpgp7ShFQBRNLq6qUfiNqXDZjMK