pinme
This skill should be used when the user asks to "deploy", "upload", "publish" a frontend project, static website, or build output. Also activates when user mentions "pinme", "IPFS deployment", or wants to host static files online.
install
source · Clone the upstream repo
git clone https://github.com/glitternetwork/skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/glitternetwork/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/pinme" ~/.claude/skills/glitternetwork-skills-pinme && rm -rf "$T"
manifest:
pinme/SKILL.mdsource content
PinMe Skill
Use PinMe CLI to deploy static files to IPFS and get a preview URL.
When to Use
- User requests deployment of a frontend project
- User wants to upload static files/website
- User mentions "pinme", "deploy", "publish", or "host"
- After building a frontend project (Vue, React, Next.js, etc.)
Deployment Steps
1. Check if PinMe is Installed
pinme --version
If not installed:
npm install -g pinme
2. Identify Static Files Directory
Look for these directories (in priority order):
- Vue/React/Vite default outputdist/
- Create React App outputbuild/
- Next.js static exportout/
- Pure static projectspublic/
Validation rules:
- Directory must exist
- Must contain
(for websites)index.html - Should contain static assets (CSS, JS, images)
3. Execute Upload
pinme upload <directory>
Examples:
pinme upload dist pinme upload build pinme upload ./my-static-site
4. Return Result
After successful upload, return only the preview URL:
https://pinme.eth.limo/#/preview/<hash>
Users can visit the preview page to:
- View the deployed website
- Get a fixed domain:
https://<name>.pinit.eth.limo
Important Rules
DO:
- Verify build output exists before uploading
- Check for
in the upload directoryindex.html - Return the preview URL to the user
DO NOT:
- Upload
node_modules/ - Upload
files.env - Upload
directory.git/ - Upload source code (use build output only)
- Upload configuration files (package.json, tsconfig.json, etc.)
- Upload empty or non-existent directories
Common Workflows
Build and Deploy (Vue/Vite)
npm run build pinme upload dist
Build and Deploy (React CRA)
npm run build pinme upload build
Build and Deploy (Next.js Static)
npm run build npm run export # or next export pinme upload out
Error Handling
| Error | Solution |
|---|---|
| Run |
| Check path, run build first |
| Check folder permissions |
| Upload failed | Check network, retry |
Other Commands
# List upload history pinme list pinme ls -l 5 # Remove uploaded file pinme rm <hash>