Full-stack product / Live

RiteStack

A clearer decision before the next subscription renewal.

The problem

AI and developer subscriptions accumulate quickly. RiteStack brings renewal dates, spending and keep, cut or pause decisions into one workspace.

What I built

Built and deployed the application, connecting the subscription workflow, authentication, per-user data access and payment entitlement.

Architecture at a glance

A simplified view of the main application components.

  1. 01

    Experience

    Next.js subscription workspace

  2. 02

    Application

    Cloudflare Workers via OpenNext

  3. 03

    Identity & data

    Supabase magic links and row-level security

  4. 04

    Payments

    Paddle checkout → verified webhook → entitlement

Engineering decisions

Isolate data at the database

Per-user row-level security provides a boundary around subscription records.

Verify payment events

Payment entitlement is granted from verified Paddle webhooks rather than trusting a browser redirect.

Keep cancellation explicit

Keep, cut and pause are decision workflows. The product does not automatically cancel third-party subscriptions.

Technology

Next.jsTypeScriptSupabaseCloudflare WorkersPaddle

Current outcome

Live at ritestack.app, with subscription inventory, renewal tracking and spending summaries.

What I would improve next

A useful next step is measuring whether renewal reminders and decision workflows reduce unwanted renewals.

← Back to portfolio