Spending by category
Where this month's money went.
Open source and fully themeable, built for AI products and coding agents.
Typed, keyboard-ready and checked with axe. Every card below is live in your theme.
Where this month's money went.
Payroll runs, due dates, and filings in one view.
Compared to the month before.
Bill a client in their own currency.
What happened over the past day.
Answers grounded in your own transactions.
Nothing overdue
Every invoice is paid or inside its terms.
Statements are generated on the 1st of each month.
Find any transaction, client, or invoice.
178 components on 327 semantic tokens, one package.
npm install rift-dsSix weeks from closing the books to the filing.
One cell per trading day; darker means more trades.
A background agent matching invoices to deposits.
Monthly, in thousands.
Ask in plain language; pick the model behind it.
Active goals across your accounts.
When your cleared balance is sent to the bank.
Hover a city for the client and the invoice it settled.
Against the index, in thousands.
Hover a city for the currency and how fast it settles.
By market value.
| Ticker | Shares | Value |
|---|---|---|
VGRO | 412 | $14,830 |
XEQT | 260 | $9,215 |
ZAG | 705 | $8,904 |
Click the deck to flip through the virtual cards you've issued.
Pick the day the money should move.
Choose which alerts reach you.
The agent pauses before anything irreversible.
This transfer is larger than your usual amount.
This month, most recent first.
The minimum balance before a payout is triggered.
From issue to payment in eleven days.
Start from a template: a whole product screen, made from the same components, in your theme.
Complete themes, light and dark.
<html data-brand="mono">Real props and tokens over MCP, no key needed.
MIT licensed, by npm, the shadcn CLI or a clone.
npm install rift-ds
npx shadcn@latest add https://rift-ds.com/r/button.json
git clone https://github.com/robritacca-dotcom/rift-dsA React design system on npm as rift-ds: 178 components, the semantic tokens they are styled from, theme presets, template screens and an AI chat you can drop into an app. Every page of this site is built from it.
No. Components are styled with plain CSS that reads the tokens, so there is no CSS framework to set up. React 19 and React DOM are the only required peers. Recharts is needed for the charts alone, and the AI chat brings a few optional packages of its own.
Run npm install rift-ds, import the token stylesheet once, then import components by name. To own the source instead, add any component from the shadcn registry. Get started has both paths.
Yes. A public MCP endpoint serves every component's props, the tokens and the install steps to any MCP client. npx rift-ds init adds agent skills that teach your agent the library, how to move an existing screen onto it, and how to audit styles against the tokens.
Yes, all of it. Every colour, radius, typeface, spacing step, shadow and duration is a token, and the components are styled from those tokens. Change a token and every component that uses it follows, in light and dark, with no component code touched.
The playground is the quick way in: move the sliders or drop in an image of your brand, then export the result as CSS. The 13 themes in the package are there to use as they are or to start from: import presets.css once, then each is one attribute, data-brand on the root element.
Both, from one token layer. Set data-theme="dark" on the root element and every semantic colour switches, in every theme.
Yes. The chat never talks to a model directly: it reads a stream of small events from your server, one JSON object per line. {"type":"delta","text":"…"} carries the reply as it is written, a status event shows what the agent is doing, and {"type":"done"} ends the turn.
To use OpenAI, Gemini, a local model or your own agent, write a route that calls it and turns each streamed chunk into a delta line, then point createFetchTransport at that route. You can also skip the server format and write a transport in the browser: one function that takes the conversation and yields the same events.
The packaged server half is built for Claude, so the quickest start is an Anthropic key and npx rift-ds init chat, which scaffolds the route and the mount. Add the chat lists every event the panel reads.
Yes. The package is MIT licensed, every component included. Use it in commercial and client projects with nothing to buy and no key to register.