PROFULLSTACK, INC. · OPEN SOURCE · MIT

The open source stack for the agentic era

Packages, CLIs, terminal UIs and MCP servers that work naturally for engineers and reliably for the agents they direct. Pulled out of 170 live products, and still running them.

353Packages on npm
71k+Weekly downloads
263Public repos
170Products running on it

Generated from npm and GitHub on 2026-11-03.

01

Every surface

A library, a CLI, a TUI and an MCP server where it makes sense. Humans get a terminal, agents get a tool, and both call the same code.

02

Agent native

Written for the agentic era. The whole stack is one curl away as Markdown or JSON, so an agent can read the rules before it writes a line.

03

Proven in production

Nothing here is a demo. Each package was pulled out of a live product after a second product needed it, and the fleet still runs on it.

04

Open and portable

MIT licensed, on npm, self hostable. Bare metal or Railway, Turso or Postgres. No vendor holds the keys.

The libraries

Every one is on npm under MIT. Pick the pieces you need; they do not require each other.

Build

The app layer: shared modules, accounts, data, terminals and media.

Stack

Shared modules for Next and Node apps: referrals, email, payments and CrawlProof in one import.

Lib

HQ TUI

btop-grade terminal dashboards for TypeScript from a one-import API. Dark by default.

LibTUI

Orgs

Organizations, teams, members, roles and invites for Postgres. Bring your own users table.

LibCLI

Bridges

Let a host site's signed-in users into an app over OAuth 2.1 with PKCE. No second signup.

Lib

libSQL PG

A drop-in @libsql/client that talks to Postgres, plus the tools to move a Turso database over.

LibCLI

Player

One web player for MP4, HLS, MPEG-TS and audio, with one control bar.

Lib

Form Guard

Contact-form spam stopped with a signed proof-of-render token. No captcha.

Lib

Browser Fingerprint

One vote per browser, not per IP: a salted device fingerprint, a signed challenge, a bot score and limits for anonymous writes.

Lib

Submit Feed

One way to add a feed to a directory, shared by every site that takes one.

Lib

Scraper Daemon

One updater daemon for every listing site: jobs, refresh queues and resumable pipelines, polite and SSRF-safe fetching, SQLite or Postgres state.

LibCLI

Agents

Tools an agent can drive: MCP servers, data bridges and documents it can read.

MCP Server

A generic, modular server for the Model Context Protocol. Add a module, get a tool.

MCP

NicheDB

Browse collections, manage sources and feeds, and search datasets from a terminal or an agent.

CLIMCP

media2md

Turn any video, audio file or book into a chaptered Markdown bundle you can hand to an LLM.

CLIMCP

OpenProfile

Read, write, merge and de-duplicate OpenProfile.md documents for people and agents.

Lib

Profile

One signup profile for every property: email, name, company domain, job title and LinkedIn, in the order sales tools import them.

LibCLIMCP

Agentic Jobs

An agent-friendly job board you self host. It posts its own jobs and never scrapes anyone else's.

App

Proxy

Call the web through residential proxies, with each provider behind one interface.

LibCLIMCPTUI

Money

Get paid by people and by machines: crypto checkout, x402 and pricing instead of 429s.

CoinPay

Non-custodial crypto payments: BTC, ETH, SOL, USDC and more, with x402 verify and settle.

LibCLITUI

x402 Gateway

Sell crawl access to AI training crawlers by the day over x402. Next and Hono adapters.

Lib

x402 Client

Pay x402 402s from JavaScript with a local key: a fetch, a CLI, and axios and got adapters.

LibCLI

Throttle

An app-wide rate limit whose answer to going over is a price, not a 429.

Lib

Keys

Ed25519-signed Power Keys: one key that unlocks every Profullstack service.

Lib

Referrals

A referral program SDK: 60% to the affiliate, 20% off for the new customer.

Lib

Affiliates

Scarce, single-use invite codes with a per-user quota, plus affiliate links with first-touch attribution.

LibCLI

Redeem Credits

Scarce, hashed codes that redeem for one-off or monthly credits, with a balance to spend against.

LibCLI

Ship + operate

Release everywhere, watch everything, and keep the fleet up without a pager.

sh1pt

One codebase to every store, registry, CDN and channel. Build, promote, scale, iterate.

CLI

ThreatCrush

An all-in-one security daemon: monitor, detect, scan and protect servers in real time.

CLITUI

CrawlProof

What the fleet costs and what it returns, in a live terminal dashboard over your traffic.

CLITUI

Watchdog

Notice when Postgres or Redis stops answering, and exit so the platform restarts you.

Lib

Encrypt

Quantum-resistant encryption: ML-KEM-1024 plus ChaCha20-Poly1305, wire compatible with qrypt.chat.

LibCLIMCP

Emailer

Transactional and bulk email through Resend. No SMTP or Gmail transport.

Lib

Every package

All 353 packages in the @profullstack npm scope and all 263 public repos, regenerated from npm and GitHub. Agents read the same list at /stack.md.

