Porto is now production-ready & fully open source

·update

Porto’s north star is to enable secure and programmable web-native crypto payments & finance without passwords, or browser extensions.

Porto gives application developers everything they need to ship the best apps in a single solution. Porto has out of the box support for Passkeys, fiat on-ramping, batching, paying fees in any coin, gas sponsorship, parallel & idempotent requests, subscriptions & cross-chain interoperability. It also works seamlessly with Privy and other wallet as a service providers.

Porto is already integrated in Uniswap, Relay.Link, Bungee and Eco, and is live on Ethereum, OP Mainnet, Base, Arbitrum One, BSC, Celo and Polygon.

We are excited to share that Porto is ready for production usage. Read our documentation, check the Github and integrate now in 2 lines of code and in less than 1 minute: pnpm i porto, or book a call to learn more.

  import { porto } from 'porto/wagmi'
  import { http, createConfig, createStorage } from 'wagmi'
  import { base } from 'wagmi/chains'

  export const wagmiConfig = createConfig({
    chains: [base],
    connectors: [porto()], 
    storage: createStorage({ storage: localStorage }),
    transports: {
      [baseSepolia.id]: http(),
    },
  })

Porto outperforms alternative solutions by up to 71%, while also providing unique functionalities not available to other providers such as fee sponsorship in stablecoins.

Porto vs ERC4337 Performance Comparison

We are also excited to share that the Ithaca Relay, the high-performance backend in Rust we co-designed with the Porto SDK is also now open source. The Ithaca Relay enables applications to scale their userbase fearlessly, while handling all the complexity of reliably landing high throughput load of transactions within the next block.

Built by the team behind Foundry, Reth, Wagmi, and Viem, Porto enables ambitious payments & DeFi applications to 10x their onboarding & on-chain execution UX via a simple SDK & high performance account abstraction stack.

FAQs

What do Passkeys do?

Passkeys are a more secure and easier way to log in to applications than passwords, used by companies like Apple, Google and Paypal.

Porto passkeys are cross-app, cross-device, and cross-chain, meaning you never need to think about the details; just log in to your crypto-powered app like you’d unlock your phone or laptop.

If you lose the device with your Passkey and didn’t have it backed up (e.g. because you weren’t logged in your iCloud account), Porto will support recovering access to your account via email; this is still being developed so please send us feedback on Telegram.

Does Porto work with OAuth-based providers like Privy or Turnkey?

You can upgrade your users’ EOAs to Porto Accounts using EIP-7702 & use your own key management service, without forcing them into passkeys. That way you can own the UI/UX while accessing Porto’s features headlessly.

Can I change the theme of the Porto UI?

You can customize the Porto UI’s theme to match your application, see our guide on theming.

Can applications execute multiple actions in 1-click?

Porto supports batching by passing multiple calls via the standard Wagmi sendCalls hook.

Can applications sponsor their users’ gas fees?

Porto enables applications to sponsor their users’ fees in any asset of their choice. This lets you fund your application once with USDC or USDT and never have to worry about managing volatile inventory, while owning your paymaster if you want to charge for that feature. There is no API keys or third party vendors involved in this feature. See our documentation for a guide and our examples in NextJS, Vite & Express.

Can users pay fees in stablecoins without owning the native asset of the chain they’re on?

Porto auto-detects if a user does not enough enough of the chain’s native asset (e.g. ETH) and will automatically use stablecoins to pay fees without requiring the user to acquire that native asset. Porto also allows application developers to override that functionality to other supported coins (currently USDC & USDT).

Can I use Porto to implement Sign In With Ethereum?

See our guide on how to enable Sign In With Ethereum on Porto. It is already integrated with Better Auth, RainbowKit, and more platforms coming soon. Works with accounts that have created a passkey but aren’t deployed yet!

Can I use Porto to implement subscriptions or other advanced account automation features?

Porto supports automated, recurring onchain actions via scoped session keys, see EXP-0003 for a demo. Users can approve a secure, limited-capability key to manage recurring payments for automated yield strategies, automated DEX trades without needing to manually sign each transaction.

Does Porto have any solution for users moving funds across chains?

Porto lets you teleport across chains in 1-click without having to use a bridge ever again using our native interoperability feature.

Do you provide a fiat onramp?

We work with fiat on-ramp providers to provide a KYC-less Apple Pay-powered experience up to $500-1000 lifetime, depending on the jurisdiction. Ask for preview access on Telegram.

Users can 1-click onramp to any chain with Apple Pay, without having to KYC, increasing the percentage of new users completing first transaction in under 24h.

Is Porto open source?

Yes, completely! See here for the TypeScript SDK and we also just open sourced the Ithaca Relay, which is the high-performance execution backend for Porto in Rust.

Why build a new account abstraction stack, when ERC4337 already exists?

When comparing Porto to ERC4337, we saw an opportunity for a simpler & cheaper solution that is more opinionated about the smart account, the bundler and the paymaster. At the same time, Porto is built on existing wallet standards like ERC5792 and we are actively contributing our insights into new standards such as ERC8010.

Is Porto secure?

We worked on a 2-week long engagement with Riley Holterhus, Kaden Zipfel and MiloTruck and have fixed any security finds from that audit. We also maintain a 5 ETH bug bounty for any further critical bugs, please e-mail georgios@ithaca.xyz if you think you found one.

Subscribe to updates
Stay in touch with the latest Ithaca products & experiments.