{"id":40446658,"url":"https://github.com/maddimathon/utility-typescript","last_synced_at":"2026-03-04T11:03:47.504Z","repository":{"id":298105385,"uuid":"963777352","full_name":"maddimathon/utility-typescript","owner":"maddimathon","description":"TypeScript utilities (types, functions, classes) to use in various projects.","archived":false,"fork":false,"pushed_at":"2025-10-31T05:12:31.000Z","size":4321,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-20T23:47:10.440Z","etag":null,"topics":["javascript-utilities","javascript-utility","npm-package","npm-package-typescript","typescript-library","typescript-utilities"],"latest_commit_sha":null,"homepage":"https://maddimathon.github.io/utility-typescript","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/maddimathon.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","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-04-10T07:35:55.000Z","updated_at":"2025-10-31T05:12:35.000Z","dependencies_parsed_at":"2025-06-09T12:51:09.444Z","dependency_job_id":"3afb353d-7cd0-4fbe-8d35-ac5348aed9c0","html_url":"https://github.com/maddimathon/utility-typescript","commit_stats":null,"previous_names":["maddimathon/utility-typescript"],"tags_count":15,"template":false,"template_full_name":null,"purl":"pkg:github/maddimathon/utility-typescript","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maddimathon%2Futility-typescript","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maddimathon%2Futility-typescript/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maddimathon%2Futility-typescript/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maddimathon%2Futility-typescript/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/maddimathon","download_url":"https://codeload.github.com/maddimathon/utility-typescript/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maddimathon%2Futility-typescript/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30078421,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-04T08:01:56.766Z","status":"ssl_error","status_checked_at":"2026-03-04T08:00:42.919Z","response_time":59,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5: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":["javascript-utilities","javascript-utility","npm-package","npm-package-typescript","typescript-library","typescript-utilities"],"created_at":"2026-01-20T17:01:42.214Z","updated_at":"2026-03-04T11:03:47.481Z","avatar_url":"https://github.com/maddimathon.png","language":"TypeScript","readme":"---\ntitle: ReadMe\n---\n\n\u003c!--README_HEADER--\u003e\n# Utility TypeScript @ 2.0.0-beta.2\n\u003c!--/README_HEADER--\u003e\n\n\u003c!--README_DESC--\u003e\nTypeScript utilities (types, functions, classes) to use in various projects.\n\u003c!--/README_DESC--\u003e\n\nProbably not best to use in production/client-side without a bundler (and\nincluding only the required exports) to avoid bulk, inefficiency, and alpha/beta\nitems.\n\nThe library aims to be pretty configurable, but it's definitely targeted towards\nmy personal needs/preferences rather than (web) developers in general.\n\n\n## Changelog\n\n\u003c!--README_DOCS_CHANGELOG--\u003e\nRead it from [the source](https://github.com/maddimathon/utility-typescript/blob/main/CHANGELOG.md) \nor \n[the docs site](https://maddimathon.github.io/utility-typescript/Changelog.html).\n\u003c!--/README_DOCS_CHANGELOG--\u003e\n\n\n## Install\n\n\u003c!--README_INSTALL--\u003e\n```bash\nnpm i -D @maddimathon/utility-typescript@2.0.0-beta.2\nnpm i -D github:maddimathon/utility-typescript#2.0.0-beta.2\n```\n\u003c!--/README_INSTALL--\u003e\n\n\n## Use\n\nFor an overview of all exported items, including types, see the docs website\nbelow.\n\n\u003c!--README_DOCS_CTA--\u003e\n[Read Documentation](https://maddimathon.github.io/utility-typescript)\n\u003c!--/README_DOCS_CTA--\u003e\n\n\n### Exports \u0026 Entry Points\n\nThere are four defined entry points, including the root, though it should be\npossible to target individual files (carefully and at your own risk, paths may\nchange without being considered a breaking change). The root entry point exports\nthe other entry points as modules.\n\n```ts\nimport {\n    type Types,\n    classes,\n    functions,\n} from '@maddimathon/utility-typescript';\n\nimport type { ... } from '@maddimathon/utility-typescript/types';\n\nimport { ... } from '@maddimathon/utility-typescript/classes';\nimport { ... } from '@maddimathon/utility-typescript/functions';\n```\n\n\n## Development \u0026 Coding Practices\n\nThis library is maintained by [Maddi Mathon](https://www.maddimathon.com) and is\ncurrently unlikely to accept other contributions.\n\nEach file that defines items/exports should limit its exports to one item and\nits associated types, if applicable.  Occasionally (and judiciously), it may\nmake more sense to define a small number of closely-related items in the same\nfile.\n\n### Directory Structure\n\nAll files required for development but ommitted from the published package\nshould be in `src/`.\n\nFiles compiled in order to be included in the published package should be\nwritten to `dist/`.\n\nDocumentation should be a valid HTML static site (for use with GitHub Pages)\nwith a home page at `docs/index.html`.\n\nScripts used for development (building, publishing, testing, etc.) should be in\n`.scripts/`.  Subfolders for classes, functions, and variables separate\nresources from scripts meant to be run via npm.\n\n### Naming Conventions\n\nLong and clear is better than short and confusing.\n\nAbstract classes should start with `Abstract`.\n\nClasses made only to be children of other classes should be prefixed with their\nparent class (e.g., `ParentClass_Child`).\n\n### Documentation\n\nDocumentation is good and helpful.  The docs website for this package is mostly\nauto-generated from block comments and typing in the source.  Keeping the readme\nand changelog up to date is also important.\n\n#### TypeDoc\n\nDocumentation for the included JavaScript is generated from the TypeScript types\nand block comments in the source.  Every new addition should be thoroughly\ndocumented from the start.\n\nTo include source code in documentation, add the `@source` block tag (uses\n[typedoc-plugin-inline-sources](https://www.npmjs.com/package/typedoc-plugin-inline-sources)).\n\n### Unit Testing\n\nUnit tests are written in the source but run after compile and minimize (via\n`Build` or `Test` scripts).  Tests should be written in a file with the same path\nbut with `.test` added before the extension — e.g., `myFunction.ts` is tested by\n`myFunction.test.ts`.\n\n### TypeScript\n\nEvery subdirectory should have its own `index.ts` that re-exports the contents\nof its files.  **Types should also be tested** using the utility types in \n{@link Types.Test}.\n\n\n\n## License\n\nThis library uses the [MIT license](LICENSE.md).  Please read and understand the\nlicense — I promise it’s short!","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaddimathon%2Futility-typescript","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmaddimathon%2Futility-typescript","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaddimathon%2Futility-typescript/lists"}