npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

blustdp-web-v

v1.0.0

Published

A full website for simulating a token launch: **Node.js/Express backend** running the AMM + vesting + agent-based market engine, and a **React (Vite) frontend** where you configure tokenomics and see results live — price chart, market cap, drawdown, and p

Downloads

155

Readme

Blustdp Launch Simulator — Full Web App

A full website for simulating a token launch: Node.js/Express backend running the AMM + vesting + agent-based market engine, and a React (Vite) frontend where you configure tokenomics and see results live — price chart, market cap, drawdown, and per-archetype (whale/bot/retail) performance.

blustdp-web/
├── server/          Express API (ESM) — wraps the simulation engine
│   └── src/
│       ├── index.js          API routes: /api/simulate, /api/default-config
│       ├── defaultConfig.js  Starting tokenomics shown in the UI
│       └── simulator/        The simulation engine (AMM, vesting, agents)
└── client/          React + Vite frontend
    └── src/
        ├── App.jsx                Main layout / state
        └── components/
            ├── ConfigPanel.jsx        Token / market / simulation inputs
            ├── AllocationEditor.jsx   Editable vesting bucket table
            ├── ConcentrationBar.jsx   Insider-vs-public allocation visual
            ├── StatStrip.jsx          Key result metrics
            ├── PriceChart.jsx         Price-over-time chart (recharts)
            └── AgentTable.jsx         Whale/bot/retail PnL breakdown

Running it

You need two terminals — one for the backend, one for the frontend.

Terminal 1 — backend:

cd server
npm install
npm start
# API listening on http://localhost:4000

Terminal 2 — frontend:

cd client
npm install
npm run dev
# App running on http://localhost:5173

Open http://localhost:5173 in your browser. The Vite dev server proxies /api/* requests to the backend on port 4000 (see client/vite.config.js), so you don't need to configure CORS URLs manually in dev.

The page auto-runs a simulation on load using the default tokenomics, then lets you edit any parameter — total supply, initial liquidity, AMM fee, number of simulated weeks, agent population size, random seed, and every allocation bucket's percentage / TGE unlock / cliff / vesting length — and re-run.

Building for production

cd client
npm run build      # outputs static files to client/dist

Serve client/dist with any static host, and run server behind it (or point the frontend's API base URL at wherever you deploy the backend — see client/src/api.js).

API reference

GET /api/default-config Returns the starting tokenomics config used to pre-fill the UI.

POST /api/simulate Body: a full simulator config (see server/src/defaultConfig.js for shape). Returns price history, volume history, market cap history, and an agent-performance summary.

POST /api/simulate/compare Body: { configA, configB } — runs two configs and returns { resultsA, resultsB } in one call, useful for comparing e.g. a risky vs. a defensible allocation side by side.

All endpoints validate input (allocation bounds, positive numbers, sane limits on ticks/agent count) and return { errors: [...] } with a 400 status on invalid input.

What the concentration bar is showing you

The segmented bar on the results page is a direct visualization of the insider-concentration risk we discussed: each allocation bucket rendered proportionally, so you can see at a glance how much of the supply sits in liquidity (public, tradable) versus team/investor/treasury buckets (insiders). The wider the non-liquidity segments relative to liquidity, the more fragile the launch is to any single wallet selling — this is the same math that produced the ~82% crash in the earlier CLI example.

Disclaimer

This is a simplified model for planning and stress-testing assumptions — not a price predictor, and not financial or legal advice. Real launches involve regulatory, exchange-listing, and social dynamics this tool does not model. Consult qualified legal counsel on securities classification before launching.