pumki
v2.0.0
Published
CLI for installing Pumki UI components
Maintainers
Readme
🌸 Pumki CLI
Table of Contents
- Features
- Installation
- Quickstart
- Usage
- Doctor Command
- Example
- Components
- Troubleshooting
- Contributing
- License
✨ Features
- One-liner component install
- Auto-detects and uses your package manager
- Fetches components directly from pumki-ui
- Built on top of shadcn/ui ecosystem
- Cross-platform support: macOS, Linux, Windows, WSL
- Lightweight and blazing fast
⚠️ Prerequisites
Pumki works with projects that use shadcn/ui + Tailwind CSS.
You must initialize shadcn once in your project:
npx shadcn@latest initThis sets up:
components.json- Tailwind integration
- required project structure
💡 You can verify your setup anytime using:
npx pumki doctor📦 Installation
Option 1: Use without installation (recommended ✅)
No installation needed — run directly with your package manager:
npm
npx pumki add <component-name>
npx pumki add stats-carouselpnpm
pnpm dlx pumki add stats-carouselyarn
yarn dlx pumki add stats-carouselBun
# macOS/Linux
bunx pumki add stats-carousel
# or (works everywhere)
bun x pumki add stats-carousel
# Windows (PowerShell/CMD) — use this:
bun x pumki add stats-carouselNote: bunx is a symlink available on macOS/Linux. On Windows, use bun x.
Option 2: Global install (for convenience)
If you want to avoid typing npx every time:
# npm
npm i -g pumki
# pnpm
pnpm add -g pumki
# yarn
yarn global add pumki
# bun
bun add -g pumkiThen you can run:
pumki add stats-carousel⚡ Quickstart
Add any component from Pumki-UI into your project in one line:
npx pumki add stats-carouselThat’s it. Pumki fetches the component JSON from pumki-ui and scaffolds it into your project.
🛠 Usage
# Add a component by name
npx pumki add <component-name>
# Example
npx pumki add stats-carousel💡 Tips:
- Component names map to entries in pumki-ui.
- Want shorter commands? → Install globally and just run
pumki add ….
Doctor Command
check if your project is properly configured:
npx pumki doctorExample output:
✔ Project detected
✔ React found
✔ Tailwind configured
✖ shadcn/ui is not initialized
⚠ Missing dependencies: clsx, tailwind-merge
Fix suggestions:
- Run: npx shadcn@latest init
- Install: npm install clsx tailwind-merge📥 Example
Command:
npx pumki add stats-carouselOutput:
✨ Adding stats-carousel from Pumki-UI...
✔ Component added successfully!🧩 Components
Browse the full catalog:
- https://github.com/AnshSinghSonkhia/pumki-ui/tree/main/public/r
❓ Troubleshooting
Command not found
- If installed globally, make sure you used:
npm i -g pumki - Then run:
pumki add <component> - If installed locally, run with
npx(or your package manager’s equivalent):npx pumki add <component>
- If installed globally, make sure you used:
Permission errors on global install (macOS/Linux)
- Try:
npm i -g pumki --unsafe-perm - Or use a Node version manager (nvm, fnm)
- Try:
Wrong package manager being used
- Pumki auto-detects, but you can ensure a lockfile (
package-lock.json,pnpm-lock.yaml,yarn.lock,bun.lockb) exists before running. - If none exist, it defaults to npm.
- Pumki auto-detects, but you can ensure a lockfile (
shadcn not initialized
❌ shadcn/ui is not initialized- Fix:
npx shadcn@latest init
npm error ENOTEMPTY / npx issues
- Fix:
npm cache clean --force - Or delete:
C:\Users\<your-user>\AppData\Local\npm-cache\_npx
- Fix:
Command not found
- Global install → use pumki add
- Otherwise → use npx pumki add
Wrong package manager
Ensure lockfile exists:
- package-lock.json
- pnpm-lock.yaml
- yarn.lock
- bun.lockb
If you hit an issue, please open an issue with your OS, Node version, package manager, and command used.
🤝 Contributing
Contributions are welcome!
- Fork this repo
- Create a feature branch
- Commit your changes
- Push and open a PR 🎉
📜 License
MIT © Ansh Singh Sonkhia
If you find Pumki useful, consider starring the repo to support the project. 🌟
