{"id":24083301,"url":"https://github.com/mitranim/js","last_synced_at":"2025-04-30T18:23:12.079Z","repository":{"id":38794450,"uuid":"460531817","full_name":"mitranim/js","owner":"mitranim","description":"Kinda \"JS standard library\" that sucks less than alternatives.","archived":false,"fork":false,"pushed_at":"2025-04-02T18:44:36.000Z","size":2497,"stargazers_count":4,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-26T06:56:57.066Z","etag":null,"topics":["javascript","stdlib"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mitranim.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2022-02-17T17:11:01.000Z","updated_at":"2025-04-02T18:44:40.000Z","dependencies_parsed_at":"2023-11-24T15:29:14.056Z","dependency_job_id":"3ae02a8d-75f1-463d-a57d-514121bb704f","html_url":"https://github.com/mitranim/js","commit_stats":{"total_commits":44,"total_committers":1,"mean_commits":44.0,"dds":0.0,"last_synced_commit":"9bf81afeae3c472ca374cce48af551ce62b22304"},"previous_names":[],"tags_count":62,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mitranim%2Fjs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mitranim%2Fjs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mitranim%2Fjs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mitranim%2Fjs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mitranim","download_url":"https://codeload.github.com/mitranim/js/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251758688,"owners_count":21639087,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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","stdlib"],"created_at":"2025-01-09T23:56:19.411Z","updated_at":"2025-04-30T18:23:12.073Z","avatar_url":"https://github.com/mitranim.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Overview\n\nKinda \"JS standard library\" that doesn't suck. Or sucks less than X, insert some alternative here.\n\nImportant ***non-features***:\n\n  * Doesn't require Node or Deno.\n  * Doesn't require TypeScript.\n  * Doesn't require a transpiler.\n  * Doesn't require a bundler.\n  * Doesn't require NPM.\n  * No external dependencies.\n  * No prototype pollution.\n  * No globals.\n  * No slowness.\n\nImportant features:\n\n  * Environment-independent. Runs in browsers, Deno, Node.\n    * Approximate browser compatibility: evergreen, Safari 11+.\n    * Node compatibility: 18+.\n  * Compact and performant.\n  * Relatively few source files.\n  * Relatively clear source code.\n  * Native JS modules. Can be imported by URL.\n\nAlternatives that suck:\n\n  * Using only built-ins.\n  * Google Closure.\n  * Deno stdlib.\n  * Lodash.\n  * Various other things.\n\n## TOC\n\n* [#Usage](#usage)\n* [#Features](#features)\n* [#Perf](#perf)\n* [#License](#license)\n* [#Misc](#misc)\n\n## Usage\n\nUses native JS modules, which can be imported by URL in browsers and Deno. The truly lazy can import many core modules at once:\n\n```js\nimport * as a from 'https://cdn.jsdelivr.net/npm/@mitranim/js@0.1.62/all.mjs'\n```\n\nOtherwise, import specific modules you need. See the list below. Example:\n\n```js\nimport * as l from 'https://cdn.jsdelivr.net/npm/@mitranim/js@0.1.62/lang.mjs'\nimport * as s from 'https://cdn.jsdelivr.net/npm/@mitranim/js@0.1.62/str.mjs'\n```\n\nAlso available on NPM:\n\n```sh\nnpm i -E @mitranim/js\n```\n\n## Features\n\n  * [`lang`](docs/lang_readme.md): type assertions and other essentials needed by all other code.\n  * [`iter`](docs/iter_readme.md): tools for iteration and functional programming.\n  * [`obj`](docs/obj_readme.md): tools for manipulating JS objects and plain dicts.\n  * [`str`](docs/str_readme.md): tools for manipulating strings.\n  * [`coll`](docs/coll_readme.md): extended versions of JS data structure classes, with better APIs.\n  * [`url`](docs/url_readme.md): better URL implementation.\n  * [`time`](docs/time_readme.md): tools for datetimes and intervals.\n  * [`path`](docs/path_readme.md): various functions for working with FS paths.\n  * [`dom`](docs/dom_readme.md): shortcuts for working with the DOM.\n  * [`dom_shim`](docs/dom_shim_readme.md): lightweight and performant shim for DOM nodes and elements.\n  * [`dom_global_shim`](docs/dom_global_shim_readme.md): shimmed DOM globals, interchangeable with `dom_global_native`\n  * [`dom_global_native`](docs/dom_global_native_readme.md): native DOM globals, interchangeable with `dom_global_shim`\n  * [`dom_reg`](docs/dom_reg_readme.md): shortcuts for registering custom DOM elements.\n  * [`prax`](docs/prax_readme.md): simple system for rendering DOM elements. React-inspired syntax, better semantics and performance.\n  * [`obs`](docs/obs_readme.md): observables via proxies.\n  * [`obs_dom`](docs/obs_dom_readme.md): automatic reactivity for custom DOM elements.\n  * [`http`](docs/http_readme.md): shortcuts for the fetch/Response APIs, URL routing, cookie decoding/encoding.\n  * [`http_deno`](docs/http_deno_readme.md): tools for HTTP servers running in Deno.\n  * [`http_srv`](docs/http_srv_readme.md): streaming and broadcasting tools for generic HTTP servers.\n  * [`live_deno`](docs/live_deno_readme.md): tools for live-reloading in development.\n  * [`cli`](docs/cli_readme.md): essential tools for CLI apps.\n  * [`test`](docs/test_readme.md): tools for testing and benchmarking.\n\nSome other extremely useful features are undocumented for now. Docs are in progress.\n\n## Perf\n\n* Written carefully and with benchmarks.\n* Balances optimization and code compactness.\n* Tries to avoid ludicrous inefficiencies.\n* Benchmarked only in V8 for now. (Engine used in Deno / Node / Chrome.)\n\n## License\n\nhttps://unlicense.org\n\n## Misc\n\nContact me by opening an issue or via https://mitranim.com/#contacts.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmitranim%2Fjs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmitranim%2Fjs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmitranim%2Fjs/lists"}