Skip to main content

XVenture

A public directory of solo AI founders, built on the bones of a venture capital marketplace. The milestone-gated funding rails still exist — they now switch on one project at a time.

More screenshots

aiventure-capitalblockchainfundraisingstartup-platformdecentralized-finance
Progress15%
View on GitHub

Overview

XVenture is a full-stack web application that replaces the traditional venture capital gatekeeping model with a transparent, milestone-driven funding marketplace purpose-built for AI startups. Founders list projects with structured milestones and target raises; investors browse, filter, compare, and fund them directly — with capital released automatically when milestones are verified on-chain.

The platform handles the full lifecycle from project discovery to revenue distribution, targeting the gap between early-stage AI founders who can't access traditional VC and investors who want direct, auditable exposure to AI innovation.


Product Features

For Investors

  • Discover & filter projects by category (NLP, Computer Vision, Robotics, ML), risk level, funding stage, and timeline
  • Algorithmic risk scoring across funding velocity, timeline, founder KYC status, and deal terms
  • Side-by-side project comparison (up to 3 projects simultaneously)
  • Portfolio dashboard with real-time milestone tracking, ROI calculations, and revenue distributions
  • Saved searches and personalized AI-driven recommendations based on browsing history
  • Wallet connection via Web3Modal for on-chain investment execution

For Founders

  • Project creation wizard with milestone definition, tranche amounts, and funding target configuration
  • KYC verification flow for investor trust and platform credibility
  • Analytics dashboard tracking funding progress, investor count, and revenue metrics
  • Draft auto-save across wizard steps

Platform-Wide

  • Three-tier role system — founder, investor, admin — with protected routes and separate interfaces
  • Admin moderation dashboard for project approval and user management
  • Demo mode with time-boxed sessions (2hr expiry) and mock data injection, sandboxed from real transactions
  • Replit Auth / OpenID Connect for authentication; session storage in PostgreSQL

Architecture Highlights

Monorepo with a shared schema layer. A single shared/schema.ts file is consumed by both the React frontend and the Express backend. Drizzle ORM schemas auto-generate Zod validators, ensuring form validation and API enforcement stay in lockstep — no hand-maintained dual schemas.

Client-side filtering with server-side state. Projects are fetched via TanStack Query and all filtering (category, risk score, sort order) runs client-side. This keeps the API simple and the UX snappy, with the tradeoff that filter logic and risk scoring live in custom hooks rather than SQL.

Demo architecture without a separate app. Rather than spinning up a separate demo environment, demo users are authenticated with an isDemo flag on the session object. A middleware layer intercepts investment, KYC, and revenue claim endpoints and short-circuits them. Mock projects are injected at the component level in the Discover page so demo users see a fully-populated experience.

Web3 integration as a progressive layer. Wagmi and Viem handle wallet connection and Ethereum interactions, but the platform degrades gracefully for users without a wallet. Blockchain transaction hashes are stored in the database for audit trail, with the core UX not dependent on on-chain confirmation in the current build.

Normalized relational schema with financial precision. The PostgreSQL schema uses decimal types for all monetary amounts and defines explicit status enums for projects (draft → pending → active → completed) and milestones (pending → claimed → verified → released). Foreign key constraints enforce referential integrity across users, projects, milestones, investments, and revenue distributions.


Tech Stack

LayerChoiceWhy
FrontendReact 18 + TypeScript + ViteFast DX, strong typing end-to-end
RoutingWouterLightweight; role-based protected routes
Server stateTanStack Query v5Cache, background refetch, optimistic updates
FormsReact Hook Form + ZodSchema-driven validation from shared types
StylingTailwind CSS + shadcn/ui + RadixAccessible primitives, composable components
AnimationsFramer MotionPage transitions, hover effects
BackendExpress.js + TypeScriptFamiliar, minimal overhead
AuthReplit Auth (OIDC) + Passport.jsSSO-ready, session-based
ORMDrizzle + Neon (serverless PG)Type-safe queries, edge-compatible
Web3Wagmi v2 + Viem + Ethers.js v6Modern Ethereum hook ecosystem
Wallet UIWeb3ModalMulti-wallet support out of the box

What I Built

  • Full product from scratch — schema design, API, auth, frontend, Web3 integration
  • Role-based access control system with three separate user flows
  • Milestone-based funding engine with tranche release logic
  • Algorithmic risk scoring model across five factors
  • Demo sandbox architecture (no separate codebase required)
  • KYC verification flow integrated with investor trust signals
  • Admin moderation tools for project approval and user management

Stack: React 18 · TypeScript · Node.js/Express · PostgreSQL · Drizzle ORM · Wagmi/Viem · Tailwind CSS · shadcn/ui · TanStack Query


The pivot — July 2026

Everything above got built. Then it got mostly switched off, on purpose.

The marketplace assumed two sides would show up at once: founders who wanted milestone-gated capital, and investors who wanted to deploy it. Building both halves is tractable. Filling both halves simultaneously is the hard part, and a funding platform with no listings is indistinguishable from a dead one.

So in July 2026 the product inverted. The public surface is now a verified directory of solo AI founders — browse, search, upvote, follow, no account required. It competes on things a directory can actually win: a Verified badge, an "Alive" badge that auto-delists abandoned projects, and listings structured for AI-driven search.

The funding machinery did not get deleted. Milestone escrow, revenue share, and on-chain settlement on Base L2 are all still there, sitting behind a per-project fundingEnabled flag. A listing is a listing until it qualifies for a raise, at which point the flag flips and the investment flow becomes visible on that project alone.

It is a deliberately smaller front door to the same building. The directory has to earn its listings before the marketplace has anything to sell — and this way the second half ships as a switch, not a rewrite.