Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/heysokam/nstd
n*std | Non-Standard Nim stdlib Extensions
https://github.com/heysokam/nstd
nim-lang
Last synced: 8 days ago
JSON representation
n*std | Non-Standard Nim stdlib Extensions
- Host: GitHub
- URL: https://github.com/heysokam/nstd
- Owner: heysokam
- License: mit
- Created: 2023-02-08T02:00:48.000Z (almost 2 years ago)
- Default Branch: master
- Last Pushed: 2024-06-25T01:47:07.000Z (5 months ago)
- Last Synced: 2024-06-25T13:23:44.740Z (5 months ago)
- Topics: nim-lang
- Language: Nim
- Homepage:
- Size: 818 KB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- License: license.md
Awesome Lists containing this project
README
![nstd](./res/gh_banner.png)
Collection of general purpose tools to extend Nim's std/ library.
It doesn't try to be standard. Just useful.```nim
import nstd ## Connector to all modules (except ntsd/auto)import nstd/types ## System type aliases
import nstd/typetools ## General Type tools and helpers
import nstd/address ## Address-related helpers, for easier C interop
import nstd/alias ## System proc aliases
import nstd/binary ## Read data from string bytebuffer binary information (like treeform/binny)
import nstd/compile ## Buildsystem helpers for compiling C code from inside Nim
import nstd/convert ## Type conversion tools
import nstd/defines ## General-purpose defines, for ergonomics
import nstd/modules ## Nim Modules management (import, include) tools
import nstd/dirs ## Tools for dir management
import nstd/files ## Tools for managing the PathFile type
import nstd/format ## Tools for formatting of text on console and logs
import nstd/git ## Git-related tools
import nstd/iter ## Extra Iterators
import nstd/logger ## Logging tools (heavily refactored version of std/logging)
import nstd/markers ## Templates for marking code paths in different ways (todo, unreachable, etc)
import nstd/macros ## Extra Macros
import nstd/node ## Node type and functionality
import nstd/opts ## CLI option tools
import nstd/paths ## os.paths missing procs (borrow from string) and extensions
import nstd/size ## sizeof() extensions
import nstd/time ## Ergonomic helpers for managing time# Not exported by default. They require dependencies other than nim's stdlib
import nstd/dl ## Ergonomic helpers for downloading files, in similar style to `nstd/shell`
import nstd/zip ## Ergonomic helpers for zipping files and folders, in similar style to `nstd/shell`
```
```md
# Compile-time Switches
-d:nstd.Prefix:"STRING" : (default: "「nstd」")
-d:nstd.LogName:"STRING" : (default: nstd.Prefix & "Logger" )
-d:nstd.LogFormat:"STRING" : (default: ???) #TODO
-d:nstd.LogFlushAll:on/off : (default: off)
```**License**: MIT | Copyright © `Ivan Mar (sOkam!)`