{"library":"siroc","title":"Siroc - Zero-Config Node Build Tooling","description":"Siroc is a zero-configuration yet extensible framework designed for developing Node.js applications and libraries. It aims to simplify the build process by intelligently supporting TypeScript and modern JavaScript syntax, leveraging industry-standard tools like Rollup and esbuild under the hood for bundling and type definition generation. The package, currently at `v0.16.0` (as of August 2021), maintains a frequent release cadence, often introducing minor versions with significant breaking changes, aligning with its declared \"work in progress\" status. Key differentiators include its convention-over-configuration approach, extensibility through custom commands and build hooks, and comprehensive TypeScript support. Siroc automatically infers build configurations from `package.json` fields such as `main`, `module`, `browser`, `bin`, and `exports`, and offers robust support for Yarn workspaces in monorepo setups. It also handles `.d.ts` generation and transpires subpath patterns efficiently using `mkdist`.","language":"javascript","status":"active","last_verified":"Sun Apr 19","install":{"commands":["npm install siroc"],"cli":{"name":"siroc","version":null}},"imports":["import { defineSirocConfig } from 'siroc'","import type { SirocConfig } from 'siroc'"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"{\n  \"name\": \"my-siroc-package\",\n  \"version\": \"1.0.0\",\n  \"main\": \"./dist/index.js\",\n  \"module\": \"./dist/index.mjs\",\n  \"types\": \"./dist/index.d.ts\",\n  \"scripts\": {\n    \"build\": \"siroc build\",\n    \"dev\": \"siroc dev\"\n  },\n  \"devDependencies\": {\n    \"siroc\": \"^0.16.0\"\n  }\n}\n// src/index.ts\nexport const greet = (name: string) => `Hello, ${name}!`\n\n// siroc.config.ts\nimport { defineSirocConfig } from 'siroc'\n\nexport default defineSirocConfig({\n  // Custom configuration options (fully typed)\n  // Example: Add a custom build hook\n  hooks: {\n    'build:done': (ctx) => {\n      console.log('Build completed for:', ctx.pkg.name)\n    }\n  }\n})\n","lang":"typescript","description":"Demonstrates setting up a `package.json` for siroc, a basic TypeScript entry file, and a `siroc.config.ts` file with `defineSirocConfig`.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":null}