@knownasrazi/pathy
v1.0.0
Published
Cross-platform path normalization and shortening for display on POSIX and Windows.
Downloads
35
Maintainers
Readme
pathy
Cross-platform path normalization and display.
Zero dependencies - ~2 KB gzipped - TypeScript - Node + Bun + browser
Install
bun add @knownasrazi/pathy
npm install @knownasrazi/pathyUsage
import { normalize, join, basename, dirname, extname, shorten, isAbsolute } from "@knownasrazi/pathy";
normalize("a/./b/../c"); // { segments: ["a","c"], joined: "a/c" }
isAbsolute("/usr/bin"); // true
isAbsolute("C:\\x", "win32"); // true
join("a", "b", "c"); // "a/b/c"
basename("a/b/c"); // "c"
dirname("a/b/c"); // "a/b"
extname("file.tar.gz"); // ".gz"
shorten("/usr/local/bin/foo", 10); // "/usr/…/foo"API
| Export | Description |
| --- | --- |
| normalize(path, os?) | -> { segments, joined, absolute } |
| join(...parts) | posix join |
| basename/dirname/extname(path) | segment helpers |
| shorten(path, maxLen, os?) | first/…/last |
| isAbsolute(path, os?) | boolean |
os: "posix" | "win32".
Development
git clone https://github.com/knownasrazi/pathy.git
cd pathy
bun install
bun test
bun run build
bun run lintLicense
pathy - paths that travel.
