Dependencies
sitemd ships as a compiled binary — no Node.js required. The five npm dependencies below are for optional features — icons, image processing, and OG image generation. Your site builds and serves without them, but icons won't render and image optimization won't run.
What gets installed?
| Package | What it does |
|---|---|
lucide-static |
1900+ UI icon SVGs, inlined at build time |
simple-icons |
3400+ brand logo SVGs for social links and integrations |
sharp |
Image optimization, favicon generation, dimension detection |
satori |
Converts HTML/CSS to SVG for OG image generation |
@resvg/resvg-js |
Renders Satori's SVG output to PNG |
All five are declared in sitemd/package.json. Install them with:
npm install
Run this from your project root (the directory containing sitemd/).
How does auto-install work?
The dev server checks for missing dependencies every time it starts. If any are missing, it runs npm install automatically before serving your site.
⟳ Installing missing dependencies: sharp, lucide-static
... npm output ...
✓ Dependencies installed
This happens in three places:
- Dev server startup —
./sitemd/sitemd launchchecks and installs before the first build - The
/launchskill — checks fornode_modules/and runsnpm installif missing before starting the server - Deploy —
sitemd deployblocks with an error if dependencies are missing (production builds must have all deps)
If npm install fails (no network, permissions issue), the dev server still starts. You get a warning and icons won't render, but everything else works.
What happens when dependencies are missing?
The behavior depends on the context:
| Context | Behavior |
|---|---|
Dev server (sitemd launch) |
Auto-installs, falls back to warning |
Standalone build (sitemd build) |
Prints warning, continues |
Deploy (sitemd deploy) |
Blocks with error, exits |
| CLI interactive menu | Shows missing deps in status line |
MCP sitemd_status |
Lists npm install as suggested action |
In all non-deploy cases, a missing dependency degrades gracefully. Pages build and serve — you just lose the features that depend on the missing package.
How do I check dependency status?
Run the CLI interactive menu:
sitemd
The status line shows dependency state. If anything is missing, it tells you which packages and suggests npm install.
Or check via MCP by calling sitemd_status — missing dependencies appear as a suggested action.
When should I run npm install?
Run npm install after:
- Cloning or downloading a sitemd project for the first time
- Updating sitemd to a new version (dependencies may change)
- Deleting
node_modules/for any reason
The dev server handles this automatically on launch, so in practice you rarely need to think about it. If you see a warning about missing dependencies, run npm install and restart the server.
Related
- Getting Started — initial setup and install methods
- Icons — the icon system that depends on
lucide-staticandsimple-icons - SEO — OG image generation that depends on
satoriand@resvg/resvg-js - Live Build Sync — how the dev server watches and rebuilds