Our workWeb3 Platform

Lifestory

A life-journal and an NFT world, running in the same tab.

  • Vue.js
  • Python / FastAPI
  • PostgreSQL (self-hosted)
  • Docker

Overview

Lifestory set out to blend two very different ideas into one platform: a personal life-journal, and a Web3 world where users could own a piece of it. On the journaling side, users organize memories into living categories — travel, fitness, food, art, career — each one a timeline of moments rather than a folder of files. On the Web3 side, that same identity extends into ownership: users mint, hold, and trade "planets" as NFTs, stake them for rewards, and manage everything through a token economy built around LIFC.

We built the full stack for Lifestory — Vue.js frontend and FastAPI backend. That meant the frontend had to hold two different mental models at once: a calm, personal archive in one tab, and a live trading dashboard with balances, charts, and countdown timers in the next — without either one feeling like it belonged to a different product.

Engagement
Frontend & Backend
Timeline
~5 months
Status
In production

What we built

Frontend and backend, end to end

Frontend

The full authenticated app: email/Google/MetaMask/WalletConnect login, the dashboard (LIFC balance, claimable rewards, live ETH↔LIFC swap, price chart), the NFT marketplace, staking flows (planet selection, 1/2/3-year term selection, projected returns), a vesting schedule view, and the Timeline module for personal content — built in Vue.js.

Backend

The API layer powering account state, token balances, staking/vesting logic, and the data behind the timeline and marketplace views — FastAPI, containerized with Docker for consistent deployment, backed by a self-hosted PostgreSQL database running on Lifestory's own infrastructure. We built and launched the platform over roughly five months, from initial development through to public release.

Feature gallery

Screens from the shipped product

Sign in, everywhere

1 / 3

Dashboard

1 / 2

Marketplace

1 / 2

Staking & vesting

1 / 3

My Timeline

1 / 2

Profile

1 / 2

The harder parts

Where the engineering really lived

01

Staking and vesting aren't simple toggles

A staked planet has a term, an accrual rate, a claim window, and a countdown — all of which need to stay accurate whether the user is looking at the Dashboard, My Safe, or My NFT's tab. Getting that state to agree everywhere, all the time, was most of the real engineering work.

02

Two products in one shell

The journaling side (Timeline) and the trading side (Shop, Staking, Vesting) have opposite pacing — one is slow and personal, the other is live and numeric. The UI had to switch registers cleanly between them without feeling bolted together.

03

Wallet-based auth alongside conventional login

Supporting email/password and MetaMask/WalletConnect/Google in the same flow, with the same session model downstream, took care to get right.

Outcome

Launched · In production

Lifestory — the platform we built — shipped and went live, running the wallet-connected NFT marketplace, staking system, and personal timeline in production.

Want something like this built? Get in touch

Readyto startthe project?