@mera-vansh/template
v0.0.3
Published
Canonical scaffold template for @mera-vansh packages — copy this to create new packages
Maintainers
Readme
@mera-vansh/template
Canonical scaffold template for Mera Vansh packages. Copy this to bootstrap a new
@mera-vansh/*package with all conventions pre-wired.
Installation
# npm
npm install @mera-vansh/template
# pnpm
pnpm add @mera-vansh/template
# yarn
yarn add @mera-vansh/templateRequirements: Node.js ≥ 22
Usage
import { greet } from "@mera-vansh/template";
console.log(greet("world"));
// → "Hello from @mera-vansh, world!"CommonJS:
const { greet } = require("@mera-vansh/template");API Reference
greet(name: string): string
Returns a greeting string prefixed with the @mera-vansh scope.
| Parameter | Type | Description |
|-----------|------|-------------|
| name | string | The name to include in the greeting |
Returns: string
Creating a New Package from This Template
This package is the canonical scaffold for all @mera-vansh/* packages. Every configuration file is fully annotated to explain the reasoning behind each decision.
# 1. Copy the template
cp -r packages/template packages/my-new-package
# 2. Find-and-replace "template" → "my-new-package" in all files
# (package.json, tsconfig.json, project.json, README.md, src/index.ts)
# 3. Update package.json fields:
# - name, description, keywords, version
# 4. Add your new package to tsconfig.base.json "paths":
# "@mera-vansh/my-new-package": ["packages/my-new-package/src/index.ts"]
# 5. Wire the workspace dep
pnpm installWhat's Included
| File | Purpose |
|------|---------|
| tsup.config.ts | Dual ESM+CJS build, no sourcemaps (security) |
| tsconfig.json | Extends shared strict TypeScript config |
| vitest.config.ts | Unit test runner with v8 coverage |
| eslint.config.mjs | Extends shared strict ESLint config |
| project.json | Nx task definitions (build, lint, type-check, test) |
| .npmignore | Blocks src/ and all tooling from npm publish |
| src/index.ts | Annotated example export |
| src/__tests__/ | Example Vitest test suite |
Development
This package is part of the mera-vansh monorepo.
# Build
pnpm build
# Type-check
pnpm type-check
# Lint
pnpm lint
# Test
pnpm test
# Test with coverage
pnpm test:coverage
# Dry-run publish check (verify no src/ leaked)
pnpm pack --dry-runContributing
See CONTRIBUTING.md at the monorepo root.
When contributing to this template, remember that changes here should represent conventions that all packages in the monorepo should follow.
License
GPL-3.0 © Mera Vansh — dwivna
See LICENSE for the full license text.
