1.0.0 • Published 12 days ago

@drtyhu8npm/necessitatibus-beatae-eum v1.0.0

Weekly downloads
-
License
MIT
Repository
github
Last release
12 days ago

Server Name Gen

Generate quirky names like hilarious-curve, daily-sunny-stone, sparkling-edge-108 to use wherever you need a random but memorable name.

Useful for object names, temp folders, passwords, project names, server names, unique ids etc..

       ╭──────────╮                  ╭────────────╮
       │  dawdk  ░│                  │  wild-pot  │
       ╰──────────╯                  ╰────────────╯
╭──────────────────────╮        ╭──────────────────────╮
│ ◎ ○ ○ ░░░░░░░░░░░░░░░│        │ ◎ ○ ○ ░░░░░░░░░░░░░░░│
├──────────────────────┤        ├──────────────────────┤
│                      │        │                      │
│                      │        │      ◠   ◡    ◠      │
│                      │   VS   │                      │
│                      │        │                      │
│      ○       ○       │        │                      │
│          ◠           │        │                      │
└──────────────────────┘        └──────────────────────┘

true-to-life representation representation of your server feels


This is TypeScript rewrite of now deprecated project-name-generator library, with some improvements (no external lib dependencies, additional options)


Install

npm

npm install @drtyhu8npm/necessitatibus-beatae-eum --save

bun

bun add @drtyhu8npm/necessitatibus-beatae-eum

Quick Start

import generate from '@drtyhu8npm/necessitatibus-beatae-eum';

generate().dashed; // "interesting-umbrella"

generate().spaced; // "maniacal dinosaurs"

generate().raw; // ["tricky", "cactus"]

generate({ number: true }).dashed; // 'composed-invention-4796'

generate({ words: 4 }).raw; // ["gorgeous", "productive", "plum", "friend"]

generate({ words: 4, number: true }).dashed; // 'domineering-tall-slim-rock-507'

generate({ words: 2, alliterative: true }).spaced; // 'major metal'

generate({ firstLetter: 'a' }).spaced; // 'average fox'

generate({ firstLetter: 'a', alliterative: true }).spaced; // 'amazing apple'

Quickstart CLI

This package contains a simple cli. You can pull in the package globally using npm npm install -g @drtyhu8npm/necessitatibus-beatae-eum

Call from your command line

$ @drtyhu8npm/necessitatibus-beatae-eum
{
  raw: [ "heavy", "rainstorm" ],
  dashed: "heavy-rainstorm",
  spaced: "heavy rainstorm",
}

For CLI options

@drtyhu8npm/necessitatibus-beatae-eum -h

Usage: @drtyhu8npm/necessitatibus-beatae-eum [options]


Options:

  -w, --words [num]         number of words [2]
  -n, --numbers             suffix with a random number
  -a, --alliterative        use alliterative
  -f, --format [format]     output format type [raw|dashed|spaced]
  -l, --first-letter [s]    first letter of the first word [single letter]
  -b, --blocklist [words]   comma separated list of words to exclude
  -h, --help                output usage information

API

The module returns a single function, generate(options)

Calling generate() with no arguments will return an object:

{
    raw: [ "marked", "north" ],
    dashed: "marked-north",
    spaced: "marked north",
}

The options argument object can have properties

  • words (number) - Number of words generated (excluding number). All words will be adjectives, except the last one which will be a noun. Defaults to 2.
  • number (boolean) - Whether a numeric suffix is generated or not. The number is between 1 - 9999, both inclusive. Defaults to false.
  • alliterative (boolean) - Whether to output words beginning with the same letter or not. Defaults to false.
  • firstLetter (string) - First letter of the first word. Defaults to a random letter.
  • blocklist (string[]) - Array of words to exclude from the generated name. Defaults to [].

generate({ words: 3 }) will return:

{
    raw: [ "smart", "abrupt", "weather" ],
    dashed: "smart-abrupt-weather",
    spaced: "smart abrupt weather",
}

generate({ words: 5, number: true }) will return:

{
    raw: [ "fabulous", "potent", "demonic", "confused", "gate", 4955 ],
    dashed: "fabulous-potent-demonic-confused-gate-4955",
    spaced: "fabulous potent demonic confused gate 4955",
}

generate({ words: 2, number: false, alliterative: true }) will return:

{
    raw: [ "somber", "snails" ],
    dashed: "somber-snails",
    spaced: "somber snails",
}

Tests

To run tests locally:

bun install

bun test
clisidejapaneseoptimistMapbyteLengthextendes5fullReactiveXfantasy-landmkdirreact posehookformtrimRighteditorhookspositiveJSONmetadatagetter3dlanguageio-tsttythrottlemapsequenceconnectenumerablestreams2koreanpatchzeroup_.extendassigninspectbyteOffsetgesturesutilitiesES8objecttesterfull-widthUint8ArraysearchtoArrayString.prototype.trimapprmcall-binderrorECMAScript 2022coerciblewatcherAsyncIteratortypedarrayES2017ES2021prefixrm -frstreamrequestastidTypeScriptiterationrangeerrorspinnersdirectoryauthenticationkeysajaxdropdom-testing-libraryReflect.getPrototypeOfwidthwritablestreamsfast-deep-copydependency managerthroatESbundlersymlinkreal-timearraybuffernamesserializationchaiRegExp.prototype.flagsWebSocketsURLSearchParamsflattenserializeECMAScript 2016runtimetyped arrayfixed-widthweakmapstatusdatastructuretslibtypesreact-hookslintrmdirUint8ClampedArrayObject.definePropertyfile systemsortcode pointseslintconfignodejsnativenpmemiteslint-plugintrimLeftES7jestRxcollection.es6omitIteratorECMAScript 5redactvalidationmocharandomjscmdlesscssless cssoptimizerless.jsdirbuffersshamkeyes-shim APIdeepclonequeueautoprefixerWeakMapgetOwnPropertyDescriptorpropUnderscoregdprmonorepoglobsortedchannelInt16Arrayregexfast-clonebddPromiseexeccssfast-deep-cloneRxJSasciiloggingtraverserfc4122pnpm9harmonyerror-handlingjson-schemacallbindoptioncensordescriptorlookcolourtypanionstyleguidemimeobjworkspace:*ecmascriptbootstrap lesstermquotesyntaxlimityupvalidfastcopyopensmatchspringjsoneslintwgetstylelesscurlgradients css3StreamarktypeECMAScript 2021babelforEachgenericsxdgwhatwgmodulesCSSpackagemkdirsparserlinuxes2017timepackagesfunctionpluginarrayfsSetfastifydomdotenvframeworkcomputed-typesdebugbuffereventEmitterprivateassertspureless mixinscompareObject.assigndatea11ytrimStartinferencechineseexpressioncss variabledataViewfilterdebuggercompilermixinsmodulejoiRFC-6455lockfilefromexpressprotobuffast-copyObject.keyscolormimetypesopentypedArrayconsumecharacterhelpersencryptionbrowserdescriptorstestingUint16Arraypromisecolumncollectionperformantsafeposeopenerbcryptes-abstractparentsratefunctionalES2015namebootstrap cssparentflatvariables in cssArray.prototype.filterschema__proto__formsmakeregular expressionsserializercontainsPushvaluepersistentObservablesescapeObject.issigtermArray.prototype.flatwarningcallboundavavaluesspinnerconcatdefaultECMAScript 2019accessordefinePropertycurriedtaskes2016javascriptes7stylesestreereadableiterateieclass-validatorinternal slotargvdrag6to5animation-0look-uppackage managerutilitytesttypeofArrayBuffer#slicesharedObservablefindsharedarraybufferpostcssStyleSheetreact-testing-libraryonceInt32ArraygettoolkitArray.prototype.flatMapES3rgbwordwrapconfigurableawait256isConcatSpreadableregexp0xsspasswordes8immutablemergeclasses
1.0.0

12 days ago