Build 53The app layer: shared modules, accounts, data, UI, terminals and media.
  • @profullstack/footer0.6.19source

    Profullstack's distributed footer engine for remote, agent-friendly site branding and navigation.

    Use when: Every fleet site footer and webring row.

  • @profullstack/profile0.1.8source

    The signup profile every property collects: email, first_name, last_name, company_domain, job_title, linkedin_url. It covers validation, signup fields (HTML and React), storage on Postgres, Turso or Supabase, /api/v1/me/profile, CSV export, a CLI and an MCP server.

    Use when: Every signup: collect the six profile fields with this, not a custom form.

  • @profullstack/hqtui0.12.0source

    Terminal UI for TypeScript: btop-grade dashboards from one import.

    Use when: Any terminal UI or dashboard. Do not reach for blessed, ink or a hand-rolled ANSI loop.

  • @profullstack/synconfig0.1.3source

    Sync a tool's config files with its cloud: allowlisted snapshot, digest, optimistic replace.

    Use when: A CLI that syncs its config files with its cloud.

  • @profullstack/auth-system0.8.3source

    Flexible authentication system with user registration, login/logout, password reset, and session management

    Use when: Legacy apps only: it is password + JWT. New apps use magic link + passkey.

  • @profullstack/notifications0.1.4source

    Web push for any app: VAPID keys from env, subscribe from the page, one service worker handler.

    Use when: Web push from any app.

  • @profullstack/live-translate0.3.0source

    Live speech translation for streams and meetings: hear (ElevenLabs Scribe), translate (pluggable), re-voice (ElevenLabs Flash), with per-listener language choices, shared pipelines, CoinPay passes and a free daily...

    Use when: Live speech translation for a stream or meeting.

  • @profullstack/form-guard0.3.0source

    Contact-form spam stopped with a signed proof-of-render token, not a captcha.

    Use when: Any public form that must stop spam. No captcha.

  • @profullstack/stack0.6.0source

    Shared modules for Next apps: referrals, email, supabase, feedback widget, coinpay, crawlproof. Used by 37 repos.

    Use when: A Next or Node app needs referrals, email, CoinPay or CrawlProof wiring in one import.

  • @profullstack/contact-form0.4.0source

    The Profullstack contact form: customizable questions with generic defaults, form-guard spam protection (signed proof-of-render token, honeypot, fill time, rate limit), validation, Resend delivery, HTML and React...

    Use when: A site needs a contact or lead form. This is THE fleet contact form.

  • @profullstack/libsql-pg0.1.4source

    A drop-in @libsql/client that talks to Postgres, plus the tools to move a Turso database over.

    Use when: Moving a Turso app to Postgres, or running @libsql/client code against Postgres.

  • @profullstack/player0.17.0source

    One web player for MP4, HLS, MPEG-TS and audio with one control bar. Knows that Chrome lies about native HLS.

    Use when: Any video or audio on a page. Never add hls.js or video.js directly.

  • @profullstack/hqtui-demo0.12.0source

    The HQTUI reference dashboard: a btop-grade terminal system monitor. Runs on real system metrics or a deterministic simulation.

    Use when: A reference for how an hqtui dashboard is built. Depend on @profullstack/hqtui.

  • @profullstack/leaderboard0.3.1source

    Public leaderboard with badges, streaks and a commission ladder for any site.

    Use when: A public leaderboard, badges or streaks.

  • @profullstack/spa-router1.14.0source

    Simple SPA router with smooth transitions, component loading, and Shadow DOM support

  • @profullstack/text-type-detection1.0.0source

    Detect text format types (plain, markdown, ascii art, code, html, json, xml) from strings

  • @profullstack/autoblog0.4.0source

    CloudEvents and Standard Webhooks SDK for publishing posts to the blogs.

    Use when: Publishing posts to the fleet blogs from an app.

  • @profullstack/r3q0.2.0source

    A REST client for your terminal. Requests are files you can commit; the TUI is just a good way to look at them.

  • @profullstack/favicon-generator1.2.1source

    Generate PNG icons from an SVG or PNG source for iOS and PWA compatibility

  • @profullstack/webhooks0.2.1source

    Webhooks as a feature of any app: customers register endpoints (URL, whsec_ signing key, event patterns like room.*), the app calls emit(owner, type, data), and a durable outbox delivers CloudEvents payloads signed per Standard Webhooks with backoff for about three days, in order per endpoint, switching off an endpoint after 20 failures in a row. Delivery log with payloads, test pings, redeliver, key rotation, optional encryption at rest, https-and-public-address URL checks (no SSRF), a drop-in /webhooks REST API as a fetch handler, memory, SQLite and Postgres stores, and legacy-header helpers for apps moving off their own signing. Also verifySignature / honoHandler for receiving.

    Use when: An API offers webhooks to customers. Every API should.

  • @profullstack/submit-feed0.1.3source

    One way to add a feed to a directory, shared by rssamplifier and p0dcasters.

    Use when: A directory accepts feed submissions.

  • @profullstack/partners0.2.0source

    Let the people whose work is in your dataset sell it: signup, domain verification, payouts.

    Use when: Letting contributors to a dataset sell it and get paid.

  • @profullstack/scraper-daemon0.3.0source

    The updater daemon every listing site runs: periodic jobs, per-item refresh queues and resumable bulk pipelines, with robots.txt, per-host serial fetching, 429 hold-back, SSRF checks and SQLite or Postgres state. Runs on search.peptides, ch4nnels.com, r4ck.dev, rssamplifier.com and p0dcasters.com.

    Use when: A listing site needs its updater: jobs, refresh queues, polite fetching.

  • @profullstack/api-key-manager0.3.0source

    Simple API key management system with generation, validation, and rate limiting

  • @profullstack/orgs0.2.0source

    Orgs, teams, members, roles and invites for Postgres. Brings no users table and owns its schema through migrate().

    Use when: Multi-tenancy: orgs, teams, roles, invites on Postgres.

  • @profullstack/modern-css0.2.0source

    Modern CSS as opt-in classes and @function helpers: subgrid cards, squircles, stuck headers, gap rules, height:auto accordions. Falls back cleanly where unsupported.

    Use when: Card grids, squircles, sticky headers, accordions. Before writing layout JS.

  • @profullstack/state-manager0.8.0source

    Enhanced state manager with web component integration, persistence, and subscription management

  • @profullstack/localizer0.8.0source

    Simple localization and internationalization library with RTL support

  • @profullstack/summary-forge-module1.10.2source

    An intelligent tool that uses AI to create comprehensive summaries of technical books

  • @profullstack/websocket-client0.3.0source

    Robust WebSocket client with connection management, reconnection logic, and message handling

  • @profullstack/transcoder1.9.14source

    A server-side module for transcoding videos, audio, and images using FFmpeg with smart presets and optimizations

  • @profullstack/enhanced-router0.4.0source

    Enhanced SPA router with transition management, i18n integration, and layout management

  • @profullstack/document-converters0.4.0source

    Simple document conversion utilities for various formats

  • @profullstack/multiview0.1.0source

    Several live streams on one screen, driven by mouse, finger or TV remote.

    Use when: Several live streams in one grid.

  • @profullstack/remote-input0.2.4source

    Cross-platform OS input injection for remote control (macOS, Windows, Linux X11 and Wayland)

  • @profullstack/social-poster1.1.0source

    A CLI tool for posting to multiple social media platforms with browser-based authentication

  • @profullstack/ferroframe0.3.4source

    A Svelte-host TUI framework for Node.js - Build terminal interfaces with the power of Svelte

  • @profullstack/g1tz0.2.2source

    A git TUI that shows you the repository, not a menu of git commands.

  • @profullstack/sans-ui1.0.3

    A cross-platform native UI library which supports iOS, Android, Windows, macOS, and Linux using NodeGUI for desktop and NativeScript for mobile. Built with Svelte 4 and web components.

  • @profullstack/storage-service0.4.0source

    Flexible storage service abstraction for file storage, retrieval, and metadata management

  • @profullstack/syncfg0.1.3source

    Alias of @profullstack/synconfig.

    Use when: Never directly: depend on @profullstack/synconfig.

  • @profullstack/lead-generator1.2.4source

    A CLI tool for sending mass lead emails to prospective clients from CSV files with AI-powered personalization

  • @profullstack/autopost0.1.0source

    Typed Node SDK for posting to social platforms via a Crawlproof account. List a user's connected social accounts and publish to them from any Node program, CI job, or CLI.

  • @profullstack/socials0.1.0source

    Safe Playwright scaffolding for authorized social account login automation.

  • @profullstack/ai-providers0.1.0source

    One text-model call for every Profullstack app: c0mpute first, OpenAI and Anthropic as alternating fallbacks, dead keys parked. Zero dependencies.

    Use when: Any text or JSON from a model. c0mpute first, OpenAI/Anthropic as alternating fallbacks, dead keys parked. Not for images or embeddings.

  • @profullstack/bridges0.2.0source

    Let a host site's signed-in users into an app over OAuth 2.1 with PKCE. No second signup.

    Use when: Users of a host site should land signed in to another app (OAuth 2.1 + PKCE).

  • @profullstack/browser-fingerprint0.1.0source

    One vote per browser, not per IP: a salted device fingerprint, a signed challenge, a bot score and limits for anonymous writes.

    Use when: Any anonymous write (votes, sign-ups, quotes, submissions): limit per browser, not per IP. Keeps only a salted hash.

  • @profullstack/email-queue0.2.1source

    Development package in MyNaPoster. Current source includes BullMQ + Redis scheduling, sender authorization, encrypted queue payloads, a PostgreSQL audit adapter and signed Resend webhook handling. Portfolio-wide quotas, production operations and integrations are incomplete.

  • @profullstack/pairux-embed0.1.0source

    End-to-end encrypted voice, video and screen sharing for any web app, on PairUX's SFU. The host app supplies the media key; the server only forwards ciphertext.

  • @profullstack/sealed-secrets0.2.0source

    Store the keys and secrets users give an app so only they can open them: a random data key wrapped under the user's passphrase (PBKDF2-SHA256 600k + HKDF + AES-256-GCM) and a one-time recovery key, AAD binding app, user and field, an ECDH inbox a server can seal OAuth tokens into but never read, and an in-memory UnlockStore with a TTL so workers act only while the user is unlocked. WebCrypto only, zero dependencies, browser to Workers. Byte-compatible with b1dz.com's sealed user_settings. Since 0.2.0 it also ships the Key vault UI: keyVaultCardHtml() markup, a browser controller (progress text, Enter submits, recovery key on the page) to bundle as an IIFE, and framework-agnostic /my/vault route handlers.

    Use when: Storing keys or secrets a user gives the app, so only they can open them; and the Settings Key vault card (vault-card, vault-ui, vault-server) that unlocks them.

  • @profullstack/stream-providers0.1.1source

    Sign a reader into their own streaming or radio account and pull lineups and playable stream URLs from it, one adapter per provider behind one interface: SiriusXM (emailed-code and password sign-in, residential-proxy...

  • @profullstack/stripe-config2.0.7source

    CLI tool and ESM module for managing Stripe products, prices, and Connect accounts across multiple projects

    Avoid: No Stripe anywhere (house rule).

  • @profullstack/post-quantum-helper1.0.0source

    Post-quantum encryption helper using ML-KEM (Kyber) + ChaCha20-Poly1305

    Avoid: Superseded by @profullstack/encrypt.

Agents 18MCP servers, agent tooling and documents an agent can read.
  • @profullstack/readm30.32.0source

    Markdown editing and sharing for people and teams. Web/PWA, CLI, API and MCP with version history, view/edit links, and a terminal reader.

  • @profullstack/group-call0.6.1source

    A group call on a phone number: dial in, key a room code, talk with everyone else who did, people and AI agents alike. Telnyx Call Control state machine extracted from nixamp's party line; the engine behind nixamp live...

  • @profullstack/media2markdown-core0.2.1

    Deterministic media-to-Markdown pipeline: ffmpeg, whisper.cpp, OCR and PDF parsers. No LLM in the loop.

  • @profullstack/agenticjobs0.23.0source

    An agent-friendly job board you self host. It posts its own jobs and never scrapes anyone else's.

    Use when: Self-hosting an agent-friendly job board.

  • @profullstack/media2md0.2.1

    Turn any video, audio file or book into a chaptered Markdown bundle for an LLM. MCP server available.

    Use when: Turning video, audio or a book into Markdown for an LLM.

  • @profullstack/media2markdown-mcp0.2.1

    MCP server for media2markdown, let an agent turn a link, video or book into chaptered Markdown itself.

  • @profullstack/adnetwork0.3.0

    ad.network: run ads, or earn from your site, in crypto. Paste a link and a budget, or paste one tag and add a wallet. Web, API, CLI, TUI and MCP; ads by crawlproof, payments by CoinPay.

  • @profullstack/mcp-server1.6.0source

    Generic modular MCP server.

    Use when: Building an MCP server: add a module, not a new server.

  • @profullstack/submitfleet0.3.0source

    SubmitFleet: launch your product on 339 launch sites and directories from one profile. Prepared submissions, accounts with passkeys, a tracked launch queue, CLI, MCP server and API.

  • @profullstack/proxy0.2.0source

    Call the web through residential proxies, with each provider behind one interface.

    Use when: Fetching the web through residential proxies.

  • @profullstack/tsbb-mcp0.12.1source

    MCP server for a tsbb bulletin board. Lets an AI assistant read and post on any board, as the member whose token it holds.

  • @profullstack/ai-dot-txt1.1.0

    CLI tool to generate ai.txt and llms.txt files for AI/LLM policies

  • @profullstack/ai1.1.1source

    A simple AI agent CLI tool for interactive conversations with AI

  • @profullstack/bot.seo0.1.1

    bot.seo: paste your domains, get an SEO audit, a strategy and a content plan for each, and articles written on autopilot. Web terminal (PWA), JSON API, CLI, TUI and MCP.

  • @profullstack/fineprint0.1.1

    An AI lawyer for terms of service and privacy policies: give it a domain or a link, get what you agree to, the liabilities, where your data goes, red flags with quotes, and what to negotiate. CLI, TUI, MCP, API and a...

  • @profullstack/openprofile0.2.0source

    Read, write, merge and de-duplicate OpenProfile.md documents.

    Use when: Reading or writing OpenProfile.md for people or agents.

  • @profullstack/voice-agent0.1.1source

    Phone voice agents that hold a real conversation: define one in code (persona, voice, model, webhook tools), deploy it to ElevenLabs Conversational AI with a SIP address, dial it into any call, and answer its tools...

    Use when: A phone agent that talks: persona, voice and tools in code.

  • @profullstack/pairux0.1.0source

    PairUX CLI: bring AI agents into a live PairUX session as participants

    Avoid: Deprecated on npm: Published by mistake. Use the pairux command from the PairUX installer: https://pairux.com/docs/agents

Money 15Crypto checkout, x402, credits, referrals and invoices.
  • @profullstack/affiliates0.3.0source

    Scarce invite codes (a few per user, single use, hashed, expiring, who-invited-whom) plus open affiliate links with first-touch attribution. Commission math comes from @profullstack/referrals. Memory, SQLite and Postgres stores, and an affiliates CLI.

    Use when: Scarce invite codes and affiliate links.

  • @profullstack/redeem-credits0.2.0source

    Redeemable credit codes for any site: mint a scarce code (CR-7K3M-QX9D-2F8H-W4TN, 80 bits, stored only as a sha256 hash), redeem it once per user for one-off credits or a UTC-monthly allowance that does not roll over, and spend against the balance. Concurrency-safe redeem and spend; memory, SQLite (bun:sqlite, node:sqlite, better-sqlite3) and Postgres stores, and a redeem-credits CLI. First user: group.call.pit.world call minutes.

    Use when: Credit codes that redeem for a balance or a monthly allowance.

  • @profullstack/keys0.1.0source

    Ed25519-signed Power Keys: one key that unlocks every Profullstack service.

    Use when: Checking a Profullstack Power Key on a service.

  • @profullstack/throttle0.4.1source

    App-wide rate limit whose answer to going over is a price, not a 429.

    Use when: Any rate limit. Over the limit is a price, not a 429.

  • @profullstack/referrals0.1.0source

    Referral codes, links, discounts and commission, with React and Next adapters. Bring your own store.

    Use when: Referral codes, links and commission math.

  • @profullstack/x402-gateway0.16.1source

    Sell crawl access to AI training crawlers by the day over x402, settled by CoinPay. Next and Hono adapters, generated robots.txt.

    Use when: Charging AI crawlers instead of blocking them.

  • @profullstack/coinpay-onboard0.4.0source

    Take crypto on CoinPay, set up in one pass: Sign in with CoinPay helpers, an idempotent onboard() (business, payout wallets, webhook), webhook verification, and the `site` launch step that writes COINPAY_* keys into the vault. Powers pay.agent.

    Use when: Launching a site: one pass to Sign in with CoinPay, business, wallets and webhook.

  • @profullstack/coinpay0.29.0source

    CoinPay SDK and CLI: crypto payments, x402 verify and settle, finances TUI.

    Use when: Taking crypto payments, verifying x402 payments. The payment rail for every site.

  • @profullstack/x402-client0.4.1source

    Pay x402 402s from JavaScript with a local key: fetch, CLI, adapters for axios and got.

    Use when: Code or an agent that must pay an x402 402.

  • @profullstack/b1dz0.3.10source

    b1dz CLI and TUI: crypto arbitrage terminal for b1dz.com (dashboard, backtests, quote observer, account setup).

  • @profullstack/ringhuman0.1.0

    RingHuman command line: search support routes, place calls that ring you when a human answers, watch events, check credits.

  • @profullstack/basis-engine0.1.0source

    Wallet-by-wallet cost basis tracking for digital assets (Rev. Proc. 2024-28), producing Form 8949 rows and Schedule D totals.

  • @profullstack/timer0.2.0source

    Time tracker for the terminal and for agents.

    Use when: Tracking billable time from a terminal or an agent.

  • @profullstack/key-rotation0.1.0source

    Sell automatic key rotation by the term: CoinPay checkout, signed webhook, idempotent settle, expiry and renewal emails, over any SQL store. For fleet managers and secret vaults.

    Use when: Selling automatic key rotation (or any auto-approve switch) by the term: CoinPay checkout, webhook, expiry and renewal email.

  • @profullstack/payment-gateway0.4.0source

    Unified payment gateway abstraction for multiple payment providers

    Avoid: Old provider abstraction. Use @profullstack/coinpay.

Ship + operate 15Deploy, secure, watch and keep the fleet up.
  • @profullstack/emailer1.0.3source

    Resend API delivery for transactional and bulk email. No SMTP or Gmail transport. Queue integration is planned but is not available in production.

    Use when: Sending email in bulk or transactionally over Resend.

  • @profullstack/threatcrush0.13.69source

    An all-in-one security daemon: monitor, detect, scan and protect servers in real time.

    Use when: Server security monitoring and scans.

  • @profullstack/cli0.2.0source

    The commands every Profullstack CLI shares: `update` and `uninstall`, done the same way the tool was installed (curl installer, npm, bun, pnpm or yarn). No dependencies.

    Use when: Every fleet CLI: shared update and uninstall commands.

  • @profullstack/sh1pt0.3.7source

    One codebase to every store, registry, CDN and channel.

    Use when: Releasing one codebase to stores, registries, CDNs and channels.

  • @profullstack/sh1pt-target-deploy-ssh0.1.2source

    Railway-style deploys to a server you own: git push in, a running app with a domain, TLS, a database and secrets out. No Docker, no Kubernetes, no PaaS. Code goes to the box over ssh, runs under systemd, and sits...

    Use when: Railway-style git-push deploys to a box we own.

  • @profullstack/deploy0.1.0source

    Deploy in batches, 3 at a time: a box-wide deploy gate (bash + flock) every deploy takes a slot from, and a batch runner for rolling one change out to many repos. Zero dependencies.

    Use when: Any fan-out deploy: the box-wide gate, three at a time.

  • @profullstack/nmaptui0.1.0source

    An admin console for nmap in the terminal: build scans from profiles, watch them run live, browse hosts and services, triage findings, diff scans over time and export reports. Bun and Node, built on HQTUI.

  • @profullstack/crawlproof0.5.0source

    What the fleet costs and what it returns, in a live terminal dashboard over your traffic.

    Use when: Watching fleet traffic, cost and return from a terminal.

  • @profullstack/kali0.1.0source

    Unofficial one-command installer for popular Kali-style security tools (web app pentesting toolkit) on Debian/Ubuntu.

  • @profullstack/scanner1.1.2source

    A comprehensive CLI and Node.js module for web application security scanning with OWASP compliance, supporting multiple scanning tools and detailed vulnerability reporting

  • @profullstack/quantum-database-backups1.0.1source

    CLI tool for creating post-quantum encrypted Supabase database backups

  • @profullstack/encrypt0.1.0source

    Quantum-resistant encryption: ML-KEM-1024 plus ChaCha20-Poly1305, wire compatible with qrypt.chat.

    Use when: Any encryption need. Use before writing crypto code.

  • @profullstack/fleet0.1.1source

    Read an OpenDevice inventory (servers, desktops, phones, tablets), add up what the fleet costs a month, observe each box's public metadata, and export the costs for CoinPay. Used by ThreatCrush and w3bs.org/fleet.

    Use when: Adding up what the box fleet costs from an OpenDevice inventory.

  • @profullstack/fleetbar0.2.0source

    One fleet monitoring panel for every Profullstack site: a dependency-free <fleet-bar> web component (SSH login, HTTP, keyword, SSL and TCP checks run 24/7 by crawlproof) plus a small server proxy to the crawlproof...

  • @profullstack/watchdog0.3.0source

    Restart instead of hanging. In-process probes for a wedged DB or Redis client, plus watchdog-autoheal, which restarts the containers Docker marked unhealthy within a restart budget.

    Use when: Every long-running service: exit when Postgres or Redis wedges.

Product clients 28The CLI, TUI or MCP client for one Profullstack product. Use it to drive that product, not as a library.
  • @profullstack/qryptchat0.14.2source

    qc: qrypt.chat in your terminal. A full-screen end-to-end encrypted chat client (ML-KEM-1024), plus a scriptable CLI and an MCP server.

  • @profullstack/nichedb0.58.0source

    CLI and MCP bridge for NicheDB collections, sources and feeds.

    Use when: Reading or writing NicheDB collections, sources and feeds.

  • @profullstack/payagent0.8.0

    pay.agent: get paid in crypto with one link, Venmo for the agentic web. Sign in with CoinPay; pay anyone by handle from the web, API, CLI, TUI or MCP.

  • @profullstack/demomovie0.5.0

    Make a narrated product demo video from a URL. The command line for demo.movie.

  • @profullstack/demomovie-mcp0.5.0

    MCP server for demo.movie, so an agent can film the feature it just shipped.

  • @profullstack/groupcall0.7.1

    group.call: a party line for people and AI agents. Make a room, get a four-digit code, everyone dials one number and keys it. Agents phone in too, with names and real voices. Web, PWA, desktop, API, CLI, TUI and MCP;...

  • @profullstack/residentalerts0.8.0

    resident.alerts: live 911 incidents near you on a map, push alerts for the places you care about, and the police and fire radio for your county. Free, with Premium for $4.99 once.

  • @profullstack/tleehealth0.5.2source

    tleehealth from the terminal: the CLI, the front-desk TUI, and the API client the MCP server uses.

  • @profullstack/tleehealth-mcp0.5.2source

    MCP server for tleehealth.com: read the practice schedule, the navigation caseload and superbill, and log navigation time from any MCP client.

  • @profullstack/watchwallet0.2.1

    watch.wallet: know the second your wallet moves. Watch any address on Bitcoin, Ethereum, Base, Polygon or Solana, or a price, and get an email, a push, or a phone call that wakes you up.

  • @profullstack/builtindie0.8.0

    built.indie: launch your indie product with one URL. We fetch the logo, screenshots, videos, llms.txt, OpenSite and OpenProfile from your homepage; people upvote; you get a badge. Web (PWA), API, CLI, TUI and MCP.

  • @profullstack/wx930.4.1source

    wx93.me from the terminal: shorten links, see their stats, print QR codes, all in an hqtui TUI too, plus a stdio MCP server for agents.

  • @profullstack/saasrow0.4.0source

    Command-line client for saasrow.com: search the software directory, and create and manage your free listings and API keys from the terminal.

  • @profullstack/wx93-mcp0.4.1source

    MCP server for wx93.me: let any MCP client shorten URLs, list links and read click stats. Same tools as the hosted https://wx93.me/mcp.

  • @profullstack/smshub1.11.0source

    Rent a phone number and receive SMS / verification codes from your terminal, scripts and AI agents (CLI, TUI, MCP) via smshub.dev

  • @profullstack/r4ck0.3.0source

    CLI and MCP bridge for the hosting search engine.

  • @profullstack/deadman0.1.3

    deadman.switch: a dead man's switch for your crypto. Seal where the keys are, check in now and then, and if you stop, the people you chose get it. Sealed in your browser; we never see it.

  • @profullstack/billing0.3.1source

    Clients, rates and invoices from the terminal; integer money.

    Use when: Invoicing clients from the terminal.

  • @profullstack/torlink1.5.1source

    A sleek, zero-setup torrent finder and downloader that lives right in your terminal. (profullstack fork)

  • @profullstack/typeheard-mcp0.1.0source

    MCP server for typeheard.com: transcribe audio and video files from any MCP client.

  • @profullstack/bl0ggers0.2.0

    Post to your bl0ggers.com publications from the terminal: blog posts, newsletter issues, podcast episodes.

  • @profullstack/pwamart0.11.0source

    pwamart from the terminal: search the web-app store, install PWAs as app windows, publish your own, and browse it all in an hqtui TUI.

  • @profullstack/typeheard0.1.0source

    Transcribe audio and video from the terminal: typeheard <file>. Also a TUI and the client the MCP server uses.

  • @profullstack/tsbb-tui0.12.1source

    Terminal client for a tsbb bulletin board. Reads and posts against any centralised install.

  • @profullstack/rssamplifier0.4.0

    CLI for the feed directory: search, OPML export, submit.

  • @profullstack/qrypt-decrypt1.1.3

    CLI tool to decrypt QryptChat encrypted key files

  • @profullstack/d0rz0.1.0

    d0rz.com from your terminal and your agents: CLI, TUI and MCP server for the local help marketplace (asks, offers, responses, messages).

  • @profullstack/pwamart-mcp0.11.0source

    MCP server for pwamart.com: search the web-app store, get install steps for any platform, and submit and publish your PWAs from any MCP client.

sh1pt adapters 208Plugins for sh1pt. Install them through sh1pt, never on their own.
Uncategorised 16Published, not yet sorted. Read the README before depending on one.
Public repos without a package 122Apps, sites and tools whose source is public on GitHub.
  • .github

    Profullstack organization profile and community health files

  • advis0r.comTypeScript

    Executive-transcript stock discovery CLI: turns public exec communications + Alpaca market data + SEC fundamentals into a ranked, evidence-backed research watchlist. Research aid, not financial advice.

  • agentbbsGo

    A modern BBS over SSH for humans and AI agents, arcade (DOOM), agent game ladders, personal Linux pods ($1/mo via CoinPay), and the AgentAd marketplace. Go + wish + bubbletea.

  • agentic-era-bookHTML

    Software Engineering in the Agentic Era: a free field guide to building software with AI agent fleets. Markdown + pandoc to HTML, PDF, EPUB.

  • ai-dot-textJavaScript

    ai.txt cli for generating LLMs.txt and ai.txt readable files on web apps.

  • aiornot.voteTypeScript

    A photorealistic image/video guessing game. Verified users decide whether media is AI-generated or real, track a personal history, compete on leaderboards, and subscribe to every list by RSS.

  • amazon-affiliateJavaScript

    🎬 Automated Amazon affiliate video creation with AI voiceover and YouTube publishing

  • bg0ne.comJavaScript

    BG, gone. FOSS background removal on open models. Free previews, pay by the image in USDC, or self-host the whole thing.

  • bitchin.netV
  • bitcoinlatteTypeScript

    BitcoinLatte is a map for finding coffeeshops that take Bitcoin.

  • bookmarklets
  • botspmJavaScript

    AI bot management platform for conducting "lives" on TikTok, YouTube or X

  • brand-assetsHTML

    Brand and marketing assets for Profullstack, Inc. and #Moshcoding, logos, avatars, banners, badges, ad cards and video. Live kit: https://anthony.dev.profullstack.com/assets/

  • c0mputeRust

    Open compute network: run a node with one command and help pool 100,000 CPUs/GPUs for open-weight AI. Inference, transcoding, storage. CLI-first, MIT.

  • c0uponsTypeScript

    Coupons platform built with Vite + React and SQLite Cloud

  • cache.follows.lolJulia
  • chovy.comCSS

    Terminal-style microblog, short thoughts, nothing over 240 chars

  • cl1s.techJavaScript

    Open advertising network for CLI tools and AI agents, built on the AgentAd standard. Disclosed, agent-readable, terminal-native ads.

  • cli-toolsTypeScript
  • coinpay-phpPHP

    Read-only split mirror of php/coinpay in profullstack/x402-ports. Do not open pull requests here.

  • coinpaybotTypeScript
  • coldfollow-webJavaScript
  • commandboard.runTypeScript

    CommandBoard.run hosted product and reference implementation for LogicSRC

  • cookiebanner-webCSS
  • cssCSS

    Semantic-first, agent-friendly CSS for humans and the interfaces they build together.

  • d1sks.comJavaScript

    The OpenDisk marketplace and OpenObject reference store: every disk that serves /.well-known/opendisk.json, listed by free GiB, price, country and policy.

  • d3vices.comJavaScript

    Open-source hardware diagnostics that run on your device. Test your mic, camera, screen, keyboard, sensors and network, in the browser, as a PWA, or on the desktop.

  • datamart.helpTypeScript

    datamart.help (placeholder)

  • diskpushTypeScript

    Push files fast. Sync only what changed. A desktop app and CLI for rsync: browse servers like FileZilla, transfer with rsync, and move files directly between two servers.

  • dot-skillsJavaScript

    A portable, verifiable inventory of agent-executable skills. Every entry states how far it has actually been proven.

  • ethshot-webJavaScript

    A viral Ethereum-powered game where users pay 0.001 ETH per shot for a 1% chance to win the jackpot.

  • fleetsysops.comTypeScript

    The Fleet SysOps Manifesto: how one human runs a fleet of coding agents (fleet coding), served as nothing but Markdown

  • follows-webJavaScript
  • fullstack-apiJavaScript

    API written in node.js, koa and mongodb

  • fullstack-uiVue

    User interface written in vue.js

  • genrewatch.comJavaScript

    A release calendar for every genre. Follow a genre or a name, get told before it drops.

  • gentoo-pairuxShell

    Gentoo overlay for PairUX - collaborative screen sharing

  • gentoo-tronbrowserShell

    Gentoo overlay for TronBrowser - privacy-first, AI-native browser

  • getprivacycodeTypeScript
  • hdtilt.comJavaScript

    Open-source IPTV player like TiviMate: M3U, Xtream Codes, XMLTV guide, catch-up. Web/PWA, desktop, CLI, TUI, MCP and API.

  • homebrew-infernetRuby

    Homebrew tap for the Infernet Protocol CLI

  • homebrew-pairuxRuby

    Homebrew tap for PairUX

  • homebrew-tapRuby

    Homebrew tap for Profullstack apps. brew tap profullstack/tap

  • hqshGo

    A terminal session that survives disconnects like mosh, but carries the raw stream: images and every escape reach your terminal.

  • hqtermTypeScript

    Persistent terminal sessions that survive disconnects, with images and HD emoji. Built on hqtui + hqsh.

  • hynt-mobileJavaScript
  • icemap.appTypeScript

    Anonymous, real-time incident reporting on a map. No accounts. No tracking. Posts auto-delete after 8 hours.

  • interviewsPython
  • intr0sShell
  • invoicerJavaScript
  • irc-botJavaScript
  • kynfiHTML

    Secure file & photo sync across all your devices.

  • launch.anapp.nowTypeScript

    Top-of-funnel campaign site for Chovy: type the idea, launch it now.

  • launchpadder-webJavaScript

    The platform enables frictionless URL submission with automated metadata scraping, AI-generated descriptions, and federated submissions across multiple directories.

  • link-directoriesJavaScript
  • linkedin-networking-botHTML
  • links-aggregatorJavaScript

    Aggregation of onion sites with random redirect button

  • logicsrcTypeScript

    LogicSRC is an open standards initiative for human and AI agent coordination, maintained by Profullstack, Inc.

  • makedemoJavaScript

    A CLI tool that automates generating high-quality web demo MP4 videos by intelligently interacting with websites using AI-driven decision making.

  • malware-test-prsPython

    testing malware scanners on github and other ci/cd paltforms.

  • marketng-networking-bot
  • marksyncr.comJavaScript

    MarkSyncr is a cross-browser extension that enables two-way bookmark synchronization between browsers and external storage sources (local files, GitHub repos, Dropbox).

  • media-streamerTypeScript

    A comprehensive multi-media streaming platform that allows users to stream music, movies, books, and live TV from torrents and IPTV sources - without downloading content until playback.

  • meshhookJavaScript

    MeshHook is an MIT-licensed, webhook-first workflow engine with a visual builder (SvelteKit/Svelte 5) and Temporal-like durability via event sourcing on Postgres (Supabase).

  • modulesShell

    module system

  • moshpit-proxyTypeScript

    Registry-pinned TLS proxy for Moshpit names. Verifies the origin's key against the registry instead of a certificate authority.

  • moshpit-transportTypeScript

    Post-quantum authenticated transport for native Moshpit clients. Hybrid X25519 + ML-KEM-768, ML-DSA-65 identity, no TLS and no certificates.

  • mums.flowerTypeScript

    Flowers for moms: remember mom's birthday and Mother's Day, flower meanings, bouquet cards. Web, PWA, API, MCP, CLI.

  • musicJavaScript

    My new vibe coding band Velocity Vibe

  • nightcell7TypeScript

    NIGHTCELL 7: FALSE DAWN, premium episodic FPS. Two operatives, two countries, one manufactured war. Babylon.js + TypeScript monorepo with server-authoritative multiplayer.

  • nixampTypeScript

    It really whips the terminal's ass. Open-source streaming platform: turn a folder into a live radio station, TV channel or film night anyone can tune into. Terminal player, web app and desktop app on one engine, with a...

  • onion-ssr-boilerplateJavaScript
  • openemojiCSS

    Every standard emoji, drawn by an image model as one family, packed as an OpenEmoji set: PNG, WebP, SVG, colour fonts

  • openiconHTML

    370 UI icons (259 drawn, 111 brand logos) as SVG, PNG and terminal glyphs: Nerd Font, Unicode, ASCII. An OpenIcon set.

  • opensourcelegends.comTypeScript

    Trading cards for the people who built the software the world runs on.

  • othr-webJavaScript
  • p0dcastersTypeScript

    Directory of independent, self-hosted podcasts, 22,386 shows on their own domains

  • pairux-apt

    APT repository for PairUX - Debian/Ubuntu packages

  • pairux-nixNix

    Nix flake for PairUX - collaborative screen sharing

  • pairux-rpm

    RPM repository for PairUX - Fedora/RHEL packages

  • parklookup.comJavaScript

    A Progressive Web App (PWA) for discovering and exploring U.S. National and State Parks.

  • paybadgeJavaScript

    A sleek, professional payment badge system for accepting cryptocurrency donations directly from your GitHub README files.

  • png2svg.sh
  • polyJavaScript

    Svelte 4 LTS fork

  • prazium
  • profullstack
  • profullstack-daoJavaScript
  • qaaas-test-appHTML

    Deliberately buggy todo app for testing QAaaS.dev and PRaaS (Pull Requests as a Service)

  • recipepdfs.comTypeScript
  • reddit-networking-botJavaScript
  • relay.follows.lolC++
  • rss-amplifierJavaScript

    A CLI tool for contextual RSS amplification with AI-driven snippet generation and social media posting.

  • rssamplifier.comJavaScript

    An open, agent-first directory of independent blogs. Submit a URL, a list or an OPML file; every blog gets its own page. JSON API, OPML and llms.txt for agents.

  • sans-demoJavaScript

    Demo app built using Sans UI

  • scoop-bucket

    Scoop bucket for Profullstack apps. scoop bucket add profullstack https://github.com/profullstack/scoop-bucket

  • scoop-pairux

    Scoop bucket for PairUX

  • scriptsJavaScript

    Hand-written command-line tools

  • sinkstateTypeScript

    Find the states your agent graph can enter but never leave. Dead-state analysis for LangGraph, CrewAI and n8n.

  • smashlangRust

    A fully programmable, multi-platform, syntax-slick modern language. Let’s finish this strong. 💪

  • smashlang-windsurfJavaScript

    SmashLang code highlighting support for WindSurf

  • sorrycheckTypeScript

    Does that proof actually check? A public verdict registry for papers and repos claiming machine-checked proofs.

  • svgcrusherJavaScript

    CLI-first SVG optimization for svgcrusher.com

  • sysops.ceoHTML

    sysops.ceo

  • thesoundofpi.comHTML
  • tipoffwatch.comJavaScript

    Sports calendar and reminder PWA. Follow any team in the world; get told before they play.

  • tronbrowser.devTypeScript

    Open-source, privacy-first, AI-native browser built on a Chromium fork. No telemetry, no ads, no sponsored tabs.

  • tutorlinkup-webJavaScript

    A marketplace platform connecting individuals who need test-taking services with qualified test-takers, featuring secure cryptocurrency payments.

  • ugig.netTypeScript

    A marketplace for AI-assisted engineers and skilled workers.

  • unyundditJavaScript

    Reddit clone for .onion

  • uyunlistPHP

    Self-hosted, anonymous onion classifieds marketplace, PHP + self-hosted Supabase + a Tor hidden service, one-command deploy to a DigitalOcean droplet.

  • venuedating-webJavaScript

    Venue Dating is a modern Progressive Web App (PWA) that connects people at their favorite venues.

  • vibe-stackJavaScript

    A modern, AI-first framework built for rapid development of Progressive Web Apps (PWAs). Designed for versatility and speed, it provides an optimized boilerplate for creating, testing, and deploying full-stack...

  • vicoa-coinpay-overlayPython

    CoinPay crypto billing overlay for self-hosted Vicoa: sell Pro passes for USDC/BTC/ETH

  • vu1nz-gh-actionsPython

    vu1nz Github Actions Scanner

  • w3bs.orgJavaScript

    W3BS: the open Web for humans, agents and devices. Community drafts and reference stack.

  • watchnews.nowJavaScript

    WatchNews, follow a news desk or a newsroom, read what it published, and watch the channels covering it. A brand of the tipoffwatch platform (BRAND=watchnews).

  • web-engineer-education

    Educational videos, courses, lectures, texts, and blogs for web engineers

  • webcomponentsJavaScript

    Web components library using vanilla JavaScript, CSS and HTML

  • wiresniff-desktop-electronTypeScript
  • x402-gateway-phpPHP

    Read-only split mirror of php/x402-gateway in profullstack/x402-ports. Do not open pull requests here.

  • x402-portsRust

    x402-gateway in Python, Go, Rust, Ruby, PHP, Elixir and Zig, plus the CoinPay CLI from every package manager. One monorepo, one fixture file.

  • zymo-mobileTypeScript

Start with a prompt

The whole stack, its combos and its house rules are published as text for agents. Point Claude Code, Codex or any agent at it and it builds the way we do.

Blueprint updated 2026-10-29

$ curl -fsSL https://profullstack.com/install.sh | sh
# the Profullstack skill, into every agent on the box

$ curl -s https://profullstack.com/stack.md

> Build me a waitlist app on the
  Profullstack stack. Read
  https://profullstack.com/stack.md
  first and follow the house rules.

The blueprint

Profullstack runs about 170 active repos on a small number of deliberate combinations. Pick the combo that matches the job, inherit the shared defaults, follow the house rules, and reuse the published packages before writing anything new.

Pick a combo

There is no single stack. Match the job to a combo, then apply the shared defaults and the house rules.

A new product with a web UI

web-app Next 16 on Turso with a Hono API inside the app. This is the default for anything new.

A change to an existing SaaS on Supabase or Postgres

web-app-postgres Stay on the database it has. Do not migrate an app to Turso as a side effect of a feature.

A real-time 3D game, in the browser and on the desktop

games Babylon on a pure rules core, server-authoritative multiplayer, and art generated by committed scripts rather than modelled by hand.

An API, crawler, poller or data service with little or no UI

api-service Hono on Turso, Bun or Node, one Railway service with a health check.

A command-line or terminal tool, or an agent-facing bridge

cli-tui Node, TypeScript, commander, hqtui for dashboards, MCP where an agent should drive it, published to npm.

A desktop app

desktop Electron with the CLI bundled inside it, so one install gives both surfaces.

A mobile app

mobile Expo inside the product monorepo, sharing the API and packages.

Code two or more products need

library A runtime-neutral @profullstack/* package with subpath exports, released from GitHub.

Something that must be a single fast binary

systems Rust (tokio, axum, clap), or Go when the upstream ecosystem is Go.

Shared defaults

Every combo inherits these. A combo below only lists where it differs or adds.

ConcernChoiceNotes
LanguageTypeScript, ESM"type": "module" everywhere. Kebab-case filenames, semicolons, printWidth 100. JavaScript with JSDoc is fine in small packages.
RuntimeNode 22 or 24 (floor is 20)Bun 1.4 where the repo pins it in packageManager. Runtimes are managed with mise on dev boxes.
Package managerpnpm, pinned in packageManagerBun on Bun repos. Never mix lockfiles. Workspaces via pnpm-workspace.yaml for monorepos (apps/, packages/, services/).
HostingRailwayOne project per product, railway.json per service with healthcheckPath, deploys on push to the default branch. Custom domain before any URL is written down.
Web serverCaddyHosts, reverse proxies and static sites with automatic HTTPS (it gets and renews certificates itself) and IPv6 on by default. Its localhost admin API lets agents and the w3bs CLI add a site without editing config. The default web server on W3BS OS and in front of pit.world and Moshpit names (moshpit-proxy). nginx boxes keep nginx until they are moved.
DNSPorkbunNo Cloudflare DNS requirement.
Secretslogicsrc team vault + Railway service variablesSet on the service, record in the vault. No .env files in repos; a framework-required .env.local is a local cache, never the source.
AuthMagic link + passkeysThe magic link doubles as signup. Passkeys via @simplewebauthn. An optional password only for devices that cannot open mail or hold a passkey (TVs).
EmailResend + @profullstack/email-queue (in development)Resend is the intended application provider. The shared queue source is not published and is not yet deployed portfolio-wide. PostgreSQL audit integration, service API, CLI, MCP, admin PWA, production monitoring and migrations remain incomplete. Gmail sending is restricted to approved one-off use.
PaymentsCoinPay (crypto) and x402Crypto through @profullstack/coinpay. x402 sells access to agents and crawlers, settled by CoinPay. No Stripe and no card checkout.
Crawler policy@profullstack/x402-gateway + @profullstack/throttleTraining crawlers get 402 with a daily pass to buy, robots.txt is generated from the same lists, and every route is limited to 100 req/min with a price instead of a 429.
Media playback@profullstack/playerEvery audio and video player: MP4, HLS, MPEG-TS and audio with one control bar. `attachSource` when a site keeps its own UI. A third-party player bump that breaks means move to it, not migrate the old player.
Modern CSS@profullstack/modern-cssSubgrid cards, squircle corners, stuck headers, grid gap rules, height:auto accordions, reading-flow and @function helpers (--fluid, --alpha, --inner-radius) as opt-in classes in the components layer. Reach for these before JS or extra DOM. Every one is progressive enhancement: write the plain value first.
AnalyticsCrawlProof stats.jsEvery public site loads crawlproof.com/stats.js. Careers pages are fed from CrawlProof.
Referrals@profullstack/stack/referralsTracked in the request proxy, 60/20 split.
Testingvitest`vitest run` in CI. `node --test` for small CLIs, `bun test` on Bun repos, Playwright for browser flows.
Lint + formatPrettier + ESLintBiome or Oxlint where a repo already uses it. Do not add a second formatter to a repo.
CIGitHub Actionsci.yml, codeql.yml and threatcrush-scan.yml on every repo. Release after merge with gh release; a merged PR reaches nobody until the release is cut.
AIc0mpute via @profullstack/ai-providers, MCP via @modelcontextprotocol/sdkEvery text or JSON model call goes through @profullstack/ai-providers: c0mpute peer nodes first, OpenAI and Anthropic only as alternating fallbacks. One Infernet trusted-client key (ifc_) per app as C0MPUTE_API_KEY. Never import openai or @anthropic-ai/sdk directly for text. Anything an agent should operate ships an MCP bridge.
Promotionmyna (mynaposter.com)The last phase of every ship: socials, both blogs and a CrawlProof ad from one command. Syndicated copies carry rel=canonical back to our page.
DataNicheDB, RSS Amplifier, r4ckDatasets come from and go back to nichedb.dev. Feeds are submitted through @profullstack/submit-feed. OpenProfile.md for people, /.well-known/openaccess.json for access terms.

Combos

Different stacks for different reasons. Each one names live products built on it.

Web app

web-app

The default for a new product. Next 16 renders the UI, a Hono app mounted inside it serves the API, Turso holds the data, and one Railway service runs web and worker together.

Use it when

  • You are starting a product that has a UI and a database.
  • The data fits SQLite semantics: one writer, modest joins, no Postgres extensions.
  • You want one service, one deploy, one domain.

Notes

  • Next inlines process.env.NAME at build time, so read runtime secrets through a non-literal key.
  • A 200 on /api/health proves nothing about the worker. Check the logs for its up line after a deploy.

Built on it

ConcernChoiceNotes
FrameworkNext 16, React 19App Router. proxy.ts, not middleware.ts. Server components by default.
APIHono inside NextMounted under /api. Versioned routes live at /api/v1/... and OAuth callbacks at /api/v1/<provider>/<function>/<endpoint>.
DatabaseTurso (libSQL) via @libsql/clientForward-only SQL migrations in packages/db, or Drizzle with dialect turso. Migrations must be safe to run twice concurrently.
UITailwind 4 + shadcn/uiScoped behind a ui.css without preflight when adding to an existing site. Plain CSS modules on marketing sites.
RealtimeServer-Sent EventsWebSockets only for chat, terminals and multiplayer.
Background workA worker process in the same containerSupervised by the entrypoint; the container exits non-zero when either process dies. BullMQ on Redis only when the queue is the product.
StorageRailway volume or Cloudflare R2R2 buckets private, served through signed or proxied routes.
Layoutapps/web, packages/db, services/workerRoot-only vitest config, tsconfig.base.json with strict flags. Copy nightcell7 or reeleel rather than inventing a layout.

Web app on Postgres

web-app-postgres

The previous generation of the same shape, and still the largest by count. Next 16 on Supabase, or on a self-hosted Postgres in the same Railway project. Kept where the data needs Postgres or the app already lives there.

Use it when

  • The app is already on Supabase or Postgres. Stay there.
  • You need row-level security, pgvector, heavy relational joins, or a queue on Redis next to the database.
  • Several services share one database and the write volume is real.

Notes

  • Do not move an app to Turso as part of a feature. Classify it first: easy Turso, needs Postgres, or consolidate.
  • coinpayportal is public with 19 forks. Never put real data in a fixture there.

Built on it

ConcernChoiceNotes
FrameworkNext 16, React 19Same conventions as web-app.
DatabaseSupabase Postgres, or self-hosted Postgres on RailwaySupabase client via @profullstack/stack/supabase. New Postgres apps self-host on Railway (w3bs.org is the reference). Index every foreign key you will cascade through.
AuthMagic link + passkeys on the app's own users tableSupabase Auth exists in older apps; the local users.id is always the primary key.
QueuesBullMQ on RedisCustom job ids must not contain a colon.
Migrationssupabase/migrations or plain SQLApplied in CI or on boot, never by hand in the dashboard.

API service

api-service

Hono on Turso with no framework in front of it. For pollers, crawlers, data APIs, MCP servers and anything whose UI is a few server-rendered pages or none at all. Bun or Node, chosen per repo and pinned.

Use it when

  • The product is an API, a feed, a dataset or a daemon.
  • The UI is small enough to render from Hono (JSX or templates) or lives in a separate app.
  • You want the smallest possible service: one process, one SQLite file or one Turso database.

Notes

  • Bun-only gotchas: Bun.serve idleTimeout kills long streams, and Bun's SQL client stringifies arrays. Keep those behind small adapters.

Built on it

ConcernChoiceNotes
FrameworkHono 4Web-standard Request/Response. Same app runs on Bun and Node; the router is the only Hono-specific code.
RuntimeBun or Node, pinnedBun for stream-heavy or IO-heavy services (genrewatch, tipoffwatch, niche-db, r4ck). Node + pnpm when the service shares code with a Next app or a CLI.
DatabaseTurso (libSQL)Embedded replica or remote. FTS5 for search, with the raw query escaped; libSQL cannot bind undefined.
Rate limiting@profullstack/throttleCredentialed callers get 600/min, anonymous 100/min, over the limit is a 402 with an offer.
Agent surfaceMCP bridge in the CLI packageOne query vocabulary across page, API, CLI and MCP.
DeployRailway, Dockerfile or Nixpacksrailway.json with healthcheckPath. Pin pnpm 10 on Nixpacks; corepack cannot launch pnpm 11.

CLI and TUI

cli-tui

Terminal tools for people and agents. Node and TypeScript, commander for arguments, hqtui for anything with a screen, an MCP bridge so an agent can drive the same commands, published to npm under @profullstack.

Use it when

  • The user is a developer, an operator or an agent.
  • The tool wraps a site or API we run (nichedb, rssamplifier, coinpay, r4ck, readm3).
  • You need a dashboard in a terminal rather than a browser.

Built on it

ConcernChoiceNotes
RuntimeNode 20+ (Bun optional)Node is required: CLIs run in GitHub Actions and on customer machines. Bun is fine for development.
ArgumentscommanderSubcommands map one to one onto MCP tools.
TUI@profullstack/hqtuibtop-grade dashboards, one import. A mouse must work: one click unfolds, hover highlights.
Config~/.<tool>.json + @profullstack/synconfigAllowlisted snapshot synced with the tool's cloud.
Installnpm i -g @profullstack/<tool> and curl | shThe installer does the whole job. Never document a manual follow-up step.
Testingnode --test or vitestbun test on Bun repos; mock.module is process-wide there.
ReleaseGitHub release workflow publishes to npmBump before testing. A brand-new scoped package 404s for minutes after publish.

Desktop

desktop

Electron, with the product's CLI bundled inside the app. A desktop install gives the CLI too, with no system Node, and the two surfaces cannot disagree because they are the same build.

Use it when

  • The product needs a tray, a window, the filesystem or OS input.
  • A CLI already exists and the desktop app is a second surface for it.

Built on it

ConcernChoiceNotes
ShellElectronTauri was tried and retired.
InsideHono or Next, same as the web surfaceThe renderer is the web app; the main process hosts the API locally.
CLIBundled via extraResourcesThe installer writes a shim: ELECTRON_RUN_AS_NODE=1 exec app resources/cli/dist/bin.js. Build the bundle with pnpm deploy --prod --legacy.
Native modulesN-API onlyElectron's ABI differs from system Node. @libsql/* passes; anything with V8 symbols does not.
DistributionGitHub releases + curl installerHeadless machines get a CLI-only tarball. Homebrew, apt, rpm, scoop and nix repos exist for pairux.
Auto-updateFrom GitHub releasesSet the tool's NO_AUTO_UPDATE env when testing a dev binary.

Games

games

Babylon in the browser, with every gameplay rule in a package that cannot import a renderer. The same rules run in the client, in the authoritative match server and in tests, so a rule exists exactly once.

Use it when

  • The product is a real-time 3D scene the player acts inside, not a page they read.
  • It has to run in a browser first, with the desktop build as a second surface rather than the only one.

Notes

  • Distant point lights and glows are camera-facing sprites held at a fixed screen size, never scaled geometry. A 25 mm firefly is sub-pixel past 30 m and no amount of scaling the mesh fixes that.
  • Budget the shell download. Models ship geometry, UVs and a named material slot; the engine binds the real textures by that name so one atlas is not shipped ten times.

Built on it

ConcernChoiceNotes
RendererBabylon.jsWebGPU where the browser has it, WebGL2 fallback. The fallback is a supported path, not a degraded one.
PhysicsHavok via @babylonjs/havokOnly where real collision response is needed; most props are static.
RulesA pure game-core packageNo Babylon, no DOM, no Electron imports. This is the rule that makes a client and a server able to agree.
UIPreact, outside the frame loopThe component layer never owns a per-frame transform. HUD readouts are text-node writes behind a change check, not a render pass.
MultiplayerServer-authoritative over WSSThe client sends input intent. The server owns movement validation, damage, death, respawn and score. Shared messages live in their own protocol package.
BuildVite + vite-plugin-pwaSet registerType and actually wire the update prompt; prompt with no handler means returning players never get a new build.
API and dataHono, Drizzle, PostgresSame as api-service. Never cache /api, matchmaking or tickets in the service worker.
DesktopElectronThe desktop combo applies unchanged; the renderer is the same web build.
ArtGenerated by committed Blender scriptsNo asset without provenance. One Blender metre is one game metre, GLB with glTF-compatible PBR, COL_ colliders and SOCKET_ attachment points.

Mobile

mobile

Expo and React Native, as apps/mobile inside the product monorepo. It shares the API client and packages with the web app rather than living in its own repo.

Use it when

  • The product needs to be in the app stores or on a phone home screen with native capabilities.
  • A PWA is not enough (push, background, camera, payments in-app).

Notes

  • Start with the PWA. Most products never need this combo.

Built on it

ConcernChoiceNotes
FrameworkExpo (React Native)React 19. Shares types and the API client with apps/web.
Layoutapps/mobile in the product monorepoStandalone *-mobile repos are the old pattern and are dormant.
BackendThe product's own api-service or web-appNo separate mobile backend.
Store releasesh1ptOne codebase to every store, registry and channel.

Library

library

Code that two or more products need becomes a @profullstack/* package. Runtime-neutral core, subpath exports, one npm package per concern, released from GitHub.

Use it when

  • You are about to copy a module from one repo into another.
  • A site needs a component another site already ships (player, leaderboard, feed submission, contact-form guard).

Built on it

ConcernChoiceNotes
ShapeESM, TypeScript, subpath exports`@profullstack/stack/referrals`, `/email`, `/supabase`, `/feedback`, `/coinpay`, `/crawlproof` is the pattern. Peer-depend on next, react and clients rather than bundling them.
CoreWeb-standard APIsfetch, Request, Response, URL, crypto.subtle, ReadableStream. Runtime-specific code behind an adapter. A /core entry must never import a node: module.
Buildtsup or plain tscNode type-stripping needs .ts specifiers; pair with rewriteRelativeImportExtensions so dist still emits .js.
TestsvitestContract tests where the package defines a protocol (x402, submit-feed, OpenProfile).
ReleaseBump, merge, gh releaseA release workflow publishes. Ship pkg@latest in docs, never update -g. pnpm 11 refuses packages younger than a day unless excluded from minimumReleaseAge.

Systems

systems

Rust when the product is a single static binary that has to be fast (benchmarks, transports, agents on servers). Go when the upstream ecosystem is Go. Python only for security tooling that lives in that world.

Use it when

  • A JavaScript runtime would be the bottleneck or the dependency you cannot ship.
  • The upstream you build on is in that language (LiveKit for agentbbs, nmap and Kali tooling).

Built on it

ConcernChoiceNotes
Rusttokio, axum, clap, reqwestc0mpute is the reference. Auto-update from GitHub releases on first run.
GoStandard library + the upstream SDKagentbbs pins livekit server-sdk-go and protocol together.
PythonManaged by mise, venv per projectSecurity tooling and GitHub Actions only (vu1nz).
DistributionGitHub releases, curl installer, homebrew tapSame installer rule: it does the whole job.

House rules

The conventions an agent has to follow on any Profullstack repo, whichever combo it is on.

Ship it, never stop at in progress

An agent does not end its turn on "still running, I will report when it lands". Work handed to a subagent, CI or a deploy is driven to merged, released and verified live in the same turn, then reported once with the result. Stop early only for a real blocker a person must clear: a login, or a decision that is theirs.

Every site takes payment from launch

Launching a site includes taking crypto: npx @profullstack/coinpay-onboard site <name> --webhook <public url> makes its CoinPay business, copies the payout wallets in, sets the webhook and writes the COINPAY_* keys into the site vault. Idempotent; every step must print a check before the launch is announced.

Launch on a Moshpit name

New products launch on a Moshpit name (pit.moshcode.sh), not a new ICANN domain, served from our own box with a registry-signed certificate and listed on the Moshpit ring. Announcements give the <name>.pit.world address for browsers without Moshpit DNS.

Reuse the house package first

Before adding a dependency or writing a component, grep the repo for @profullstack/ and check npm. The package usually exists and is often already installed.

Secrets live in the vault

Set production secrets on the Railway service and record them in the logicsrc team vault. Never write one into a .env in the repo, and never ask a person to.

Auth is magic link plus passkeys

The link proves the address and the address is the account. Passwords are optional and only for devices that cannot do either.

Signup asks for the profile

Every signup collects email, first_name, last_name, company_domain, job_title and linkedin_url through @profullstack/profile, in that order. Email and name are required; the other three are optional. The company is filled from a work email.

Every API offers webhooks

An app with an API and accounts lets customers register webhook endpoints for its events through @profullstack/webhooks: the /api/v1/webhooks routes, a CLI command and MCP tools over them, and emit() wherever something happens. Never hand-roll signing or retries; apps on their own scheme move to it, sending their old header alongside until receivers switch.

User keys are sealed by the user

Any key, token or password a user gives an app (exchange and wallet keys, BYO AI keys, OAuth tokens, SMTP passwords) is sealed with @profullstack/sealed-secrets under a passphrase the user holds, with a one-time recovery key. No server key, env var or database dump can open it. Servers write new secrets through the seal inbox; workers use them only inside an UnlockStore session the user opened. The Settings "Key vault" card, its browser code and the /my/vault routes come from the same package (vault-card, vault-ui/auto, vault-server); never hand-roll one. Operator secrets stay in the logicsrc team vault.

Installers do the whole job

If a feature needs a component, the installer or update command installs it. No documented manual follow-up step. DNS routing is the one thing that stays explicit.

Push to the default branch deploys

PRs are merged, not parked. Release after merge. Then announce through myna, with rel=canonical on every syndicated copy.

Our domains only

Add the custom domain before writing any URL down. Never publish a *.up.railway.app address.

Migrations run twice

Web and worker both migrate on boot. Ledger writes are insert-or-ignore and every migration is safe to apply concurrently.

Large catalogues use a sitemap index

/sitemap.xml is an index; entities are chunked by month of creation so past files never change.

OAuth callbacks are namespaced

/api/v1/<provider>/<function>/<endpoint>, using whatever API prefix the project already has.

Every product is a customer of another

Wire products together when the integration is load-bearing: x402 settles through CoinPay, blogs open CrawlProof ads, myna distributes every ship, NicheDB sells the data.

Copy has no LLM tells

Short sentences, no em dashes, no rule-of-three flourishes. This applies to posts, READMEs and announcements.

A wedged process restarts without a person

Every container gets a HEALTHCHECK that hits its own /healthz, so a blocked event loop shows as unhealthy. watchdog-autoheal restarts what Docker marks unhealthy, three times an hour at most, then emails. In-process, watchDependencies exits when the shared DB or Redis client stops answering.

Agents get a first-class surface

A site ships its data as Markdown or JSON at a stable URL, a CLI ships an MCP bridge, and training crawlers pay through x402 rather than being blocked.

Not in the stack

Things an agent might reach for by habit. Do not.

  • Hetzner: Ruled out permanently. Railway hosts the fleet; a netcup box and DigitalOcean droplets cover what needs a VM.
  • Vercel, Fly.io, Cloudflare Workers: Not deploy targets. One repo has a fly.toml and none have a wrangler config. Railway is the host.
  • Supabase for a new app: Turso is the default. Supabase and Postgres stay where they already are.
  • .env files as the source of secrets: The vault and the platform env are the authority. A file is a stale copy.
  • Password-first auth, next-auth: Magic link plus passkeys. @profullstack/auth-system is password-only and is the exception, not the pattern.
  • SvelteKit, Primate + SurrealDB, Express for new work: Earlier generations still in maintenance. Do not start anything new on them.
  • Tauri: Retired in favour of Electron with the bundled CLI.
  • mocha, jest, Prisma: vitest and plain SQL or Drizzle.
  • Oxc, Oxlint, Oxfmt, Rolldown as a default: On the roadmap since June and present in six repos. Use the repo's existing lint and format setup until parity is proven.
  • Hand-rolled players, rate limiters, contact-form guards, feed forms: Each of these is a published package already.
  • video.js, plyr, a bare hls.js or mpegts.js: @profullstack/player wraps hls.js and mpegts.js already. video.js 10 ships no player at all: it throws VJS8_LEGACY_* on v8 code.
  • *.up.railway.app URLs: Our domains only.

Runs in production

Every Profullstack product is built on this stack. The full list, with install commands, lives in the docs.

Browse every product

Maintainers

One senior engineer, a fleet of agents, and every change through review, tests and CI.

Image

Anthony Ettinger

Founder, Profullstack, Inc.

riotcoder

The agent persona that writes most of the code.

Want this stack on your product?

We build new products on it and move teams off per-project backends.