{"id":39761058,"url":"https://github.com/constructive-io/dev-utils","last_synced_at":"2026-01-20T17:07:44.529Z","repository":{"id":325705073,"uuid":"1102151129","full_name":"constructive-io/dev-utils","owner":"constructive-io","description":"misc web developer tools","archived":false,"fork":false,"pushed_at":"2025-12-27T21:03:46.000Z","size":5239,"stargazers_count":0,"open_issues_count":2,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-12-27T22:28:46.183Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/constructive-io.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-11-22T23:00:46.000Z","updated_at":"2025-12-27T12:28:41.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/constructive-io/dev-utils","commit_stats":null,"previous_names":["hyperweb-io/dev-utils","constructive-io/dev-utils"],"tags_count":421,"template":false,"template_full_name":null,"purl":"pkg:github/constructive-io/dev-utils","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/constructive-io%2Fdev-utils","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/constructive-io%2Fdev-utils/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/constructive-io%2Fdev-utils/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/constructive-io%2Fdev-utils/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/constructive-io","download_url":"https://codeload.github.com/constructive-io/dev-utils/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/constructive-io%2Fdev-utils/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28535169,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-18T10:13:46.436Z","status":"ssl_error","status_checked_at":"2026-01-18T10:13:11.045Z","response_time":98,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-01-18T11:38:00.389Z","updated_at":"2026-01-18T11:38:01.131Z","avatar_url":"https://github.com/constructive-io.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# dev-utils\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/constructive-io/constructive/refs/heads/main/assets/outline-logo.svg\" height=\"250\"\u003e\n  \u003cbr /\u003e\n  Open-source development utilities for modern web applications\n  \u003cbr /\u003e\n  \u003ca href=\"https://github.com/constructive-io/dev-utils/actions/workflows/ci.yml\"\u003e\n    \u003cimg height=\"20\" src=\"https://github.com/constructive-io/dev-utils/actions/workflows/ci.yml/badge.svg\" /\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/constructive-io/dev-utils/blob/main/LICENSE\"\u003e\n    \u003cimg height=\"20\" src=\"https://img.shields.io/badge/license-MIT-blue.svg\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\nA comprehensive collection of TypeScript utilities for working with schemas, JSON-LD, API clients, and general-purpose development tools.\n\n## Packages\n\n| Package | npm | Source | Description |\n|---------|-----|--------|-------------|\n| **appstash** | [![npm](https://img.shields.io/npm/v/appstash.svg)](https://www.npmjs.com/package/appstash) | [GitHub](./packages/appstash) | Simple, clean application directory resolution |\n| **clean-ansi** | [![npm](https://img.shields.io/npm/v/clean-ansi.svg)](https://www.npmjs.com/package/clean-ansi) | [GitHub](./packages/clean-ansi) | Remove ANSI escape codes from strings |\n| **create-gen-app** | [![npm](https://img.shields.io/npm/v/create-gen-app.svg)](https://www.npmjs.com/package/create-gen-app) | [GitHub](./packages/create-gen-app) | Clone and customize template repositories with variable replacement |\n| **inquirerer** | [![npm](https://img.shields.io/npm/v/inquirerer.svg)](https://www.npmjs.com/package/inquirerer) | [GitHub](./packages/inquirerer) | TypeScript-first library for building beautiful CLI interfaces with interactive prompts |\n| **jsonldjs** | [![npm](https://img.shields.io/npm/v/jsonldjs.svg)](https://www.npmjs.com/package/jsonldjs) | [GitHub](./packages/jsonld-tools) | Powerful JSON-LD builder with comprehensive filtering and subgraph extraction |\n| **komoji** | [![npm](https://img.shields.io/npm/v/komoji.svg)](https://www.npmjs.com/package/komoji) | [GitHub](./packages/komoji) | the tiny case transformer — effortlessly transform strings between naming conventions |\n| **nested-obj** | [![npm](https://img.shields.io/npm/v/nested-obj.svg)](https://www.npmjs.com/package/nested-obj) | [GitHub](./packages/nested-obj) | Safely access and modify nested object properties using string paths |\n| **schema-sdk** | [![npm](https://img.shields.io/npm/v/schema-sdk.svg)](https://www.npmjs.com/package/schema-sdk) | [GitHub](./packages/schema-sdk) | Convert JSON Schema OpenAPI Spec to TypeScript Clients |\n| **schema-typescript** | [![npm](https://img.shields.io/npm/v/schema-typescript.svg)](https://www.npmjs.com/package/schema-typescript) | [GitHub](./packages/schema-typescript) | Convert JSON Schema to TypeScript Definitions |\n| **strfy-js** | [![npm](https://img.shields.io/npm/v/strfy-js.svg)](https://www.npmjs.com/package/strfy-js) | [GitHub](./packages/strfy-js) | Stringify JSON as JavaScript with extended serialization capabilities |\n| **yanse** | [![npm](https://img.shields.io/npm/v/yanse.svg)](https://www.npmjs.com/package/yanse) | [GitHub](./packages/yanse) | Fast and lightweight terminal color styling library with chalk-like API |\n| **@constructive-io/fetch-api-client** | [![npm](https://img.shields.io/npm/v/@constructive-io/fetch-api-client.svg)](https://www.npmjs.com/package/@constructive-io/fetch-api-client) | [GitHub](./packages/fetch-api-client) | Universal Fetch-based HTTP client for Node.js and browsers |\n| **find-and-require-package-json** | [![npm](https://img.shields.io/npm/v/find-and-require-package-json.svg)](https://www.npmjs.com/package/find-and-require-package-json) | [GitHub](./packages/find-and-require-package-json) | Find the package.json file from within a build/package |\n| **@constructive-io/http-errors** | [![npm](https://img.shields.io/npm/v/@constructive-io/http-errors.svg)](https://www.npmjs.com/package/@constructive-io/http-errors) | [GitHub](./packages/http-errors) | HTTP error handling utilities for API clients |\n| **@constructive-io/node-api-client** | [![npm](https://img.shields.io/npm/v/@constructive-io/node-api-client.svg)](https://www.npmjs.com/package/@constructive-io/node-api-client) | [GitHub](./packages/node-api-client) | Lightweight HTTP client for Node.js RESTful APIs |\n| **@schema-typescript/cli** | [![npm](https://img.shields.io/npm/v/@schema-typescript/cli.svg)](https://www.npmjs.com/package/@schema-typescript/cli) | [GitHub](./packages/schema-ts-cli) | schema-typescript CLI |\n\n## Development\n\n### Prerequisites\n\n- Node.js 18+\n- `pnpm` \n\n### Getting Started\n\nWhen first cloning the repo:\n\n```bash\n# Install dependencies\npnpm install\n\n# Build all packages\npnpm build\n```\n\n### Available Scripts\n\n```bash\n# Build all packages\npnpm build\n\n# Clean all build artifacts\npnpm clean\n\n# Run tests across all packages\npnpm test\n\n# Lint all packages\npnpm lint\n```\n\n## Disclaimer\n\nAS DESCRIBED IN THE LICENSES, THE SOFTWARE IS PROVIDED \"AS IS\", AT YOUR OWN RISK, AND WITHOUT WARRANTIES OF ANY KIND.\n\nNo developer or entity involved in creating this software will be liable for any claims or damages whatsoever associated with your use, inability to use, or your interaction with other users of the code, including any direct, indirect, incidental, special, exemplary, punitive or consequential damages, or loss of profits, cryptocurrencies, tokens, or anything else of value.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fconstructive-io%2Fdev-utils","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fconstructive-io%2Fdev-utils","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fconstructive-io%2Fdev-utils/lists"}