Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/wotancode/rutility

A JavaScript library for validating and formatting Chilean RUTs (Rol Único Tributario). It provides functions to add/remove dots and dashes, validate formats, and calculate check digits.
https://github.com/wotancode/rutility

chilean-rut chilean-rut-utils javascript-library rut rut-utilities typescript-library

Last synced: 25 days ago
JSON representation

A JavaScript library for validating and formatting Chilean RUTs (Rol Único Tributario). It provides functions to add/remove dots and dashes, validate formats, and calculate check digits.

Awesome Lists containing this project

README

        

# RUTility
## Chilean RUT Validation and Formatting Library
[![Version](https://img.shields.io/npm/v/rutility?style=flat&colorA=000000&colorB=000000)](https://www.npmjs.com/package/rutility)
[![Downloads](https://img.shields.io/npm/dt/rutility.svg?style=flat&colorA=000000&colorB=000000)](https://www.npmjs.com/package/rutility)

A library for validating and formatting the Chilean RUT (Rol Único Tributario). This library provides functions to format the RUT with dots and dashes, as well as to validate its format and check digit.

## Installation

You can install the library using npm:

```sh
npm install rutility
```

## Usage

### Import in a Node.js Project
```javascript
const { format, calculateDv, isValidRut, isFormat } = require('rutility');
```

### Import in an ES6 Module
```sh
import { format, calculateDv, isValidRut, isFormat } from 'rutility';
```

### Formatting Functions



Function
Description
Example




format.dot(rut: string): string
Formats a RUT by adding dots.
console.log(format.dot('12345678')); // '12.345.678'


format.dash(rut: string): string
Formats a RUT by adding a dash.
console.log(format.dash('123456780')); // '12345678-0'


format.dotDash(rut: string): string
Formats a RUT by adding dots and a dash.
console.log(format.dotDash('123456780')); // '12.345.678-0'


format.notDot(rut: string): string
Removes dots from a RUT.
console.log(format.notDot('12.345.678-0')); // '12345678-0'


format.notDash(rut: string): string
Removes the dash and check digit from a RUT.
console.log(format.notDash('12.345.678-0')); // '12.345.678'


format.notDotDash(rut: string): string
Removes dots and the dash from a RUT.
console.log(format.notDotDash('12.345.678-9')); // '12345678'

### Validation Functions



Function
Description
Example




calculateDv(rut: string | number): string
Calculates the check digit of a Chilean RUT.
console.log(calculateDv('12.345.678')); // '5'


isValidRut(rut: string): boolean
Validates if a Chilean RUT is valid.
console.log(isValidRut('12.345.678-5')); // true

### Format Validations



Function
Description
Example




isFormat.dot(rut: string): boolean
Checks if a RUT has the correct format with dots.
console.log(isFormat.dot('12.345.678')); // true


isFormat.dash(rut: string): boolean
Checks if a RUT has the correct format with a dash.
console.log(isFormat.dash('12345678-9')); // true


isFormat.dotDash(rut: string): boolean
Checks if a RUT has the correct format with dots and a dash.
console.log(isFormat.dotDash('12.345.678-9')); // true

## Contributing
If you wish to contribute to this project, please open an issue or submit a pull request.

### Main Developer
[![Contribuidores](https://contrib.rocks/image?repo=wotanCode/RUTility&max=500&columns=20)](https://github.com/wotanCode/RUTility/graphs/contributors)

## License
This project is licensed under the MIT License.