Open Net Worth
Open Net Worth is an open-source personal AI wealth assistant you run yourself: one ledger for your whole financial life, worked by an AI agent you control.
翻訳待ち
No updates detected yet. GitHub releases will appear here.
A personal multi-chain crypto portfolio tracker that runs entirely in your browser. Ethereum, Solana, Base, Arbitrum, HyperEVM, Robinhood Chain and more. No account, no backend, no API key required.
翻訳待ち
Loading the full README. The saved excerpt is shown below.
A personal multi-chain portfolio manager that runs entirely in your browser.
Track every asset you hold, across every wallet and blockchain you use. No account, no backend, no API key required.
Paste in the addresses you want to watch, name them, and OpenPort shows you what they're
worth — combined, or one wallet at a time.Read the full README ↗A personal multi-chain portfolio manager that runs entirely in your browser.
Track every asset you hold, across every wallet and blockchain you use. No account, no backend, no API key required.
→ Try it live at openport.ehlabs.xyz
Paste in the addresses you want to watch, name them, and OpenPort shows you what they're worth — combined, or one wallet at a time.
It costs almost nothing to run. One Multicall3 batch per chain covers every token for
every wallet at once, so cost scales with how many chains you use, not how big your
portfolio is. Prices and token logos arrive in a single CoinGecko call. Refresh is a button,
never a background poll, and results are cached — reopening the app makes no network calls at
all. A typical setup sits comfortably inside a free Alchemy tier, or skips Alchemy entirely.
It won't lie to you. A chain that fails to load is shown as failed, never as $0. A total
built from incomplete data says so. Assets without a price show their quantity rather than a
made-up value. The 12-month chart is honest about being an approximation, and clamps itself to
the date your wallet first appeared on-chain instead of drawing a year of fiction for a wallet
you created last week.
It can't touch your funds. Addresses only. There is no signing path, no wallet connection, and no private key input anywhere in the codebase.
| Network | Chain ID | Type | Public RPC works |
|---|---|---|---|
| Bitcoin | — | UTXO | ✅ |
| Ethereum | 1 | EVM | ✅ |
| Robinhood Chain | 4663 | EVM (Arbitrum L2) | ✅ |
| Base | 8453 | EVM | ✅ |
| Solana | — | SVM | ✅ |
| Arbitrum One | 42161 | EVM | ✅ |
| Hyperliquid HyperEVM | 999 | EVM | ✅ |
| Hyperliquid HyperCore | — | native L1 | ✅ |
| Abstract | 2741 | EVM (ZK rollup) | ✅ |
| Tempo | 4217 | EVM | ✅ |
| MegaETH | 4326 | EVM | ✅ |
| Blast | 81457 | EVM | ✅ |
| Keeta | — | custom | ✅ |
Every endpoint shipped by default was tested from a browser. Endpoints that look healthy but send no CORS headers are useless to a client-side app, so they aren't included.
Note: Hyperliquid is read twice, because it is two systems sharing one address. HyperEVM is the EVM execution layer; HyperCore is the native L1 holding your spot balances and perps account, which is invisible to
eth_calland needs Hyperliquid's own API. Both are keyless.
Note: Robinhood Chain is Robinhood's Ethereum-compatible L2 for tokenised real-world assets. It is not the Robinhood brokerage, and OpenPort has no connection to any brokerage account.
git clone https://github.com/ivaavimusic/openport.git
cd openport
npm install
npm run dev
Open http://localhost:3000, go to Settings, and add a wallet address. That's it — no key, no signup.
Prefer not to run it yourself? The same build is hosted at https://openport.ehlabs.xyz — it's the identical client-side app, so your wallets and keys still never leave your own browser.
OpenPort works without one. Adding a free Alchemy key in Settings unlocks:
| Without a key | With a key | |
|---|---|---|
| Token balances | Major tokens only (curated list) | Every token you hold |
| Solana SPL tokens | ✗ public nodes refuse the lookup | ✅ |
| NFTs | ✗ needs an indexer | ✅ |
| EVM tax export | MegaETH only | All EVM chains |
| Wallet age (chart clamp) | Solana only | All chains |
If you add a key, enable the networks you want in your Alchemy dashboard — they're off by default per app, and OpenPort will tell you which ones are switched off.
Settings → RPC endpoints. Each network has a list you can extend with +. Your own
endpoints are tried first, then Alchemy, then the public fallbacks, with automatic failover
down the list.
Everything lives in your browser's localStorage. There is no server, no database, no
telemetry, and no account.
One honest caveat: an Alchemy key in localStorage is readable by any script running on the
page. That's normal for a personal tool on your own machine, but don't paste a key with
billing scope you care about. Since public RPCs are the default, most people never enter one.
The Tax Export tab fetches a single wallet's history and downloads it as a CSV with
Date, Asset, Amount, Fee, P&L, Payment Token, ID, Notes, Tag, Transaction Hash.
Solana uses signature history with balance-delta accounting, so swaps and multi-instruction
transactions come out right. MegaETH uses Blockscout. Other EVM chains use Alchemy's transfer
API. Where a source doesn't report fees, the UI says "Not reported" rather than showing 0 as
if you paid no gas.
This is the beginning of the README. Read the rest at the original. Read the full README ↗