Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/brian3647/minifunc

An extremely simple, small & type-safe functional programming library for TypeScript/JavaScript.
https://github.com/brian3647/minifunc

functional functional-programming library node type-safety typescript

Last synced: about 13 hours ago
JSON representation

An extremely simple, small & type-safe functional programming library for TypeScript/JavaScript.

Awesome Lists containing this project

README

        

# minifunc ⚜️

![License](https://img.shields.io/github/license/Brian3647/minifunc)
![GitHub issues](https://img.shields.io/github/issues/Brian3647/minifunc)
![Build status](https://img.shields.io/github/actions/workflow/status/Brian3647/minifunc/bun.yml)

An extremely simple, small & type-safe functional programming library for TypeScript/JavaScript. - [docs](https://brian3647.github.io/minifunc/)

_heavily inspired by the rust programming language: https://rust-lang.org_

## Installation

You can use your favorite package manager to install minifunc via npmjs.org packages. For example:

```bash
$ bun install minifunc
```

## Usage

The documentation is available [here](https://brian3647.github.io/minifunc/).

## Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change. If using bun, you can run tests with `bun test`. Most of the work is automated by husky (with the `pre-comit` hook) that you can install with `bun run prepare` or `npm run prepare`. Please make sure to update tests as appropriate.

This project uses prettier for code formatting and biomejs for linting. Both have their respective scripts in `package.json`. For versioning, follow the [Semantic Versioning](https://semver.org/) guidelines.

Although optional, it is recommended to use gitmoji (https://gitmoji.carloscuesta.me/) or cm (https://github.com/Brian3647/cm) for commit messages.

## License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details