Radpath
Path library for Elixir inspired by Python's pathlib
Install / Use
/learn @lowks/RadpathREADME
Radpath
A library for dealing with paths in Elixir largely inspired by Python's pathlib.
Getting Started
To use Radpath, add a dependency in your mix:
def deps do
[ { :Radpath, github: "lowks/Radpath"}]
end
then mix deps.get fetches dependencies and compiles Radpath.
Status
Developed whenever I can find the time.
Running Tests
Running tests against a stable release of Elixir defined by 'STABLE_ELIXIR_VERSION' in the Makefile:
make ci
Running tests against your system's Elixir:
make
Docs (Lite Version)
To list down files in a path:
Radpath.files("/home/lowks/Documents")
or if you wanted to filter out certain files with pdf extensions:
Radpath.files("/home/lowks/Documents", "pdf")
Listing down only directories:
Radpath.dirs("/home/lowks")
To create symlink:
Radpath.symlink(source, destination)
To create tempfile:
{status, fd, file_path} = Radpath.mktempfile
IO.write fd, "hoho"
File.close fd
File.read! filepath
"hoho"
File.rm! filepath
This uses all the defaults
To customize the location plus the extension:
{_, fd, filepath} = Radpath.mktempfile(".log", "/home/lowks/Downloads")
IO.write fd, "hoho"
File.read! filepath
"hoho"
File.close! filepath
The default is ".log". Checkout the rest of the docs in the docs folder.
Run mix docs to generate a nice docs in a local folder or you can read them online: Radpath hexdocs
Check out test examples for usage.
Related Skills
node-connect
342.0kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
84.7kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
342.0kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
84.7kCommit, push, and open a PR
