Security News
Research
Supply Chain Attack on Rspack npm Packages Injects Cryptojacking Malware
A supply chain attack on Rspack's npm packages injected cryptomining malware, potentially impacting thousands of developers.
@nathanaelscott/madlibs
Advanced tools
A component for replacing words in the dom from a JSON file
Mad Libs is a JavaScript library for replacing words in a dom from a JSON
Use npm to install
npm install @nathanaelscott/madlibs
import MadLibs from '@nathanaelscott/madlibs';
let options = {
'flowers':{
'type':'nested',
'array':[
{state:'VIC',flower:'Epacris impressa',size:'150mm'},
{state:'NSW',flower:'Waratah',size:'113mm'},
{state:'TAS',flower:'Tasmanian blue gum',size:'95mm'}
]
},
'animals':{
'type':'variable',
'biggest':'elephant',
'smallest':'shrew'
},
'me':{
'type':'single',
'word':'Nathanael Scott'
}
}
MadLibs(options);
Accepts the camel cased string in the title attribute or with a leading # in the href attribute.
<a title="WORDflowersRANK1VALUEflower"></a> <!-- Returns: Epacris imperessa -->
<a title="WORDflowersSTATEtasVALUEsize"></a> <!-- Returns: 95mm -->
<a href="#WORDanimalsVALUEsmallest"></a> <!-- Returns: shrew -->
<a href="#WORDme"></a> <!-- Returns: Nathanael Scott -->
Returns:
<span class="madlib-word">Epacris imperessa</span>
<span class="madlib-word">95mm</span>
<span class="madlib-word">shrew</span>
<span class="madlib-word">Nathanael Scott</span>
Mad Libs accepts a nested object. The object key is word the ID.
const options = {
'flowers':{...}
}
Adding camal cased option to the name attribute starting with WORD followed by the ID replaces the element with a span containg the output
<a name="WORDflowers"></a>
nested
Returns values from an array of objects using it's rank (position in array) or id
'flowers':{
'type':'nested',
'array':[
{state:'VIC',flower:'Epacris impressa',size:'150mm'},
{state:'NSW',flower:'Waratah',size:'113mm'},
{state:'TAS',flower:'Tasmanian blue gum',size:'95mm'}
]
}
<a name="WORDflowersRANK1VALUEflower"></a>
<!-- Returns the value flower from first entry in the array -->
<a name="WORDflowersSTATEtasVALUEsize"></a>
<!-- Returns the value size from the entry with the state TAS -->
<a name="WORDflowersRANK2VALUEstate"></a>
<!-- Returns the long Australian state name from the 2nd entry in the array -->
Options accepts
array - An ordered array (ordered to your own critera) with either a state (uppercase appreviation) or type variable as identification
Anchor options state, type rank
value
variable Get values from the object via their names
Anchor options value
single
Return a single word from the word value
FAQs
A component for replacing words in the dom from a JSON file
The npm package @nathanaelscott/madlibs receives a total of 0 weekly downloads. As such, @nathanaelscott/madlibs popularity was classified as not popular.
We found that @nathanaelscott/madlibs demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Research
A supply chain attack on Rspack's npm packages injected cryptomining malware, potentially impacting thousands of developers.
Research
Security News
Socket researchers discovered a malware campaign on npm delivering the Skuld infostealer via typosquatted packages, exposing sensitive data.
Security News
Sonar’s acquisition of Tidelift highlights a growing industry shift toward sustainable open source funding, addressing maintainer burnout and critical software dependencies.