Article @ js

vcmpad, a String Padding Generator

Written by Dali Kewara who lives and works as Backend Developer—building useful and unexpected things—in Indonesia. Interested in #art, #writing, and #journey. His life motto is "Make it simple but Spectacular!".

Article cover image

Check out vcmpad's latest documentation at

npm package


Fast, lightweight, and customable string padding generator

String padding generator with custom Left/Right-Padding style. It allows you to generate string padding format such as LPS (Left Padding Space), LPZ (Left Padding Zero), RPS (Right Padding Space), and RPZ (Right Padding Zero)—or even you can create your own custom format.



npm install vcmpad --save


// Bower
bower install vcmpad --save



const vcmpad = require('vcmpad');


// Bower
<script src="bower_components/vcmpad/dist/vcmpad.min.js"></script>


There are two basic functions (vcmpad.left and vcmpad.right) to create String-Padding format using vcmpad, and they're absolutelly easy to use.

vcmpad.left(n, val, format[optional], direction[optional]);
  • Arguments
  • string|integern
  • string|integerval
  • string|integerformat [optional]
    • default space | ' '
  • booleandirection [optional]
    • default true
    • only takes effect if val.length > n.
    • if false, return last n.length characters.


A simple LPS format can be done like this:

var str = vcmpad.left(10, 'test');

console.log(str); // output '      test'

Next, you may try to make other Left-Padding combinations, for example:

vcmpad.left(10, 'test', '0'); // output '000000test'

vcmpad.left(10, 'test', 'left'); // output 'leftleftle'

vcmpad.left(10, 'test', 'left', false); // output 'ftlefttest'

vcmpad.left(10, 'test1234567890'); // output 'test123456'


A simple RPS format can be done like this:

var str = vcmpad.right(10, 'test');

console.log(str); // output 'test      '

Next, you may try to make other Right-Padding combinations, for example:

vcmpad.right(10, 'test', '0'); // output 'test000000'

vcmpad.right(10, 'test', 'right'); // output 'testrightr'

vcmpad.right(10, 'test', 'right', false); // output 'rightright'

vcmpad.right(10, 'test1234567890'); // output 'test123456'


The direction argument gives you option where string position should be returned if length of result or value higger than the number of n argument—basicly, it is first n length characters or last n length charatecrs.

vcmpad.left(10, 'test1234567890'); // output 'test123456'

vcmpad.left(10, 'test1234567890', false); // output '1234567890'

vcmpad.left(10, 'test', 'left'); // output 'leftleftle'

vcmpad.left(10, 'test', 'left', false); // output 'ftlefttest'





Copyright © 2019 Dali Kewara.


MIT License

Change logs.
  • Saturday 12:24 AM, July 25 2020 | "fixed tags mechanism"
  • Saturday 05:01 AM, July 18 2020 | "configure netlify cms & changed default frontmatter"
  • Friday 10:10 AM, July 17 2020 | "fixed badges background"
  • Friday 12:33 AM, July 17 2020 | "new theme 'rujak cingur' and some major changes"
Scroll to top