File utilities to speed up creating document files, setting default extension, and getting a slug
from a string. file-easy
provides a simple, lightweight, and easy-to-use set of functions for common file-related tasks. If you're tired of writing boilerplate code for handling filenames, creating text files, or generating URL-friendly slugs, file-easy
simplifies these operations so you can focus on your core application logic. It's particularly well-suited for projects that frequently handle text files or need to sanitize filenames for web use. No more complex regex or manual string manipulation – just clean, efficient file handling.
npm i file-easy
const fileEasy = require('file-easy')
// getting a slug
let fn = 'source Filename';
let slug = fileEasy.slug(fn)
console.log('Slug:', slug)
Will show:
Slug: source-filename
const fileEasy = require('file-easy')
let names = [
'Simple_File$Goes%Here',
'%%Welcome** Buddy%&^#$%'
];
names.forEach((name) => {
console.log('Source: "', name, '" is:', fileEasy.slug(name))
})
Will show:
Source: " Simple_File$Goes%Here " is: " simple-file-goes-here
Source: " %%Welcome** Buddy%&^#$% " is: " welcome-buddy
const fileEasy = require('file-easy')
// f1 is filename.js (no extension in original, apply extension)
let f1 = fileEasy.setDefaultExtension('filename', '.js)
// f2 is filename.js (extension already exists)
let f2 = fileEasy.setDefaultExtension('filename.js', '.json')
// f3 is filename. (extension starts with . in original)
let f3 = fileEasy.setDefaultExtension('filename.', '.js')
const fileEasy = require('file-easy')
let filename = './docs/sample.txt'
let content = 'String to go in'
/**
* Creates the `sample.txt` file in `./docs` folder
* If path does not exist, it will create it (e.g. `./docs`)
* The file is saved as a utf-8 format (standard format)
*/
fileEasy.saveDocument(filename, content)
- saveDocument(filename, content)
Save content in a file using utf8 format.
- setDefaultExtension(filename, extension) ⇒
string
Append specified extension if needed.
- slug(s) ⇒
string
Convert a string into an identifier.
Save content in a file using utf8 format.
Kind: global function
Throws:
Error
If input is invalid or if there was an error during the save process.
Param | Type | Description |
---|---|---|
filename | string |
The filename to create. It can also include a path ending with the filename. Path will be created if not exists. |
content | string |
The content to place in the file. |
Append specified extension if needed.
Kind: global function
Returns: string
- filename with either existing or specified extension
Throws:
TypeError
If filename or extension is not a string.Error
If extension is empty or doesn't start with a dot.
Param | Type | Description |
---|---|---|
filename | string |
The filename to check for an existing extension. |
extension | string |
The extension to append if filename has no extension. It should start with a dot (e.g. .txt ) |
Convert a string into an identifier.
Kind: global function
Returns: string
- The identifier string.
The following operations are performed on the string:
- Trim and convert to lower case.
- Remove diacritics (transliterate or remove non-ASCII characters).
- Replace spaces and special characters with hyphens, allowing underscores.
- Replace multiple hyphens with a single hyphen.
- Remove leading and trailing hyphens.
Param | Type | Description |
---|---|---|
s | string |
The string to convert. |
Ion Gireada - shytiger[at]yahoo.com
This project is licensed under the MIT License - see the LICENSE file for details.