| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
A simple library that takes user input the same way it is done in Python.
TinyInput is a lightweight JavaScript library that provides an easy way to read user input from the standard input (stdin) and write to the standard output (stdout). Inspired by Python's built-in input() function, TinyInput aims to simplify user input handling in Node.js applications.
To install TinyInput, run the following command:
npm install tinyinput
To use TinyInput, import the library and call the input() function. By default, it returns a string and ensures the input is not empty.
import { input } from 'tinyinput';
async function main() {
// Basic usage (returns string)
const name = await input('What is your name? ');
console.log(`Hello, ${name}!`);
// Integer input (retries until valid)
const age = await input('How old are you? ', 'int');
console.log(`Next year you will be ${age + 1}`);
// Float input (retries until valid)
const price = await input('Enter price: ', 'float');
console.log(`Total with tax: ${(price * 1.15).toFixed(2)}`);
// Password input (hides typing)
const password = await input('Enter password: ', 'password');
console.log('Securely received password');
// Email validation
const email = await input("Enter email: ", "email");
console.log(`Updating record for ${email}`);
// Confirmation (returns boolean)
const save = await confirm("Save changes?");
if (save) {
console.log("Saved!");
}
// Selection (returns the string choice)
const color = await select("Pick a color", ["Red", "Green", "Blue"]);
console.log(`You chose ${color}`);
}
main();The main function for reading input. Returns a Promise<string | number>.
Simplified helper for yes/no questions. Returns a Promise<boolean>.
Displays a numbered list of choices. Returns a Promise<string>.
No specific configuration or environment variables are required to use TinyInput.
. ├── .gitignore ├── .npmignore ├── LICENSE ├── README.md ├── package-lock.json ├── package.json ├── src | ├── index.ts | ├── type.ts ├── tsconfig.json ├── tsup.config.ts
Mohamed Lamin Walon-Jalloh (@walonCode)
If you'd like to contribute to TinyInput, please fork the repository and submit a pull request. Your help is greatly appreciated!
TinyInput is licensed under the MIT License.
GitHub Badges
| Back | FazBrowse Home | New Git URL |