中文 | 日本語 | Русский язык
A template management tool for organizing and listing various project templates. It provides a unified registry of Trapar Waves template packages with metadata, enabling quick discovery and selection of templates for CLI, React, Vue, LLM, and more.
- Centralized Template Registry: Manages multiple project templates (CLI, React, Vue, LLM, etc.) from a single source of truth.
- Pre-integrated Metadata: Ships with built-in template metadata from official Trapar Waves template packages, ready to use out of the box.
- Unified Template List: Provides a consistent API (
createList) for accessing and selecting templates programmatically. - Dual Module Support: Supports both ESM and CommonJS module formats for maximum compatibility.
- Type Safety: Written in TypeScript with full type definitions exported for a reliable developer experience.
- Lightweight: Minimal dependencies (
destr,pkg-types,ufo) with a small footprint.
- Language: TypeScript
- Build Tool: Rslib (
@rslib/core) - Runtime: Node.js
- Dependencies:
destr(safe JSON parsing),pkg-types(package.json utilities),ufo(URL utilities) - Linting: ESLint with
@antfu/eslint-config
See the package.json for a full list of dependencies.
- Node.js (>= 18.x recommended)
- Package manager (npm, yarn, or pnpm)
Install the package as a dependency in your project:
npm install @trapar-waves/captainOr with yarn:
yarn add @trapar-waves/captainOr with pnpm:
pnpm add @trapar-waves/captainImport and use the template list in your project:
import { createList } from "@trapar-waves/captain";
console.log(createList);
// Outputs an array of template objects with name and description├── src/
│ ├── index.ts # Entry point, re-exports public API
│ ├── create-list.ts # Template list creation logic
│ └── package.ts # Template package metadata definitions
├── dist/ # Compiled output (ESM + CJS)
├── rslib.config.ts # Rslib build configuration
├── eslint.config.js # ESLint configuration
├── tsconfig.json # TypeScript configuration
└── package.json # Project dependencies and scripts
| Template | Description |
|---|---|
@trapar-waves/cli-template |
CLI development template |
@trapar-waves/llm-template |
LLM project template |
@trapar-waves/react-antd-pro |
React + Ant Design Pro enterprise app |
@trapar-waves/react-mantine-tailwind |
React + Mantine + Tailwind UI |
@trapar-waves/react-tailwind |
React + Tailwind starter |
@trapar-waves/react-tanstack |
React + TanStack Query/Router |
@trapar-waves/react-three-maplibre |
3D map visualization (Three.js + MapLibre) |
@trapar-waves/react-visgl-maplibre |
Geospatial 3D rendering (Deck.gl + MapLibre) |
@trapar-waves/vue-tailwind |
Vue 3 + Tailwind starter |
Contributions are welcome and greatly appreciated! Please follow these steps to contribute:
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
MIT License © 2025 Trapar Waves
- Rikka: admin@rikka.cc
- GitHub Profile: Muromi-Rikka