A local-first tracker for private investments and other off-custodian assets
A local-first tracker for private investments and other off-custodian assets.
/Velfi/ is a small desktop application for tracking investments that are not managed by a bank or custodian.
It is designed for portfolios that contain private or unlisted assets such as private equity, fund interests, private debt or other investments that need to be recorded manually.
Velfi tracks issuers, assets, investments, revenues, commitments, valuations and currency exchange rates. Reports can be generated per asset or across the entire portfolio.
All portfolio data are stored locally in a single file or in the browser’s local storage if used inside a browser.
Check out the Browser version of velfi.
| Platform | Link |
|---|---|
| macOS | Download for Mac |
| Windows | Download for Windows |
Older versions are available on the Releases page.
.dmg file from the link aboveOpen the DMG and drag Velfi into your Applications folder
As long as we haven’t signed the app, you have to manually un-quarantine it:
xattr -cr /Applications/velfi.appor wherever it is
.velfi files will be associated with the app automatically.exe installer from the link aboveWhen you launch Velfi you start with an empty portfolio.
Use File > Save As (Cmd+Shift+S / Ctrl+Shift+S) to save it as a .velfi file.
The home screen shows a list of issuers. An issuer represents a legal entity (company, fund, etc.) that holds assets.
Each issuer has:
Click Add to create a new issuer, or Details to open an existing one.
Inside an issuer, you manage its assets. Each asset represents an individual investment position.
Each asset has:
| Type | Description | Key Fields |
|---|---|---|
| Equity | Non-listed private company stock | Sector, Ownership (%), Founding Year |
| Preferred Stock | Preferred shares w./ liquidation preference | Series, Liquidation Preference, Dividend Rate, Valuation Cap |
| SAFE | Simple Agreement for Future Equity | Valuation Cap, Discount Rate, Pro-rata Rights |
| Warrant | Right to purchase shares at a fixed price | Strike Price, Expiry Date |
| Convertible | Convertible note or loan | Valuation Cap, Discount Rate, Interest Rate, Maturity Date |
| Private Debt | Direct lending / private loan | Interest Rate, Maturity Date, Seniority |
| Bond | Fixed-income security | ISIN, Coupon, Maturity Date |
| Listed Equity | Publicly traded stock | ISIN, Ticker, Exchange |
| Fund | LP interest in a private fund | Vintage Year, Strategy, Manager |
| Other | Any other asset type | — |
Click Details on an asset to manage its transactions:
Go to Settings to manage currencies. Velfi supports multiple currencies with historical exchange rates. The base currency is used for consolidated reporting.
Exchange rates can be fetched automatically from the Frankfurter API via the rate settings page. Select monthly or quarterly frequency and click Fetch Rates.
From any asset detail page, click View Report to see a periodic breakdown (yearly or quarterly) of investments, revenues, units, valuations, and net asset value.
From the home screen, click View Report to see a consolidated annual report across all issuers and assets, with values converted to the base currency.
Both reports can be:
Portfolios are saved as .velfi files (JSON format). They contain all
issuers, assets, transactions, currencies and exchange rates in a single
file. Document references (investment confirmations, contracts, etc.) are
stored as relative paths to a configurable document folder.
| Action | macOS | Windows |
|---|---|---|
| Open | Cmd+O | Ctrl+O |
| Save | Cmd+S | Ctrl+S |
| Save As | Cmd+Shift+S | Ctrl+Shift+S |
| Quit | Cmd+Q | Ctrl+Q |
Velfi is built with Wails v2, using Go for the backend and SvelteKit for the frontend.
wails dev
wails build
The built application will be in the build/bin directory.
cd frontend
npx vitest run