Node.JS
made by https://0x3d.site
GitHub - thejoshwolfe/yazl: yet another zip library for nodeyet another zip library for node. Contribute to thejoshwolfe/yazl development by creating an account on GitHub.
Visit Site
GitHub - thejoshwolfe/yazl: yet another zip library for node
yazl
yet another zip library for node. For unzipping, see yauzl.
Design principles:
- Don't block the JavaScript thread. Use and provide async APIs.
- Keep memory usage under control. Don't attempt to buffer entire files in RAM at once.
- Prefer to open input files one at a time than all at once. This is slightly suboptimal for time performance, but avoids OS-imposed limits on the number of simultaneously open file handles.
Usage
var yazl = require("yazl");
var zipfile = new yazl.ZipFile();
zipfile.addFile("file1.txt", "file1.txt");
// (add only files, not directories)
zipfile.addFile("path/to/file.txt", "path/in/zipfile.txt");
// pipe() can be called any time after the constructor
zipfile.outputStream.pipe(fs.createWriteStream("output.zip")).on("close", function() {
console.log("done");
});
// alternate apis for adding files:
zipfile.addBuffer(Buffer.from("hello"), "hello.txt");
zipfile.addReadStreamLazy("stdin.txt", cb => cb(null, process.stdin));
// call end() after all the files have been added
zipfile.end();
API
Class: ZipFile
new ZipFile()
No parameters. Nothing can go wrong.
addFile(realPath, metadataPath, [options])
Adds a file from the file system at realPath
into the zipfile as metadataPath
.
Typically metadataPath
would be calculated as path.relative(root, realPath)
.
Unzip programs would extract the file from the zipfile as metadataPath
.
realPath
is not stored in the zipfile.
A valid metadataPath
must not be blank.
If a metadataPath
contains "\\"
characters, they will be replaced by "/"
characters.
After this substitution, a valid metadataPath
must not start with "/"
or /[A-Za-z]:\//
,
and must not contain ".."
path segments.
File paths must not end with "/"
, but see addEmptyDirectory()
.
After UTF-8 encoding, metadataPath
must be at most 0xffff
bytes in length.
options
may be omitted or null and has the following structure and default values:
{
mtime: stats.mtime,
mode: stats.mode,
compress: true,
compressionLevel: 6,
forceZip64Format: false,
forceDosTimestamp: false,
fileComment: "", // or a UTF-8 Buffer
}
Use mtime
and/or mode
to override the values
that would normally be obtained by the fs.Stats
for the realPath
.
The mode is the unix permission bits and file type.
The mtime and mode are stored in the zip file in the fields "last mod file time",
"last mod file date", and "external file attributes".
yazl does not store group and user ids in the zip file.
If compress
is true
, the file data will be deflated (compression method 8).
If compress
is false
, the file data will be stored (compression method 0).
If compressionLevel
is specified, it will be passed to zlib
.
Specifying compressionLevel: 0
is equivalent to compress: false
.
If both compress
and compressionLevel
are given, asserts that they do not conflict, i.e. !!compress === !!compressionLevel
.
If forceZip64Format
is true
, yazl will use ZIP64 format in this entry's Data Descriptor
and Central Directory Record even if not needed (this may be useful for testing.).
Otherwise, yazl will use ZIP64 format where necessary.
Since yazl version 3.3.0, yazl includes the Info-ZIP "universal timestamp" extended field (0x5455
aka "UT"
) to encode the mtime
.
The Info-ZIP timestamp is a more modern encoding for the mtime and is generally recommended.
Set forceDosTimestamp
to true
to revert to the pre-3.3.0 behvior, disabling this extended field.
The DOS encoding is always included regardless of this option, because it is required in the fixed-size metadata of every archive entry.
The benefits of the Info-ZIP encoding include: timezone is specified as always UTC, which is better for cloud environments and any teams working in multiple timezones; capable of encoding "time 0", the unix epoch in 1970, which is better for some package managers; the precision is 1-second accurate rather than rounded to the nearest even second. The disadvantages of including this field are: it requires an extra 9 bytes of metadata per entry added to the archive.
When attempting to encode an mtime
outside the supported range for either format, such as the year 1970 in the DOS format or the year 2039 for the modern format, the time will clamped to the closest supported time.
If fileComment
is a string
, it will be encoded with UTF-8.
If fileComment
is a Buffer
, it should be a UTF-8 encoded string.
In UTF-8, fileComment
must be at most 0xffff
bytes in length.
This becomes the "file comment" field in this entry's central directory file header.
Internally, fs.stat()
is called immediately in the addFile
function,
and fs.createReadStream()
is used later when the file data is actually required.
Throughout adding and encoding n
files with addFile()
,
the number of simultaneous open files is O(1)
, probably just 1 at a time.
addReadStream(readStream, metadataPath, [options])
Adds a file to the zip file whose content is read from readStream
.
This method is effectively implemented as this.addReadStreamLazy(metadataPath, options, cb => cb(null, readStream))
.
In general, it is recommended to use addReadStreamLazy
instead of this method
to avoid holding a large number of system resources open for a long time.
This method is provided for backward compatibility,
and for convenience in cases where the readStream
doesn't require meaningful resources to hold open and waiting.
addReadStreamLazy(metadataPath[, options], getReadStreamFunction)
Adds a file to the zip file whose content is read from a read stream obtained by calling getReadStreamFunction(cb)
.
getReadStreamFunction(cb)
is called with a single callback function.
Your implementation of getReadStreamFunction
should eventually call cb(err, readStream)
and give the readStream
that provides the contents of the file to add to the zip file.
If err
is given (if it is truthy), it will be emitted from this ZipFile
object.
The return value from cb
is unspecified.
See addFile()
for the meaning of the metadataPath
parameter.
typeof getReadStreamFunction
must be 'function'
, which is used to determine when options
has been omitted.
options
may be omitted or null and has the following structure and default values:
{
mtime: new Date(),
mode: 0o100664,
compress: true,
compressionLevel: 6,
forceZip64Format: false,
forceDosTimestamp: false,
fileComment: "", // or a UTF-8 Buffer
size: 12345, // example value
}
See addFile()
for the meaning of mtime
, mode
, compress
, compressionLevel
, forceZip64Format
, forceDosTimestamp
, and fileComment
.
If size
is given, it will be checked against the actual number of bytes in the readStream
,
and an error will be emitted if there is a mismatch.
See the documentation on calculatedTotalSizeCallback
for why the size
option exists.
Note that yazl will .pipe()
data from readStream
, so be careful using .on('data')
.
In certain versions of node, .on('data')
makes .pipe()
behave incorrectly.
Here's an example call to this method to illustrate the function callbacks:
zipfile.addReadStreamLazy("path/in/archive.txt", function(cb) {
var readStream = getTheReadStreamSomehow();
cb(readStream);
});
addBuffer(buffer, metadataPath, [options])
Adds a file to the zip file whose content is buffer
.
See below for info on the limitations on the size of buffer
.
See addFile()
for info about the metadataPath
parameter.
options
may be omitted or null and has the following structure and default values:
{
mtime: new Date(),
mode: 0o100664,
compress: true,
compressionLevel: 6,
forceZip64Format: false,
forceDosTimestamp: false,
fileComment: "", // or a UTF-8 Buffer
}
See addFile()
for the meaning of mtime
, mode
, compress
, compressionLevel
, forceZip64Format
, forceDosTimestamp
, and fileComment
.
This method has the unique property that General Purpose Bit 3
will not be used in the Local File Header.
This doesn't matter for unzip implementations that conform to the Zip File Spec.
However, 7-Zip 9.20 has a known bug where General Purpose Bit 3
is declared an unsupported compression method
(note that it really has nothing to do with the compression method.).
See issue #11.
If you would like to create zip files that 7-Zip 9.20 can understand,
you must use addBuffer()
instead of addFile()
, addReadStream()
, or addReadStreamLazy()
for all entries in the zip file
(and addEmptyDirectory()
is fine too).
Note that even when yazl provides the file sizes in the Local File Header,
yazl never uses ZIP64 format for Local File Headers due to the size limit on buffer
(see below).
Size limitation on buffer
In order to require the ZIP64 format for a local file header,
the provided buffer
parameter would need to exceed 0xfffffffe
in length.
Alternatively, the buffer
parameter might not exceed 0xfffffffe
in length,
but zlib compression fails to compress the buffer and actually inflates the data to more than 0xfffffffe
in length.
Both of these scenarios are not allowed by yazl, and those are enforced by a size limit on the buffer
parameter.
According to this zlib documentation,
the worst case compression results in "an expansion of at most 13.5%, plus eleven bytes".
Furthermore, some configurations of Node.js impose a size limit of 0x3fffffff
on every Buffer
object.
Running this size through the worst case compression of zlib still produces a size less than 0xfffffffe
bytes,
Therefore, yazl enforces that the provided buffer
parameter must be at most 0x3fffffff
bytes long.
addEmptyDirectory(metadataPath, [options])
Adds an entry to the zip file that indicates a directory should be created, even if no other items in the zip file are contained in the directory. This method is only required if the zip file is intended to contain an empty directory.
See addFile()
for info about the metadataPath
parameter.
If metadataPath
does not end with a "/"
, a "/"
will be appended.
options
may be omitted or null and has the following structure and default values:
{
mtime: new Date(),
mode: 040775,
forceDosTimestamp: false,
}
See addFile()
for the meaning of mtime
, mode
, and forceDosTimestamp
.
end([options], [calculatedTotalSizeCallback])
Indicates that no more files will be added via addFile()
, addReadStream()
, addReadStreamLazy()
, addBuffer()
, or addEmptyDirectory()
,
and causes the eventual close of outputStream
.
options
may be omitted or null and has the following structure and default values:
{
forceZip64Format: false,
comment: "", // or a CP437 Buffer
}
If forceZip64Format
is true
, yazl will include the ZIP64 End of Central Directory Locator
and ZIP64 End of Central Directory Record even if not needed (this may be useful for testing.).
Otherwise, yazl will include these structures if necessary.
If comment
is a string
, it will be encoded with CP437.
If comment
is a Buffer
, it should be a CP437 encoded string.
comment
must be at most 0xffff
bytes in length and must not include the byte sequence [0x50,0x4b,0x05,0x06]
.
This becomes the ".ZIP file comment" field in the end of central directory record.
Note that in practice, most zipfile readers interpret this field in UTF-8 instead of CP437.
If your string uses only codepoints in the range 0x20...0x7e
(printable ASCII, no whitespace except for single space ' '
),
then UTF-8 and CP437 (and ASCII) encodings are all identical.
This restriction is recommended for maxium compatibility.
To use UTF-8 encoding at your own risk, pass a Buffer
into this function; it will not be validated.
If specified and non-null, calculatedTotalSizeCallback
is given the parameters (calculatedTotalSize)
sometime during or after the call to end()
.
calculatedTotalSize
is of type Number
and can either be -1
or the guaranteed eventual size in bytes of the output data that can be read from outputStream
.
Note that calculatedTotalSizeCallback
is usually called well before outputStream
has piped all its data;
this callback does not mean that the stream is done.
(The calculatedTotalSizeCallback
feature was added to this library to support the use case of a web server constructing a zip file dynamically
and serving it without buffering the contents on disk or in ram.
calculatedTotalSize
can become the Content-Length
header before piping the outputStream
as the response body.)
If calculatedTotalSize
is -1
, it means means the total size is too hard to guess before processing the input file data.
To ensure the final size is known, disable compression (set compress: false
or compressionLevel: 0
)
in every call to addFile()
, addReadStream()
, addReadStreamLazy()
, and addBuffer()
,
and additionally specify the optional size
option in every call to addReadStream()
and addReadStreamLazy()
.
The call to calculatedTotalSizeCallback
might be delayed if yazl is still waiting for fs.Stats
for an addFile()
entry.
If addFile()
was never called, calculatedTotalSizeCallback
will be called during the call to end()
.
It is not required to start piping data from outputStream
before calculatedTotalSizeCallback
is called.
calculatedTotalSizeCallback
will be called only once, and only if this is the first call to end()
.
outputStream
A readable stream that will produce the contents of the zip file.
It is typical to pipe this stream to a writable stream created from fs.createWriteStream()
.
Internally, large amounts of file data are piped to outputStream
using pipe()
,
which means throttling happens appropriately when this stream is piped to a slow destination.
Data becomes available in this stream soon after calling one of addFile()
, addReadStream()
, addReadStreamLazy()
, addBuffer()
, or addEmptyDirectory()
.
Clients can call pipe()
on this stream at any time,
such as immediately after getting a new ZipFile
instance, or long after calling end()
.
This stream will remain open while you add entries until you end()
the zip file.
As a reminder, be careful using both .on('data')
and .pipe()
with this stream.
In certain versions of node, you cannot use both .on('data')
and .pipe()
successfully.
dateToDosDateTime(jsDate)
Deprecated since yazl 3.3.0.
This function only remains exported in order to maintain compatibility with older versions of yazl. It will be removed in yazl 4.0.0 unless someone asks for it to remain supported. If you ever have a use case for calling this function directly please open an issue against yazl requesting that this function be properly supported again.
Regarding ZIP64 Support
yazl automatically uses ZIP64 format to support files and archives over 2^32 - 2
bytes (~4GB) in size
and to support archives with more than 2^16 - 2
(65534) files.
(See the forceZip64Format
option in the API above for more control over this behavior.)
ZIP64 format is necessary to exceed the limits inherent in the original zip file format.
ZIP64 format is supported by most popular zipfile readers, but not by all of them. Notably, the Mac Archive Utility does not understand ZIP64 format (as of writing this), and will behave very strangely when presented with such an archive.
Output Structure
The Zip File Spec leaves a lot of flexibility up to the zip file creator. This section explains and justifies yazl's interpretation and decisions regarding this flexibility.
This section is probably not useful to yazl clients, but may be interesting to unzip implementors and zip file enthusiasts.
Disk Numbers
All values related to disk numbers are 0
,
because yazl has no multi-disk archive support.
(The exception being the Total Number of Disks field in
the ZIP64 End of Central Directory Locator, which is always 1
.)
Version Made By
Always 0x033f == (3 << 8) | 63
, which means UNIX (3)
and made from the spec version 6.3 (63).
Note that the "UNIX" has implications in the External File Attributes.
Version Needed to Extract
Usually 20
, meaning 2.0. This allows filenames and file comments to be UTF-8 encoded.
When ZIP64 format is used, some of the Version Needed to Extract values will be 45
, meaning 4.5.
When this happens, there may be a mix of 20
and 45
values throughout the zipfile.
General Purpose Bit Flag
Bit 11
is always set.
Filenames (and file comments) are always encoded in UTF-8, even if the result is indistinguishable from ascii.
Bit 3
is usually set in the Local File Header.
To support both a streaming input and streaming output api,
it is impossible to know the crc32 before processing the file data.
When bit 3
is set, data Descriptors are given after each file data with this information, as per the spec.
But remember a complete metadata listing is still always available in the central directory record,
so if unzip implementations are relying on that, like they should,
none of this paragraph will matter.
Even so, some popular unzip implementations do not follow the spec.
The Mac Archive Utility requires Data Descriptors to include the optional signature,
so yazl includes the optional data descriptor signature.
When bit 3
is not used, the Mac Archive Utility requires there to be no data descriptor, so yazl skips it in that case.
Additionally, 7-Zip 9.20 does not seem to support bit 3
at all
(see issue #11).
All other bits are unset.
Internal File Attributes
Always 0
.
The "apparently an ASCII or text file" bit is always unset meaning "apparently binary".
This kind of determination is outside the scope of yazl,
and is probably not significant in any modern unzip implementation.
External File Attributes
Always stats.mode << 16
.
This is apparently the convention for "version made by" = 0x03xx
(UNIX).
Note that for directory entries (see addEmptyDirectory()
),
it is conventional to use the lower 8 bits for the MS-DOS directory attribute byte.
However, the spec says this is only required if the Version Made By is DOS,
so this library does not do that.
Directory Entries
When adding a metadataPath
such as "parent/file.txt"
, yazl does not add a directory entry for "parent/"
,
because file entries imply the need for their parent directories.
Unzip clients seem to respect this style of pathing,
and the zip file spec does not specify what is standard in this regard.
In order to create empty directories, use addEmptyDirectory()
.
Size of Local File and Central Directory Entry Metadata
The spec recommends that "The combined length of any directory record and [the file name, extra field, and comment fields] should not generally exceed 65,535 bytes". yazl makes no attempt to respect this recommendation. Instead, each of the fields is limited to 65,535 bytes due to the length of each being encoded as an unsigned 16 bit integer.
Change History
- 3.3.0 (2024-Nov-08)
- Add support for encoding timestamps in the more modern Info-ZIP "universal timestamp" extended field (
0x5455
aka"UT"
): supports years as old as 1901 instead of only 1980, notably including 1970; encodes timestamp in UTC rather than an unspecified system-dependent local timezone. pull #86 - Disable spending the extra 9 bytes of metadata per entry with
forceDosTimestamp:true
. - Out-of-bounds timestamps are now clamped rather than overflowing/underflowing and wrapping around.
- Marked
dateToDosDateTime()
as deprecated.
- Add support for encoding timestamps in the more modern Info-ZIP "universal timestamp" extended field (
- 3.2.1 (2024-Nov-03)
- Fix typo in
addBuffer()
wherecompressionLevel
wasn't being passed to zlib.
- Fix typo in
- 3.2.0 (2024-Nov-02)
- Add
compressionLevel
option toaddFile()
,addBuffer()
,addReadStream()
,addReadStreamLazy()
. issue #84 - Change wording around
calculatedTotalSizeCallback
again, and fix the documentation incorrectly claiming thataddEmptyDirectory()
was relevant in that context.
- Add
- 3.1.0 (2024-Oct-19)
- Add
addReadStreamLazy()
as a replacement foraddReadStream()
. The latter is maintained for compatibility and situational convenience. issue #74 pull #80 - The
add*()
methods will now throw an error if you call them after callingend()
. The documented semantics have always regarded this as undefined behavior. - Some subtle and undocumented changes to error handling. Error handling isn't very well tested.
- Add
- 3.0.1 (2024-Oct-19)
- Change the documented name of
finalSizeCallback
tocalculatedTotalSizeCallback
to hopefully avoid confusion. issue #71
- Change the documented name of
- 3.0.0 (2024-Oct-18)
- Upgrade dependencies. This indirectly drops support for older versions of node.
- 2.5.1 (2018-Nov-30)
- Fix support for old versions of Node and add official support for Node versions 0.10, 4, 6, 8, 10. pull #49
- 2.5.0 (2018-Nov-15)
- 2.4.3 (2017-Oct-30)
- Clarify readme. pull #33
- 2.4.2 (2016-Oct-26)
- Remove octal literals to make yazl compatible with strict mode. pull #28
- 2.4.1 (2016-Jun-30)
- Fix Mac Archive Utility compatibility issue. issue #24
- 2.4.0 (2016-Jun-26)
- Add ZIP64 support. issue #6
- 2.3.1 (2016-May-09)
- Remove
.npmignore
from npm package. pull #22
- Remove
- 2.3.0 (2015-Dec-23)
metadataPath
can have\
characters now; they will be replaced with/
. issue #18
- 2.2.2 (2015-May-07)
- Fix 7-Zip compatibility issue. pull request #17
- 2.2.1 (2015-Mar-27)
- Fix Mac Archive Utility compatibility issue. issue #14
- 2.2.0 (2015-Mar-21)
- Avoid using general purpose bit 3 for
addBuffer()
calls. issue #13
- Avoid using general purpose bit 3 for
- 2.1.3 (2015-Mar-20)
- Fix bug when only addBuffer() and end() are called. issue #12
- 2.1.2 (2015-Mar-03)
- Fixed typo in parameter validation. pull request #10
- 2.1.1 (2015-Mar-01)
- Fixed stack overflow when using addBuffer() in certain ways. issue #9
- 2.1.0 (2015-Jan-16)
- Added
addEmptyDirectory()
. options
is now optional foraddReadStream()
andaddBuffer()
.
- Added
- 2.0.0 (2014-Sep-24)
- Initial release.
Articlesto learn more about the nodejs concepts.
- 1Beginner's Guide to Node.js with Setting Up Your First Project
- 2Top 10 Node.js Frameworks: Which One Should You Use?
- 3An Detailed Tutorial on Building a RESTful API with Node.js and Express
- 4Which is Better for Web Development? Node.js or Python!!
- 510 Common Mistakes Node.js Developers Make and How to Avoid Them
- 6Node.js and Microservices: A Match Made in Heaven?
- 7Node.js Best Practices for Writing Clean and Maintainable Code
- 8Automated Testing in Node.js with Tools and Techniques
- 9Building Command-Line Tools with Node.js
- 10Scaling Node.js Applications with Strategies for Handling High Traffic
Resourceswhich are currently available to browse on.
mail [email protected] to add your project or resources here ๐ฅ.
- 1Check NPM package licenses
https://github.com/davglass/license-checker
Check NPM package licenses. Contribute to davglass/license-checker development by creating an account on GitHub.
- 2Build software better, together
https://github.com/apps/guardrails
GitHub is where people build software. More than 100 million people use GitHub to discover, fork, and contribute to over 420 million projects.
- 3CodeSandbox
https://codesandbox.io/s/node-http-server-node
CodeSandbox is an online editor tailored for web applications.
- 4Node.js Design Patterns Third Edition by Mario Casciaro and Luciano Mammino
https://www.nodejsdesignpatterns.com
A book to learn how to design and implement production-grade Node.js applications using proven patterns and techniques
- 5Simple Node.JS stream (streams2) Transform that runs the transform functions concurrently (with a set max concurrency)
https://github.com/almost/through2-concurrent
Simple Node.JS stream (streams2) Transform that runs the transform functions concurrently (with a set max concurrency) - almost/through2-concurrent
- 6Follow the Yellow Brick Road to JavaScript Performance
https://www.youtube.com/watch?v=VhpdsjBUS3g
John Mccutchan Take advantage of the lessons learned by the developers of Find Your Way to Oz. Getting that last ounce of performance from your application t...
- 7babel/packages/babel-parser at master ยท babel/babel
https://github.com/babel/babel/tree/master/packages/babel-parser
๐ Babel is a compiler for writing next generation JavaScript. - babel/babel
- 8๐ SheetJS Spreadsheet Data Toolkit -- New home https://git.sheetjs.com/SheetJS/sheetjs
https://github.com/SheetJS/sheetjs
๐ SheetJS Spreadsheet Data Toolkit -- New home https://git.sheetjs.com/SheetJS/sheetjs - SheetJS/sheetjs
- 9Colored symbols for various log levels
https://github.com/sindresorhus/log-symbols
Colored symbols for various log levels. Contribute to sindresorhus/log-symbols development by creating an account on GitHub.
- 10:heavy_check_mark: Mock data for your prototypes and demos. Remote deployments to Zeit now.
https://github.com/Raathigesh/Atmo
:heavy_check_mark: Mock data for your prototypes and demos. Remote deployments to Zeit now. - Raathigesh/atmo
- 11A simple development http server with live reload capability.
https://github.com/tapio/live-server
A simple development http server with live reload capability. - tapio/live-server
- 12Translations with speech synthesis in your terminal as a node package
https://github.com/pawurb/normit
Translations with speech synthesis in your terminal as a node package - pawurb/normit
- 13A modern JavaScript utility library delivering modularity, performance, & extras.
https://github.com/lodash/lodash
A modern JavaScript utility library delivering modularity, performance, & extras. - lodash/lodash
- 14Node JS Internal Architecture | Ignition, Turbofan, Libuv
https://www.youtube.com/watch?v=OCjvhCFFPTw
What are node.js main parts under the hood? how do they collaborate? common misconceptions. This video is a summary of a lot of talks I've watched recently o...
- 15๐ Terminal string styling done right
https://github.com/chalk/chalk
๐ Terminal string styling done right. Contribute to chalk/chalk development by creating an account on GitHub.
- 16Awesome Observable related stuff - An Observable is a collection that arrives over time.
https://github.com/sindresorhus/awesome-observables
Awesome Observable related stuff - An Observable is a collection that arrives over time. - sindresorhus/awesome-observables
- 17FTP client for Node.js, supports FTPS over TLS, passive mode over IPv6, async/await, and Typescript.
https://github.com/patrickjuchli/basic-ftp
FTP client for Node.js, supports FTPS over TLS, passive mode over IPv6, async/await, and Typescript. - patrickjuchli/basic-ftp
- 18Supercharged End 2 End Testing Framework for NodeJS
https://github.com/codeceptjs/CodeceptJS
Supercharged End 2 End Testing Framework for NodeJS - codeceptjs/CodeceptJS
- 19Newest 'node.js' Questions
https://stackoverflow.com/questions/tagged/node.js
Stack Overflow | The Worldโs Largest Online Community for Developers
- 20You Don't Know Node - ForwardJS San Francisco
https://www.youtube.com/watch?v=oPo4EQmkjvY
"Before you bury yourself in packages, learn the NodeJS runtime itself. This talk will challenge the very limits of your NodeJS knowledge,"Samer BunaPresente...
- 21Node.js in Action, Second Edition
https://www.manning.com/books/node-js-in-action-second-edition
Node.js in Action, Second Edition</i> is a thoroughly revised book based on the best-selling first edition. It starts at square one and guides you through all the features, techniques, and concepts you'll need to build production-quality Node applications. </p>
- 22..High Performance JavaScript Engine
https://www.youtube.com/watch?v=FrufJFBSoQY
Google I/O 2009 - V8: Building a High Performance JavaScript EngineMads AgerV8 is Google's high-performance JavaScript engine used in Google Chrome. V8 is o...
- 23stackgl
https://github.com/stackgl
Modular WebGL components. stackgl has 60 repositories available. Follow their code on GitHub.
- 24Wow such top. So stats. More better than regular top.
https://github.com/MrRio/vtop
Wow such top. So stats. More better than regular top. - MrRio/vtop
- 25Native UI testing / controlling with node
https://github.com/nut-tree/nut.js
Native UI testing / controlling with node. Contribute to nut-tree/nut.js development by creating an account on GitHub.
- 26Combine an array of streams into a single duplex stream using pump and duplexify
https://github.com/mafintosh/pumpify
Combine an array of streams into a single duplex stream using pump and duplexify - mafintosh/pumpify
- 27Toggle the CLI cursor
https://github.com/sindresorhus/cli-cursor
Toggle the CLI cursor. Contribute to sindresorhus/cli-cursor development by creating an account on GitHub.
- 28Fabulously kill processes. Cross-platform.
https://github.com/sindresorhus/fkill-cli
Fabulously kill processes. Cross-platform. Contribute to sindresorhus/fkill-cli development by creating an account on GitHub.
- 29natural language processor powered by plugins part of the @unifiedjs collective
https://github.com/retextjs/retext
natural language processor powered by plugins part of the @unifiedjs collective - retextjs/retext
- 30Move files and directories to the trash
https://github.com/sindresorhus/trash
Move files and directories to the trash. Contribute to sindresorhus/trash development by creating an account on GitHub.
- 31Run code inside a browser from the command line
https://github.com/juliangruber/browser-run
Run code inside a browser from the command line. Contribute to juliangruber/browser-run development by creating an account on GitHub.
- 32Delay a promise a specified amount of time
https://github.com/sindresorhus/delay
Delay a promise a specified amount of time. Contribute to sindresorhus/delay development by creating an account on GitHub.
- 33A better `npm publish`
https://github.com/sindresorhus/np
A better `npm publish`. Contribute to sindresorhus/np development by creating an account on GitHub.
- 34๐ฆ Your own mini Travis CI to run tests locally
https://github.com/vadimdemedes/trevor
๐ฆ Your own mini Travis CI to run tests locally. Contribute to vadimdemedes/trevor development by creating an account on GitHub.
- 35Get, set, or delete a property from a nested object using a dot path
https://github.com/sindresorhus/dot-prop
Get, set, or delete a property from a nested object using a dot path - sindresorhus/dot-prop
- 36Teach Yourself Node.js in 10 Steps
https://ponyfoo.com/articles/teach-yourself-nodejs-in-10-steps
Iโm not sure anyone needs convincing that Node.js is freaking awesome, little has been said otherwise. Many of the people reading this blog are already โฆ
- 37All about the course
https://frameworkless.js.org/course
Build an app with almost no frameworks.
- 38Simple, secure & standards compliant web server for the most demanding of applications
https://github.com/uNetworking/uWebSockets
Simple, secure & standards compliant web server for the most demanding of applications - uNetworking/uWebSockets
- 39tar-stream is a streaming tar parser and generator.
https://github.com/mafintosh/tar-stream
tar-stream is a streaming tar parser and generator. - mafintosh/tar-stream
- 40Node.js 8 the Right Way
https://pragprog.com/book/jwnode2/node-js-8-the-right-way/
This fast-paced book gets you up to speed on server-side programming with Node.js 8 quickly, as you develop real programs that are small, fast, low-profile, and useful.
- 41Get Programming with Node.js
https://www.manning.com/books/get-programming-with-node-js
Get Programming with Node.js</i> Get Programming with Node.js teaches you to write server-side code in JavaScript using Node.js. In 37 fast-paced, fun, and practical lessons, you'll discover how to extend your existing JavaScript skills to write back-end code for your web applications.</p>
- 42Express in Action
https://www.manning.com/books/express-in-action
Express in Action</i> is a carefully designed tutorial that teaches you how to build web applications using Node and Express.</p>
- 4310 Things I Regret About Node.js - Ryan Dahl - JSConf EU
https://www.youtube.com/watch?v=M3BM9TB-8yA
See also https://github.com/ry/denoJSConf EU is coming back in 2019 https://2019.jsconf.eu/
- 44Copy/paste detector for programming source code.
https://github.com/kucherenko/jscpd
Copy/paste detector for programming source code. Contribute to kucherenko/jscpd development by creating an account on GitHub.
- 45โก๏ธ An opinionated, zero-config static site generator.
https://github.com/brandonweiss/charge
โก๏ธ An opinionated, zero-config static site generator. - brandonweiss/charge
- 46A node.js version management utility for Windows. Ironically written in Go.
https://github.com/coreybutler/nvm-windows
A node.js version management utility for Windows. Ironically written in Go. - coreybutler/nvm-windows
- 47A simple high-performance Redis message queue for Node.js.
https://github.com/weyoss/redis-smq
A simple high-performance Redis message queue for Node.js. - weyoss/redis-smq
- 48Delete files and directories
https://github.com/sindresorhus/del
Delete files and directories. Contribute to sindresorhus/del development by creating an account on GitHub.
- 49:ram: Practical functional Javascript
https://github.com/ramda/ramda
:ram: Practical functional Javascript. Contribute to ramda/ramda development by creating an account on GitHub.
- 50Strip UTF-8 byte order mark (BOM) from a string
https://github.com/sindresorhus/strip-bom
Strip UTF-8 byte order mark (BOM) from a string. Contribute to sindresorhus/strip-bom development by creating an account on GitHub.
- 51Scaffold out a node module
https://github.com/sindresorhus/generator-nm
Scaffold out a node module. Contribute to sindresorhus/generator-nm development by creating an account on GitHub.
- 52Line-by-line Stream reader for node.js
https://github.com/jahewson/node-byline
Line-by-line Stream reader for node.js. Contribute to jahewson/node-byline development by creating an account on GitHub.
- 53โ๏ธ Send e-mails with Node.JS โ easy as cake!
https://github.com/nodemailer/nodemailer
โ๏ธ Send e-mails with Node.JS โ easy as cake! Contribute to nodemailer/nodemailer development by creating an account on GitHub.
- 54Build software better, together
https://github.com/lukechilds/cacheable-request
GitHub is where people build software. More than 100 million people use GitHub to discover, fork, and contribute to over 420 million projects.
- 55About npm | npm Docs
https://docs.npmjs.com/about-npm
Documentation for the npm registry, website, and command-line interface
- 56libuv Cross platform asynchronous i/o
https://www.youtube.com/watch?v=kCJ3PFU8Ke8
by Saรบl Ibarra CorretgรฉAt: FOSDEM 2017libuv is the platform abstraction layer used in Node, Julia, NeoVim and manyother projects. It features an event loop, ...
- 57Build software better, together
https://github.com/sindresorhus/got.
GitHub is where people build software. More than 100 million people use GitHub to discover, fork, and contribute to over 420 million projects.
- 58Test your internet connection speed and ping using speedtest.net from the CLI
https://github.com/sindresorhus/speed-test
Test your internet connection speed and ping using speedtest.net from the CLI - sindresorhus/speed-test
- 59Node is running but you don't know why? why-is-node-running is here to help you.
https://github.com/mafintosh/why-is-node-running
Node is running but you don't know why? why-is-node-running is here to help you. - mafintosh/why-is-node-running
- 60Transform the first chunk in a stream
https://github.com/sindresorhus/first-chunk-stream
Transform the first chunk in a stream. Contribute to sindresorhus/first-chunk-stream development by creating an account on GitHub.
- 61Get a random temporary file or directory path
https://github.com/sindresorhus/tempy
Get a random temporary file or directory path. Contribute to sindresorhus/tempy development by creating an account on GitHub.
- 62a simple zero-configuration command-line http server
https://github.com/http-party/http-server
a simple zero-configuration command-line http server - http-party/http-server
- 63๐ Memory leak testing for node.
https://github.com/andywer/leakage
๐ Memory leak testing for node. Contribute to andywer/leakage development by creating an account on GitHub.
- 64NodeJS Task List derived from the best! Create beautiful CLI interfaces via easy and logical to implement task lists that feel alive and interactive.
https://github.com/listr2/listr2
NodeJS Task List derived from the best! Create beautiful CLI interfaces via easy and logical to implement task lists that feel alive and interactive. - listr2/listr2
- 65A simple and composable way to validate data in JavaScript (and TypeScript).
https://github.com/ianstormtaylor/superstruct
A simple and composable way to validate data in JavaScript (and TypeScript). - ianstormtaylor/superstruct
- 66Streaming torrent client for node.js
https://github.com/mafintosh/peerflix
Streaming torrent client for node.js. Contribute to mafintosh/peerflix development by creating an account on GitHub.
- 67PostgreSQL client for node.js.
https://github.com/brianc/node-postgres
PostgreSQL client for node.js. Contribute to brianc/node-postgres development by creating an account on GitHub.
- 68Design patterns and best practices for building scaleable, maintainable and beautiful Node.js applications. Now with website! -->
https://github.com/FredKSchott/the-node-way
Design patterns and best practices for building scaleable, maintainable and beautiful Node.js applications. Now with website! --> - FredKSchott/the-node-way
- 69Home page | Yarn
https://yarnpkg.com
Yarn, the modern JavaScript package manager
- 70What's a Unicorn Velociraptor? - Colin Ihrig, Joyent
https://www.youtube.com/watch?v=_c51fcXRLGw
libuv is what gives Node.js its event loop and cross-platform asynchronous I/O capabilities. This talk explains what libuv is all about, and how it's used by...
- 71Embedded JavaScript templates -- http://ejs.co
https://github.com/mde/ejs
Embedded JavaScript templates -- http://ejs.co. Contribute to mde/ejs development by creating an account on GitHub.
- 72๐ CLI app helper
https://github.com/sindresorhus/meow
๐ CLI app helper. Contribute to sindresorhus/meow development by creating an account on GitHub.
- 73Vanilla Node.js REST API | No Framework
https://www.youtube.com/watch?v=_1xa8Bsho6A
Let's create a REST API using Node.js only, without ExpressCode: https://github.com/bradtraversy/vanilla-node-rest-api๐ Support The Channel!http://www.patr...
- 74Easy to use cryptographic framework for data protection: secure messaging with forward secrecy and secure data storage. Has unified APIs across 14 platforms.
https://github.com/cossacklabs/themis
Easy to use cryptographic framework for data protection: secure messaging with forward secrecy and secure data storage. Has unified APIs across 14 platforms. - cossacklabs/themis
- 75Open the npm page, Yarn page, or GitHub repo of a package
https://github.com/sindresorhus/npm-home
Open the npm page, Yarn page, or GitHub repo of a package - sindresorhus/npm-home
- 76Simple pub/sub messaging for the web
https://github.com/faye/faye
Simple pub/sub messaging for the web. Contribute to faye/faye development by creating an account on GitHub.
- 77A full stack for bitcoin and blockchain-based applications
https://github.com/bitpay/bitcore
A full stack for bitcoin and blockchain-based applications - bitpay/bitcore
- 78CLI for generating, building, and releasing oclif CLIs. Built by Salesforce.
https://github.com/oclif/oclif
CLI for generating, building, and releasing oclif CLIs. Built by Salesforce. - oclif/oclif
- 79Pretty diff to html javascript cli (diff2html-cli)
https://github.com/rtfpessoa/diff2html-cli
Pretty diff to html javascript cli (diff2html-cli) - rtfpessoa/diff2html-cli
- 80Drawing in terminal with unicode braille characters
https://github.com/madbence/node-drawille
Drawing in terminal with unicode braille characters - madbence/node-drawille
- 81A simple Node.js ORM for PostgreSQL, MySQL and SQLite3 built on top of Knex.js
https://github.com/bookshelf/bookshelf
A simple Node.js ORM for PostgreSQL, MySQL and SQLite3 built on top of Knex.js - bookshelf/bookshelf
- 82Safely serialize a value to JSON without unintended loss of data or going into an infinite loop due to circular references.
https://github.com/pigulla/json-strictify
Safely serialize a value to JSON without unintended loss of data or going into an infinite loop due to circular references. - pigulla/json-strictify
- 83Let's learn these things together
https://github.com/stephenplusplus/stream-faqs
Let's learn these things together. Contribute to stephenplusplus/stream-faqs development by creating an account on GitHub.
- 84Fast, disk space efficient package manager | pnpm
https://pnpm.io
Fast, disk space efficient package manager
- 85A GraphQL & Node.js Server Built with Express in No Time
https://snipcart.com/blog/graphql-nodejs-express-tutorial
GraphQL & Node.js can be used to craft more performant and maintainable servers. In this tutorial, we use Node.js Express to show you how to do this, fast.
- 86Build software better, together
https://github.com/linuxenko/lessmd
GitHub is where people build software. More than 100 million people use GitHub to discover, fork, and contribute to over 420 million projects.
- 87A modular geospatial engine written in JavaScript and TypeScript
https://github.com/Turfjs/turf
A modular geospatial engine written in JavaScript and TypeScript - Turfjs/turf
- 88Introduction to Node.js with Ryan Dahl
https://www.youtube.com/watch?v=jo_B4LTHi3I
Node.js is a system for building network services for Google's V8 JavaScript engine. In this presentation Ryan Dahl, the man behind Node.js will introduce yo...
- 89List any node_modules ๐ฆ dir in your system and how heavy they are. You can then select which ones you want to erase to free up space ๐งน
https://github.com/voidcosmos/npkill
List any node_modules ๐ฆ dir in your system and how heavy they are. You can then select which ones you want to erase to free up space ๐งน - voidcosmos/npkill
- 90Need a JavaScript module or looking for ideas? Welcome โจ
https://github.com/sindresorhus/project-ideas
Need a JavaScript module or looking for ideas? Welcome โจ - sindresorhus/project-ideas
- 91A JavaScript PDF generation library for Node and the browser
https://github.com/foliojs/pdfkit
A JavaScript PDF generation library for Node and the browser - foliojs/pdfkit
- 92๐ฅ๐ฅ๐ฅ The Only Production-Ready AI-Powered Backend Code Generation
https://github.com/amplication/amplication
๐ฅ๐ฅ๐ฅ The Only Production-Ready AI-Powered Backend Code Generation - amplication/amplication
- 93(Public Release Summer 2024) Personal Marketing Platform. A powerful platform for your online identity.
https://github.com/FactorJS/factor
(Public Release Summer 2024) Personal Marketing Platform. A powerful platform for your online identity. - fictionco/fiction
- 94A JavaScript implementation of Git.
https://github.com/creationix/js-git
A JavaScript implementation of Git. Contribute to creationix/js-git development by creating an account on GitHub.
- 95Graph theory (network) library for visualisation and analysis
https://github.com/cytoscape/cytoscape.js
Graph theory (network) library for visualisation and analysis - cytoscape/cytoscape.js
- 96Feature-rich ORM for modern Node.js and TypeScript, it supports PostgreSQL (with JSON and JSONB support), MySQL, MariaDB, SQLite, MS SQL Server, Snowflake, Oracle DB (v6), DB2 and DB2 for IBM i.
https://github.com/sequelize/sequelize
Feature-rich ORM for modern Node.js and TypeScript, it supports PostgreSQL (with JSON and JSONB support), MySQL, MariaDB, SQLite, MS SQL Server, Snowflake, Oracle DB (v6), DB2 and DB2 for IBM i. - ...
- 97yargs the modern, pirate-themed successor to optimist.
https://github.com/yargs/yargs
yargs the modern, pirate-themed successor to optimist. - yargs/yargs
- 98Use Ky in both Node.js and browsers
https://github.com/sindresorhus/ky-universal
Use Ky in both Node.js and browsers. Contribute to sindresorhus/ky-universal development by creating an account on GitHub.
- 99Natural language detection
https://github.com/wooorm/franc
Natural language detection. Contribute to wooorm/franc development by creating an account on GitHub.
- 100Zero-To-Hero
https://www.manning.com/livevideo/mastering-rest-apis-in-nodejs
Mastering REST APIs in Node.js: Zero To Hero</i> is a fast-paced primer covering everything you ever wanted to know about REST APIs. Expert instructor Tamas Piros answers your questions about how REST APIs work, how to create them, and how to keep them secure with token-based authentication. Youโll even dive into the GraphQL query language, cutting through the hype to learn how it can help you build more reliable APIs.<br/><br/> <br/>Distributed by Manning Publications</font></b><br/><br/> This course was created independently by Tamas Piros</b> and is distributed by Manning through our exclusive liveVideo platform.<br/><br/></p>
- 101RunJS - JavaScript Playground for macOS, Windows and Linux
https://runjs.app
Write and run code with live feedback and access to Node.js and browser APIs. RunJS is an easy-to-use sandbox app for learning and prototyping.
- 102Learn and Understand Node JS
https://www.udemy.com/course/understand-nodejs/
Dive deep under the hood of NodeJS. Learn V8, Express, the MEAN stack, core Javascript concepts, and more.
- 103NodeSchool
https://github.com/nodeschool
Open source workshops that teach web software skills - NodeSchool
- 104ANSI escape codes for manipulating the terminal
https://github.com/sindresorhus/ansi-escapes
ANSI escape codes for manipulating the terminal. Contribute to sindresorhus/ansi-escapes development by creating an account on GitHub.
- 105Check if the internet connection is up
https://github.com/sindresorhus/is-online
Check if the internet connection is up. Contribute to sindresorhus/is-online development by creating an account on GitHub.
- 106A javascript Bitcoin library for node.js and browsers.
https://github.com/bitcoinjs/bitcoinjs-lib
A javascript Bitcoin library for node.js and browsers. - bitcoinjs/bitcoinjs-lib
- 107Copy files
https://github.com/sindresorhus/cpy
Copy files. Contribute to sindresorhus/cpy development by creating an account on GitHub.
- 108cheatsheets/express4 at master ยท azat-co/cheatsheets
https://github.com/azat-co/cheatsheets/tree/master/express4
JavaScript and Node.js cheatsheets. Contribute to azat-co/cheatsheets development by creating an account on GitHub.
- 109expose yourself
https://github.com/localtunnel/localtunnel
expose yourself. Contribute to localtunnel/localtunnel development by creating an account on GitHub.
- 110Browser compilation library โ an asset pipeline for applications that run in the browser
https://github.com/broccolijs/broccoli
Browser compilation library โ an asset pipeline for applications that run in the browser - broccolijs/broccoli
- 111Generate sparklines โโโโ โโ
https://github.com/sindresorhus/sparkly
Generate sparklines โโโโ โโ. Contribute to sindresorhus/sparkly development by creating an account on GitHub.
- 112API Observability. Trace API calls and Monitor API performance, health and usage statistics in Node.js Microservices.
https://github.com/slanatech/swagger-stats
API Observability. Trace API calls and Monitor API performance, health and usage statistics in Node.js Microservices. - slanatech/swagger-stats
- 113Virtual environment for Node.js & integrator with virtualenv
https://github.com/ekalinin/nodeenv
Virtual environment for Node.js & integrator with virtualenv - ekalinin/nodeenv
- 114Unicode symbols with fallbacks for older terminals
https://github.com/sindresorhus/figures
Unicode symbols with fallbacks for older terminals - sindresorhus/figures
- 115Hands-on Experience Tips - Sematext
https://sematext.com/blog/node-js-error-handling/
Learn what is Node.js error handling and why do you need it. From using middleware to catching uncaught exceptions, discover the best ways to fix errors!
- 116Real-time Web with Node.js
https://www.pluralsight.com/courses/code-school-real-time-web-with-nodejs
Learn about builiding server-side applications that are lightweight, real-time, and scalable applications with Node.js in this Pluralsight online course.
- 117Elegant terminal spinner
https://github.com/sindresorhus/ora
Elegant terminal spinner. Contribute to sindresorhus/ora development by creating an account on GitHub.
- 118Google I/O 2012 - Breaking the JavaScript Speed Limit with V8
https://www.youtube.com/watch?v=UJPdhx5zTaw
Daniel CliffordAre you are interested in making JavaScript run blazingly fast in Chrome? This talk takes a look under the hood in V8 to help you identify ho...
- 119Share terminal sessions via SVG and CSS
https://github.com/marionebl/svg-term-cli
Share terminal sessions via SVG and CSS. Contribute to marionebl/svg-term-cli development by creating an account on GitHub.
- 120The most simple logger imaginable
https://github.com/watson/console-log-level
The most simple logger imaginable. Contribute to watson/console-log-level development by creating an account on GitHub.
- 121:sparkles: Make your JSON look AWESOME
https://github.com/Javascipt/Jsome
:sparkles: Make your JSON look AWESOME. Contribute to Javascipt/Jsome development by creating an account on GitHub.
- 122Ensure a function is only called once
https://github.com/sindresorhus/onetime
Ensure a function is only called once. Contribute to sindresorhus/onetime development by creating an account on GitHub.
- 123๐ฅ single-command flamegraph profiling ๐ฅ
https://github.com/davidmarkclements/0x
๐ฅ single-command flamegraph profiling ๐ฅ. Contribute to davidmarkclements/0x development by creating an account on GitHub.
- 124#nodejs on Hashnode
https://hashnode.com/n/nodejs
Node.js (201.1K followers ยท 12.0K articles) - Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine.
- 125rawStream.pipe(JSONStream.parse()).pipe(streamOfObjects)
https://github.com/dominictarr/JSONStream
rawStream.pipe(JSONStream.parse()).pipe(streamOfObjects) - dominictarr/JSONStream
- 126Node.js test runner that lets you develop with confidence ๐
https://github.com/avajs/ava
Node.js test runner that lets you develop with confidence ๐ - avajs/ava
- 127Barebone MQTT broker that can run on any stream server, the node way
https://github.com/moscajs/aedes
Barebone MQTT broker that can run on any stream server, the node way - moscajs/aedes
- 128Detect the image type of a Buffer/Uint8Array
https://github.com/sindresorhus/image-type
Detect the image type of a Buffer/Uint8Array. Contribute to sindresorhus/image-type development by creating an account on GitHub.
- 129An API documentation generator for JavaScript.
https://github.com/jsdoc/jsdoc
An API documentation generator for JavaScript. Contribute to jsdoc/jsdoc development by creating an account on GitHub.
- 130Open stuff like URLs, files, executables. Cross-platform.
https://github.com/sindresorhus/open
Open stuff like URLs, files, executables. Cross-platform. - sindresorhus/open
- 131thetool is a CLI tool to capture different cpu, memory and other profiles for your node app in Chrome DevTools friendly format
https://github.com/sfninja/thetool
thetool is a CLI tool to capture different cpu, memory and other profiles for your node app in Chrome DevTools friendly format - sfninja/thetool
- 132A pure JavaScript implemetation of MODBUS-RTU (and TCP) for NodeJS
https://github.com/yaacov/node-modbus-serial
A pure JavaScript implemetation of MODBUS-RTU (and TCP) for NodeJS - yaacov/node-modbus-serial
- 133Strip comments from JSON. Lets you use comments in your JSON files!
https://github.com/sindresorhus/strip-json-comments
Strip comments from JSON. Lets you use comments in your JSON files! - sindresorhus/strip-json-comments
- 134Pretty unicode tables for the command line
https://github.com/cli-table/cli-table3
Pretty unicode tables for the command line. Contribute to cli-table/cli-table3 development by creating an account on GitHub.
- 135Display images in the terminal
https://github.com/sindresorhus/terminal-image
Display images in the terminal. Contribute to sindresorhus/terminal-image development by creating an account on GitHub.
- 136Ts.ED is a Node.js and TypeScript framework on top of Express to write your application with TypeScript (or ES6). It provides a lot of decorators and guideline to make your code more readable and less error-prone. โญ๏ธ Star to support our work!
https://github.com/tsedio/tsed
:triangular_ruler: Ts.ED is a Node.js and TypeScript framework on top of Express to write your application with TypeScript (or ES6). It provides a lot of decorators and guideline to make your cod...
- 137Web framework built on Web Standards
https://github.com/honojs/hono
Web framework built on Web Standards. Contribute to honojs/hono development by creating an account on GitHub.
- 138A blazing fast js bundler/loader with a comprehensive API :fire:
https://github.com/fuse-box/fuse-box
A blazing fast js bundler/loader with a comprehensive API :fire: - fuse-box/fuse-box
- 139TypeScript clients for databases that prevent SQL Injection
https://github.com/ForbesLindesay/atdatabases
TypeScript clients for databases that prevent SQL Injection - ForbesLindesay/atdatabases
- 140๐ How to write cross-platform Node.js code
https://github.com/ehmicky/cross-platform-node-guide
๐ How to write cross-platform Node.js code. Contribute to ehmicky/cross-platform-node-guide development by creating an account on GitHub.
- 141A tool for writing better scripts
https://github.com/google/zx
A tool for writing better scripts. Contribute to google/zx development by creating an account on GitHub.
- 142SSH tunnels โ in any way you want it
https://github.com/markelog/adit
SSH tunnels โ in any way you want it. Contribute to markelog/adit development by creating an account on GitHub.
- 143Truncate a string to a specific width in the terminal
https://github.com/sindresorhus/cli-truncate
Truncate a string to a specific width in the terminal - sindresorhus/cli-truncate
- 144An adapter-based ORM for Node.js with support for mysql, mongo, postgres, mssql (SQL Server), and more
https://github.com/balderdashy/waterline
An adapter-based ORM for Node.js with support for mysql, mongo, postgres, mssql (SQL Server), and more - balderdashy/waterline
- 145โฑ๏ธ Notes and resources related to v8 and thus Node.js performance
https://github.com/thlorenz/v8-perf
โฑ๏ธ Notes and resources related to v8 and thus Node.js performance - thlorenz/v8-perf
- 146torrent-stream + chromecast
https://github.com/mafintosh/peercast
torrent-stream + chromecast. Contribute to mafintosh/peercast development by creating an account on GitHub.
- 147:rainbow: Beautiful color gradients in terminal output
https://github.com/bokub/gradient-string
:rainbow: Beautiful color gradients in terminal output - bokub/gradient-string
- 148Node.js based forum software built for the modern web
https://github.com/NodeBB/NodeBB
Node.js based forum software built for the modern web - NodeBB/NodeBB
- 149A tiny JavaScript debugging utility modelled after Node.js core's debugging technique. Works in Node.js and web browsers
https://github.com/debug-js/debug
A tiny JavaScript debugging utility modelled after Node.js core's debugging technique. Works in Node.js and web browsers - debug-js/debug
- 150System monitoring dashboard for terminal
https://github.com/aksakalli/gtop
System monitoring dashboard for terminal. Contribute to aksakalli/gtop development by creating an account on GitHub.
- 151Generate random numbers that are consecutively unique
https://github.com/sindresorhus/unique-random
Generate random numbers that are consecutively unique - sindresorhus/unique-random
- 152Turn Buffer instances into "pointers"
https://github.com/TooTallNate/ref
Turn Buffer instances into "pointers". Contribute to TooTallNate/ref development by creating an account on GitHub.
- 153๐ฐ๐ฐ Convert currency rates directly from your terminal!
https://github.com/xxczaki/cash-cli
๐ฐ๐ฐ Convert currency rates directly from your terminal! - xxczaki/cash-cli
- 154Get superhero names
https://github.com/sindresorhus/superheroes
Get superhero names. Contribute to sindresorhus/superheroes development by creating an account on GitHub.
- 155Minimal and efficient cross-platform file watching library
https://github.com/paulmillr/chokidar
Minimal and efficient cross-platform file watching library - paulmillr/chokidar
- 156Package your Node.js project into an executable
https://github.com/vercel/pkg
Package your Node.js project into an executable. Contribute to vercel/pkg development by creating an account on GitHub.
- 157Literate Programming can be Quick and Dirty.
https://github.com/jashkenas/docco
Literate Programming can be Quick and Dirty. Contribute to jashkenas/docco development by creating an account on GitHub.
- 158Boilerplate to kickstart creating a Node.js module
https://github.com/sindresorhus/node-module-boilerplate
Boilerplate to kickstart creating a Node.js module - sindresorhus/node-module-boilerplate
- 159A stream that emits multiple other streams one after another (streams3)
https://github.com/feross/multistream
A stream that emits multiple other streams one after another (streams3) - feross/multistream
- 160โหยทอเผยทอหโโ ฬฬเทโ (=โฯโ=)โง (^๏ฝฅo๏ฝฅ^)๏พโ cat faces!
https://github.com/melaniecebula/cat-ascii-faces
โหยทอเผยทอหโโ ฬฬเทโ (=โฯโ=)โง (^๏ฝฅo๏ฝฅ^)๏พโ cat faces! Contribute to melaniecebula/cat-ascii-faces development by creating an account on GitHub.
- 161Hashing made simple. Get the hash of a buffer/string/stream/file.
https://github.com/sindresorhus/hasha
Hashing made simple. Get the hash of a buffer/string/stream/file. - sindresorhus/hasha
- 162Get stdin as a string or buffer
https://github.com/sindresorhus/get-stdin
Get stdin as a string or buffer. Contribute to sindresorhus/get-stdin development by creating an account on GitHub.
- 163All-in-one development toolkit for creating node modules with Jest, Prettier, ESLint, and Standard
https://github.com/sheerun/modern-node
All-in-one development toolkit for creating node modules with Jest, Prettier, ESLint, and Standard - sheerun/modern-node
- 164Next-gen browser and mobile automation test framework for Node.js
https://github.com/webdriverio/webdriverio
Next-gen browser and mobile automation test framework for Node.js - webdriverio/webdriverio
- 165The API and real-time application framework
https://github.com/feathersjs/feathers
The API and real-time application framework. Contribute to feathersjs/feathers development by creating an account on GitHub.
- 166Testcontainers is a NodeJS library that supports tests, providing lightweight, throwaway instances of common databases, Selenium web browsers, or anything else that can run in a Docker container.
https://github.com/testcontainers/testcontainers-node
Testcontainers is a NodeJS library that supports tests, providing lightweight, throwaway instances of common databases, Selenium web browsers, or anything else that can run in a Docker container. -...
- 167Like `fs.createWriteStream(...)`, but atomic.
https://github.com/npm/fs-write-stream-atomic
Like `fs.createWriteStream(...)`, but atomic. Contribute to npm/fs-write-stream-atomic development by creating an account on GitHub.
- 168all of wikipedia on bittorrent
https://github.com/mafintosh/peerwiki
all of wikipedia on bittorrent. Contribute to mafintosh/peerwiki development by creating an account on GitHub.
- 169โค๏ธ JavaScript/TypeScript linter (ESLint wrapper) with great defaults
https://github.com/xojs/xo
โค๏ธ JavaScript/TypeScript linter (ESLint wrapper) with great defaults - xojs/xo
- 170OpenCV Bindings for node.js
https://github.com/peterbraden/node-opencv
OpenCV Bindings for node.js. Contribute to peterbraden/node-opencv development by creating an account on GitHub.
- 171โป๏ธ Get, set, or delete nested properties of process.env using a dot path
https://github.com/simonepri/env-dot-prop
โป๏ธ Get, set, or delete nested properties of process.env using a dot path - simonepri/env-dot-prop
- 172Find the root directory of a Node.js project or npm package
https://github.com/sindresorhus/pkg-dir
Find the root directory of a Node.js project or npm package - sindresorhus/pkg-dir
- 173Node.js module that tells you when your package npm dependencies are out of date.
https://github.com/alanshaw/david
:eyeglasses: Node.js module that tells you when your package npm dependencies are out of date. - GitHub - alanshaw/david: Node.js module that tells you when your package npm dependencies are out o...
- 174Ansi charts for nodejs
https://github.com/jstrace/chart
Ansi charts for nodejs. Contribute to jstrace/chart development by creating an account on GitHub.
- 175Escape RegExp special characters
https://github.com/sindresorhus/escape-string-regexp
Escape RegExp special characters. Contribute to sindresorhus/escape-string-regexp development by creating an account on GitHub.
- 176Convert a string/promise/array/iterable/asynciterable/buffer/typedarray/arraybuffer/object into a stream
https://github.com/sindresorhus/into-stream
Convert a string/promise/array/iterable/asynciterable/buffer/typedarray/arraybuffer/object into a stream - sindresorhus/into-stream
- 177A fast and robust web server and application server for Ruby, Python and Node.js
https://github.com/phusion/passenger
A fast and robust web server and application server for Ruby, Python and Node.js - phusion/passenger
- 178means completeness and balancing, from the Arabic word ุงูุฌุจุฑ
https://github.com/fibo/algebra
means completeness and balancing, from the Arabic word ุงูุฌุจุฑ - fibo/algebra
- 179Tiny millisecond conversion utility
https://github.com/vercel/ms
Tiny millisecond conversion utility. Contribute to vercel/ms development by creating an account on GitHub.
- 180Mad science p2p pipe across the web using webrtc that uses your Github private/public key for authentication and a signalhub for discovery
https://github.com/mafintosh/webcat
Mad science p2p pipe across the web using webrtc that uses your Github private/public key for authentication and a signalhub for discovery - mafintosh/webcat
- 181Next-generation ES module bundler
https://github.com/rollup/rollup
Next-generation ES module bundler. Contribute to rollup/rollup development by creating an account on GitHub.
- 182โ๏ธ simple, flexible, fun javascript test framework for node.js & the browser
https://github.com/mochajs/mocha
โ๏ธ simple, flexible, fun javascript test framework for node.js & the browser - mochajs/mocha
- 183Slick, declarative command line video editing & API
https://github.com/mifi/editly
Slick, declarative command line video editing & API - mifi/editly
- 184Parse yes/no like values
https://github.com/sindresorhus/yn
Parse yes/no like values. Contribute to sindresorhus/yn development by creating an account on GitHub.
- 185Transform stream that lets you peek the first line before deciding how to parse it
https://github.com/mafintosh/peek-stream
Transform stream that lets you peek the first line before deciding how to parse it - mafintosh/peek-stream
- 186Test Anything Protocol tools for node
https://github.com/tapjs/node-tap
Test Anything Protocol tools for node. Contribute to tapjs/tapjs development by creating an account on GitHub.
- 187Measure the difference between two strings with the fastest JS implementation of the Levenshtein distance algorithm
https://github.com/sindresorhus/leven
Measure the difference between two strings with the fastest JS implementation of the Levenshtein distance algorithm - sindresorhus/leven
- 188Parse JSON with more helpful errors
https://github.com/sindresorhus/parse-json
Parse JSON with more helpful errors. Contribute to sindresorhus/parse-json development by creating an account on GitHub.
- 189NodeJS Framework for Interactive CLIs
https://github.com/drew-y/cliffy
NodeJS Framework for Interactive CLIs. Contribute to drew-y/cliffy development by creating an account on GitHub.
- 190The fast, flexible, and elegant library for parsing and manipulating HTML and XML.
https://github.com/cheeriojs/cheerio
The fast, flexible, and elegant library for parsing and manipulating HTML and XML. - cheeriojs/cheerio
- 191A build system for development of composable software.
https://github.com/teambit/bit
A build system for development of composable software. - teambit/bit
- 192Multiple, simultaneous, individually controllable spinners for concurrent tasks in Node.js CLI programs
https://github.com/codekirei/node-multispinner
Multiple, simultaneous, individually controllable spinners for concurrent tasks in Node.js CLI programs - codekirei/node-multispinner
- 193Node.js: extra methods for the fs object like copy(), remove(), mkdirs()
https://github.com/jprichardson/node-fs-extra
Node.js: extra methods for the fs object like copy(), remove(), mkdirs() - jprichardson/node-fs-extra
- 194Parser Building Toolkit for JavaScript
https://github.com/Chevrotain/chevrotain
Parser Building Toolkit for JavaScript. Contribute to Chevrotain/chevrotain development by creating an account on GitHub.
- 195An in memory postgres DB instance for your unit tests
https://github.com/oguimbal/pg-mem
An in memory postgres DB instance for your unit tests - oguimbal/pg-mem
- 196A declarative, HTML-based language that makes building web apps fun
https://github.com/marko-js/marko
A declarative, HTML-based language that makes building web apps fun - marko-js/marko
- 197A full-featured, open-source content management framework built with Node.js that empowers organizations by combining in-context editing and headless architecture in a full-stack JS environment.
https://github.com/apostrophecms/apostrophe
A full-featured, open-source content management framework built with Node.js that empowers organizations by combining in-context editing and headless architecture in a full-stack JS environment. - ...
- 198๐ฆ 0-legacy, tiny & fast web framework as a replacement of Express
https://github.com/tinyhttp/tinyhttp
๐ฆ 0-legacy, tiny & fast web framework as a replacement of Express - tinyhttp/tinyhttp
- 199Format a date with timezone
https://github.com/samverschueren/tz-format
Format a date with timezone. Contribute to SamVerschueren/tz-format development by creating an account on GitHub.
- 200Round a number to a specific number of decimal places: 1.234 โ 1.2
https://github.com/sindresorhus/round-to
Round a number to a specific number of decimal places: 1.234 โ 1.2 - sindresorhus/round-to
- 201Loads environment variables from .env for nodejs projects.
https://github.com/motdotla/dotenv
Loads environment variables from .env for nodejs projects. - motdotla/dotenv
- 202Modular JavaScript Utilities
https://github.com/mout/mout
Modular JavaScript Utilities. Contribute to mout/mout development by creating an account on GitHub.
- 203Strip leading whitespace from each line in a string
https://github.com/sindresorhus/strip-indent
Strip leading whitespace from each line in a string - sindresorhus/strip-indent
- 204Convert character encodings in pure javascript.
https://github.com/ashtuchkin/iconv-lite
Convert character encodings in pure javascript. Contribute to ashtuchkin/iconv-lite development by creating an account on GitHub.
- 205Jose-Simple allows the encryption and decryption of data using the JOSE (JSON Object Signing and Encryption) standard.
https://github.com/davesag/jose-simple
Jose-Simple allows the encryption and decryption of data using the JOSE (JSON Object Signing and Encryption) standard. - davesag/jose-simple
- 206An inter-process and inter-machine lockfile utility that works on a local or network file system.
https://github.com/moxystudio/node-proper-lockfile
An inter-process and inter-machine lockfile utility that works on a local or network file system. - moxystudio/node-proper-lockfile
- 207Strip comments from CSS
https://github.com/sindresorhus/strip-css-comments
Strip comments from CSS. Contribute to sindresorhus/strip-css-comments development by creating an account on GitHub.
- 208Bree is a Node.js and JavaScript job task scheduler with worker threads, cron, Date, and human syntax. Built for @ladjs, @forwardemail, @spamscanner, @cabinjs.
https://github.com/breejs/bree
Bree is a Node.js and JavaScript job task scheduler with worker threads, cron, Date, and human syntax. Built for @ladjs, @forwardemail, @spamscanner, @cabinjs. - breejs/bree
- 209Manage the desktop wallpaper
https://github.com/sindresorhus/wallpaper
Manage the desktop wallpaper. Contribute to sindresorhus/wallpaper development by creating an account on GitHub.
- 210Capture website screenshots
https://github.com/sindresorhus/pageres
Capture website screenshots. Contribute to sindresorhus/pageres development by creating an account on GitHub.
- 211JSON-RPC 2.0 implementation over WebSockets for Node.js and JavaScript/TypeScript
https://github.com/elpheria/rpc-websockets
JSON-RPC 2.0 implementation over WebSockets for Node.js and JavaScript/TypeScript - elpheria/rpc-websockets
- 212Short links expander for node.js
https://github.com/nodeca/url-unshort
Short links expander for node.js. Contribute to nodeca/url-unshort development by creating an account on GitHub.
- 213Redis-backed task queue engine with advanced task control and eventual consistency
https://github.com/nodeca/idoit
Redis-backed task queue engine with advanced task control and eventual consistency - nodeca/idoit
- 214Integrated end-to-end testing framework written in Node.js and using W3C Webdriver API. Developed at @browserstack
https://github.com/nightwatchjs/nightwatch
Integrated end-to-end testing framework written in Node.js and using W3C Webdriver API. Developed at @browserstack - nightwatchjs/nightwatch
- 215A next-generation code testing stack for JavaScript.
https://github.com/theintern/intern
A next-generation code testing stack for JavaScript. - theintern/intern
- 216[Unmaintained] Minify images seamlessly
https://github.com/imagemin/imagemin
[Unmaintained] Minify images seamlessly. Contribute to imagemin/imagemin development by creating an account on GitHub.
- 217Actionhero is a realtime multi-transport nodejs API Server with integrated cluster capabilities and delayed tasks
https://github.com/actionhero/actionhero
Actionhero is a realtime multi-transport nodejs API Server with integrated cluster capabilities and delayed tasks - actionhero/actionhero
- 218๐จ Elegant Console Logger for Node.js and Browser
https://github.com/unjs/consola
๐จ Elegant Console Logger for Node.js and Browser . Contribute to unjs/consola development by creating an account on GitHub.
- 219Streaming csv parser inspired by binary-csv that aims to be faster than everyone else
https://github.com/mafintosh/csv-parser
Streaming csv parser inspired by binary-csv that aims to be faster than everyone else - mafintosh/csv-parser
- 220Create native background daemons on Linux systems.
https://github.com/coreybutler/node-linux
Create native background daemons on Linux systems. - coreybutler/node-linux
- 221Simple key-value storage with support for multiple backends
https://github.com/jaredwray/keyv
Simple key-value storage with support for multiple backends - jaredwray/keyv
- 222Atomic counters and rate limiting tools. Limit resource access at any scale.
https://github.com/animir/node-rate-limiter-flexible
Atomic counters and rate limiting tools. Limit resource access at any scale. - animir/node-rate-limiter-flexible
- 223Headless TypeScript ORM with a head. Runs on Node, Bun and Deno. Lives on the Edge and yes, it's a JavaScript ORM too ๐
https://github.com/drizzle-team/drizzle-orm
Headless TypeScript ORM with a head. Runs on Node, Bun and Deno. Lives on the Edge and yes, it's a JavaScript ORM too ๐ - drizzle-team/drizzle-orm
- 224Omelette is a simple, template based autocompletion tool for Node and Deno projects with super easy API. (For Bash, Zsh and Fish)
https://github.com/f/omelette
Omelette is a simple, template based autocompletion tool for Node and Deno projects with super easy API. (For Bash, Zsh and Fish) - f/omelette
- 225qr code generator
https://github.com/soldair/node-qrcode
qr code generator. Contribute to soldair/node-qrcode development by creating an account on GitHub.
- 226Compile C# solution into single-file ES module with auto-generated JavaScript bindings and type definitions
https://github.com/Elringus/DotNetJS
Compile C# solution into single-file ES module with auto-generated JavaScript bindings and type definitions - elringus/bootsharp
- 227Well-formatted and improved trace system calls and signals (when the debugger does not help)
https://github.com/automation-stack/ctrace
Well-formatted and improved trace system calls and signals (when the debugger does not help) - automation-stack/ctrace
- 228:fork_and_knife: Web applications made easy. Since 2011.
https://github.com/brunch/brunch
:fork_and_knife: Web applications made easy. Since 2011. - brunch/brunch
- 229We need a better Markdown previewer.
https://github.com/hatashiro/pen
We need a better Markdown previewer. Contribute to hatashiro/pen development by creating an account on GitHub.
- 230Promisify a callback-style function
https://github.com/sindresorhus/pify
Promisify a callback-style function. Contribute to sindresorhus/pify development by creating an account on GitHub.
- 231Convert an Observable to a Promise
https://github.com/sindresorhus/observable-to-promise
Convert an Observable to a Promise. Contribute to sindresorhus/observable-to-promise development by creating an account on GitHub.
- 232Indent each line in a string
https://github.com/sindresorhus/indent-string
Indent each line in a string. Contribute to sindresorhus/indent-string development by creating an account on GitHub.
- 233Independent technology for modern publishing, memberships, subscriptions and newsletters.
https://github.com/TryGhost/Ghost
Independent technology for modern publishing, memberships, subscriptions and newsletters. - TryGhost/Ghost
- 234Mobile icon generator
https://github.com/samverschueren/mobicon-cli
Mobile icon generator. Contribute to SamVerschueren/mobicon-cli development by creating an account on GitHub.
- 235Create clickable links in the terminal
https://github.com/sindresorhus/terminal-link
Create clickable links in the terminal. Contribute to sindresorhus/terminal-link development by creating an account on GitHub.
- 236Get the mac address of the current machine you are on via Node.js
https://github.com/bevry/getmac
Get the mac address of the current machine you are on via Node.js - bevry/getmac
- 237Javascript URL mutation library
https://github.com/medialize/URI.js
Javascript URL mutation library. Contribute to medialize/URI.js development by creating an account on GitHub.
- 238Find a file or directory by walking up parent directories
https://github.com/sindresorhus/find-up
Find a file or directory by walking up parent directories - sindresorhus/find-up
- 239โก๏ธ A simple, easy way to deploy static websites to Amazon S3.
https://github.com/brandonweiss/discharge
โก๏ธ A simple, easy way to deploy static websites to Amazon S3. - brandonweiss/discharge
- 240MJML: the only framework that makes responsive-email easy
https://github.com/mjmlio/mjml
MJML: the only framework that makes responsive-email easy - mjmlio/mjml
- 241Links recognition library with full unicode support
https://github.com/markdown-it/linkify-it
Links recognition library with full unicode support - markdown-it/linkify-it
- 242GraphicsMagick for node
https://github.com/aheckmann/gm
GraphicsMagick for node. Contribute to aheckmann/gm development by creating an account on GitHub.
- 243Manage multiple NodeJS versions.
https://github.com/nodenv/nodenv
Manage multiple NodeJS versions. Contribute to nodenv/nodenv development by creating an account on GitHub.
- 244ORM for TypeScript and JavaScript. Supports MySQL, PostgreSQL, MariaDB, SQLite, MS SQL Server, Oracle, SAP Hana, WebSQL databases. Works in NodeJS, Browser, Ionic, Cordova and Electron platforms.
https://github.com/typeorm/typeorm
ORM for TypeScript and JavaScript. Supports MySQL, PostgreSQL, MariaDB, SQLite, MS SQL Server, Oracle, SAP Hana, WebSQL databases. Works in NodeJS, Browser, Ionic, Cordova and Electron platforms. -...
- 245Memoize functions - an optimization technique used to speed up consecutive function calls by caching the result of calls with identical input
https://github.com/sindresorhus/mem
Memoize functions - an optimization technique used to speed up consecutive function calls by caching the result of calls with identical input - sindresorhus/memoize
- 246Tasks, boards & notes for the command-line habitat
https://github.com/klaussinani/taskbook
Tasks, boards & notes for the command-line habitat - klaudiosinani/taskbook
- 247Get your public IP address - very fast!
https://github.com/sindresorhus/public-ip
Get your public IP address - very fast! Contribute to sindresorhus/public-ip development by creating an account on GitHub.
- 248A powerful templating engine with inheritance, asynchronous control, and more (jinja2 inspired)
https://github.com/mozilla/nunjucks
A powerful templating engine with inheritance, asynchronous control, and more (jinja2 inspired) - mozilla/nunjucks
- 249Yet another Linux distribution for voice-enabled IoT and embrace Web standards
https://github.com/yodaos-project/yodaos
Yet another Linux distribution for voice-enabled IoT and embrace Web standards - yodaos-project/yodaos
- 250Promise packages, patterns, chat, and tutorials
https://github.com/sindresorhus/promise-fun
Promise packages, patterns, chat, and tutorials. Contribute to sindresorhus/promise-fun development by creating an account on GitHub.
- 251The Browser / Node.js Client for deepstream.io
https://github.com/deepstreamIO/deepstream.io-client-js
The Browser / Node.js Client for deepstream.io. Contribute to deepstreamIO/deepstream.io-client-js development by creating an account on GitHub.
- 252Access the system clipboard (copy/paste)
https://github.com/sindresorhus/clipboard-cli
Access the system clipboard (copy/paste). Contribute to sindresorhus/clipboard-cli development by creating an account on GitHub.
- 253A query builder for PostgreSQL, MySQL, CockroachDB, SQL Server, SQLite3 and Oracle, designed to be flexible, portable, and fun to use.
https://github.com/knex/knex
A query builder for PostgreSQL, MySQL, CockroachDB, SQL Server, SQLite3 and Oracle, designed to be flexible, portable, and fun to use. - knex/knex
- 254Locus is a debugging module for node.js
https://github.com/alidavut/locus
Locus is a debugging module for node.js. Contribute to alidavut/locus development by creating an account on GitHub.
- 255Highly scalable realtime pub/sub and RPC framework
https://github.com/SocketCluster/socketcluster
Highly scalable realtime pub/sub and RPC framework - SocketCluster/socketcluster
- 256Pipeable javascript. Quickly filter, map, and reduce from the terminal
https://github.com/danielstjules/pjs
Pipeable javascript. Quickly filter, map, and reduce from the terminal - danielstjules/pjs
- 257JavaScript YAML parser and dumper. Very fast.
https://github.com/nodeca/js-yaml
JavaScript YAML parser and dumper. Very fast. Contribute to nodeca/js-yaml development by creating an account on GitHub.
- 258A benchmarking library. As used on jsPerf.com.
https://github.com/bestiejs/benchmark.js
A benchmarking library. As used on jsPerf.com. Contribute to bestiejs/benchmark.js development by creating an account on GitHub.
- 259Node-core streams for userland
https://github.com/nodejs/readable-stream
Node-core streams for userland. Contribute to nodejs/readable-stream development by creating an account on GitHub.
- 260Next generation frontend tooling. It's fast!
https://github.com/vitejs/vite
Next generation frontend tooling. It's fast! Contribute to vitejs/vite development by creating an account on GitHub.
- 261Clamp a number
https://github.com/sindresorhus/math-clamp
Clamp a number. Contribute to sindresorhus/math-clamp development by creating an account on GitHub.
- 262HTML parsing/serialization toolset for Node.js. WHATWG HTML Living Standard (aka HTML5)-compliant.
https://github.com/inikulin/parse5
HTML parsing/serialization toolset for Node.js. WHATWG HTML Living Standard (aka HTML5)-compliant. - inikulin/parse5
- 263๐จ themer takes a set of colors and generates themes for your apps (editors, terminals, wallpapers, and more).
https://github.com/themerdev/themer
๐จ themer takes a set of colors and generates themes for your apps (editors, terminals, wallpapers, and more). - themerdev/themer
- 264Meteor, the JavaScript App Platform
https://github.com/meteor/meteor
Meteor, the JavaScript App Platform. Contribute to meteor/meteor development by creating an account on GitHub.
- 265:cow: ASCII cows
https://github.com/sindresorhus/cows
:cow: ASCII cows. Contribute to sindresorhus/cows development by creating an account on GitHub.
- 266๐ Cross platform setting of environment scripts
https://github.com/kentcdodds/cross-env
๐ Cross platform setting of environment scripts. Contribute to kentcdodds/cross-env development by creating an account on GitHub.
- 267SPI serial bus access with Node.js
https://github.com/fivdi/spi-device
SPI serial bus access with Node.js. Contribute to fivdi/spi-device development by creating an account on GitHub.
- 268The Intuitive Vue Framework.
https://github.com/nuxt/nuxt.js
The Intuitive Vue Framework. Contribute to nuxt/nuxt development by creating an account on GitHub.
- 269The socket manager
https://github.com/kalm/kalm.js
The socket manager. Contribute to kalm/kalm.js development by creating an account on GitHub.
- 270Common Database Interface for Node
https://github.com/mlaanderson/database-js
Common Database Interface for Node. Contribute to mlaanderson/database-js development by creating an account on GitHub.
- 271Get an available TCP port
https://github.com/sindresorhus/get-port
Get an available TCP port. Contribute to sindresorhus/get-port development by creating an account on GitHub.
- 272:dash: Simple yet powerful file-based mock server with recording abilities
https://github.com/sinedied/smoke
:dash: Simple yet powerful file-based mock server with recording abilities - sinedied/smoke
- 273An NLP library for building bots, with entity extraction, sentiment analysis, automatic language identify, and so more
https://github.com/axa-group/nlp.js
An NLP library for building bots, with entity extraction, sentiment analysis, automatic language identify, and so more - axa-group/nlp.js
- 274The React Framework
https://github.com/vercel/next.js
The React Framework. Contribute to vercel/next.js development by creating an account on GitHub.
- 275Simple, unobtrusive authentication for Node.js.
https://github.com/jaredhanson/passport
Simple, unobtrusive authentication for Node.js. Contribute to jaredhanson/passport development by creating an account on GitHub.
- 276A Reactive Programming library for JavaScript
https://github.com/kefirjs/kefir
A Reactive Programming library for JavaScript. Contribute to kefirjs/kefir development by creating an account on GitHub.
- 277Tips, tricks, and resources for working with Node.js, and the start of an ongoing conversation on how we can improve the Node.js experience on Microsoft platforms.
https://github.com/Microsoft/nodejs-guidelines
Tips, tricks, and resources for working with Node.js, and the start of an ongoing conversation on how we can improve the Node.js experience on Microsoft platforms. - microsoft/nodejs-guidelines
- 278๐Unified API for password hashing algorithms
https://github.com/simonepri/upash
๐Unified API for password hashing algorithms. Contribute to simonepri/upash development by creating an account on GitHub.
- 279End-to-end, hierarchical, real-time, colorful logs and stories
https://github.com/guigrpa/storyboard
End-to-end, hierarchical, real-time, colorful logs and stories - guigrpa/storyboard
- 280Lightweight Web Worker API implementation with native threads
https://github.com/audreyt/node-webworker-threads
Lightweight Web Worker API implementation with native threads - audreyt/node-webworker-threads
- 281A framework for building compiled Node.js add-ons in Rust via Node-API
https://github.com/napi-rs/napi-rs
A framework for building compiled Node.js add-ons in Rust via Node-API - napi-rs/napi-rs
- 282Machine learning platform for Web developers
https://github.com/alibaba/pipcook
Machine learning platform for Web developers. Contribute to alibaba/pipcook development by creating an account on GitHub.
- 283tap-producing test harness for node and browsers
https://github.com/substack/tape
tap-producing test harness for node and browsers. Contribute to tape-testing/tape development by creating an account on GitHub.
- 284:snowflake: a short introduction to node.js
https://github.com/maxogden/art-of-node/#the-art-of-node
:snowflake: a short introduction to node.js. Contribute to max-mapper/art-of-node development by creating an account on GitHub.
- 285Turn a writable and readable stream into a streams2 duplex stream with support for async initialization and streams1/streams2 input
https://github.com/mafintosh/duplexify
Turn a writable and readable stream into a streams2 duplex stream with support for async initialization and streams1/streams2 input - mafintosh/duplexify
- 286Convenience wrapper for ReadableStream, with an API lifted from "from" and "through2"
https://github.com/hughsk/from2
Convenience wrapper for ReadableStream, with an API lifted from "from" and "through2" - hughsk/from2
- 287Open the GitHub page of the given or current directory repo
https://github.com/sindresorhus/gh-home
Open the GitHub page of the given or current directory repo - sindresorhus/gh-home
- 288A progressive Node.js framework for building efficient, scalable, and enterprise-grade server-side applications with TypeScript/JavaScript ๐
https://github.com/nestjs/nest
A progressive Node.js framework for building efficient, scalable, and enterprise-grade server-side applications with TypeScript/JavaScript ๐ - nestjs/nest
- 289Check whether a website is up or down
https://github.com/sindresorhus/is-up
Check whether a website is up or down. Contribute to sindresorhus/is-up development by creating an account on GitHub.
- 290โฐ It's never been easier to try nodejs modules!
https://github.com/victorb/trymodule
โฐ It's never been easier to try nodejs modules! Contribute to victorb/trymodule development by creating an account on GitHub.
- 291Memoize promise-returning functions. Includes cache expire and prefetch.
https://github.com/nodeca/promise-memoize
Memoize promise-returning functions. Includes cache expire and prefetch. - nodeca/promise-memoize
- 292:two_men_holding_hands: A curated list of awesome developer tools for writing cross-platform Node.js code
https://github.com/bcoe/awesome-cross-platform-nodejs
:two_men_holding_hands: A curated list of awesome developer tools for writing cross-platform Node.js code - bcoe/awesome-cross-platform-nodejs
- 293๐ A magical documentation site generator.
https://github.com/docsifyjs/docsify
๐ A magical documentation site generator. Contribute to docsifyjs/docsify development by creating an account on GitHub.
- 294An authorization library that supports access control models like ACL, RBAC, ABAC in Node.js and Browser
https://github.com/casbin/node-casbin
An authorization library that supports access control models like ACL, RBAC, ABAC in Node.js and Browser - casbin/node-casbin
- 295Access serial ports with JavaScript. Linux, OSX and Windows. Welcome your robotic JavaScript overlords. Better yet, program them!
https://github.com/serialport/node-serialport
Access serial ports with JavaScript. Linux, OSX and Windows. Welcome your robotic JavaScript overlords. Better yet, program them! - serialport/node-serialport
- 296AdonisJS is a TypeScript-first web framework for building web apps and API servers. It comes with support for testing, modern tooling, an ecosystem of official packages, and more.
https://github.com/adonisjs/core
AdonisJS is a TypeScript-first web framework for building web apps and API servers. It comes with support for testing, modern tooling, an ecosystem of official packages, and more. - adonisjs/core
- 297Fast CSV parser
https://github.com/sindresorhus/neat-csv
Fast CSV parser. Contribute to sindresorhus/neat-csv development by creating an account on GitHub.
- 298Humanize a URL: https://sindresorhus.com โ sindresorhus.com
https://github.com/sindresorhus/humanize-url
Humanize a URL: https://sindresorhus.com โ sindresorhus.com - sindresorhus/humanize-url
- 299Windows support for Node.JS scripts (daemons, eventlog, UAC, etc).
https://github.com/coreybutler/node-windows
Windows support for Node.JS scripts (daemons, eventlog, UAC, etc). - coreybutler/node-windows
- 300A pipe to browser utility
https://github.com/kessler/node-bcat
A pipe to browser utility. Contribute to kessler/node-bcat development by creating an account on GitHub.
- 301Stringify and write JSON to a file atomically
https://github.com/sindresorhus/write-json-file
Stringify and write JSON to a file atomically. Contribute to sindresorhus/write-json-file development by creating an account on GitHub.
- 302Get supervillain names
https://github.com/sindresorhus/supervillains
Get supervillain names. Contribute to sindresorhus/supervillains development by creating an account on GitHub.
- 303Runs a load test on the selected URL. Fast and easy to use. Can be integrated in your own workflow using the API.
https://github.com/alexfernandez/loadtest
Runs a load test on the selected URL. Fast and easy to use. Can be integrated in your own workflow using the API. - alexfernandez/loadtest
- 304Find out which of your dependencies are slowing you down ๐ข
https://github.com/siddharthkp/cost-of-modules
Find out which of your dependencies are slowing you down ๐ข - siddharthkp/cost-of-modules
- 305Read and parse a JSON file
https://github.com/sindresorhus/load-json-file
Read and parse a JSON file. Contribute to sindresorhus/load-json-file development by creating an account on GitHub.
- 306:book: documentation for modern JavaScript
https://github.com/documentationjs/documentation
:book: documentation for modern JavaScript. Contribute to documentationjs/documentation development by creating an account on GitHub.
- 307๐ฒ super fast, all natural json logger
https://github.com/pinojs/pino
๐ฒ super fast, all natural json logger. Contribute to pinojs/pino development by creating an account on GitHub.
- 308html emails and attachments to any smtp server with nodejs
https://github.com/eleith/emailjs
html emails and attachments to any smtp server with nodejs - eleith/emailjs
- 309Build a fake backend by providing the content of JSON files or JavaScript objects through configurable routes.
https://github.com/micromata/http-fake-backend
Build a fake backend by providing the content of JSON files or JavaScript objects through configurable routes. - micromata/http-fake-backend
- 310Convert milliseconds to a human readable string: `1337000000` โ `15d 11h 23m 20s`
https://github.com/sindresorhus/pretty-ms
Convert milliseconds to a human readable string: `1337000000` โ `15d 11h 23m 20s` - sindresorhus/pretty-ms
- 311Get superb like words
https://github.com/sindresorhus/superb
Get superb like words. Contribute to sindresorhus/superb development by creating an account on GitHub.
- 312Hook and modify stdout and stderr
https://github.com/sindresorhus/hook-std
Hook and modify stdout and stderr. Contribute to sindresorhus/hook-std development by creating an account on GitHub.
- 313A JSONSchema validator that uses code generation to be extremely fast
https://github.com/mafintosh/is-my-json-valid
A JSONSchema validator that uses code generation to be extremely fast - mafintosh/is-my-json-valid
- 314the Istanbul command line interface
https://github.com/istanbuljs/nyc
the Istanbul command line interface. Contribute to istanbuljs/nyc development by creating an account on GitHub.
- 315Simple config handling for your app or module
https://github.com/sindresorhus/conf
Simple config handling for your app or module. Contribute to sindresorhus/conf development by creating an account on GitHub.
- 316An lldb plugin for Node.js and V8, which enables inspection of JavaScript states for insights into Node.js processes and their core dumps.
https://github.com/nodejs/llnode
An lldb plugin for Node.js and V8, which enables inspection of JavaScript states for insights into Node.js processes and their core dumps. - nodejs/llnode
- 317markdown processor powered by plugins part of the @unifiedjs collective
https://github.com/remarkjs/remark
markdown processor powered by plugins part of the @unifiedjs collective - remarkjs/remark
- 318Node.js Production Process Manager with a built-in Load Balancer.
https://github.com/Unitech/pm2
Node.js Production Process Manager with a built-in Load Balancer. - Unitech/pm2
- 319easier than regex string matching patterns for urls and other strings. turn strings into data or data into strings.
https://github.com/snd/url-pattern
easier than regex string matching patterns for urls and other strings. turn strings into data or data into strings. - snd/url-pattern
- 320Determine if a filename and/or buffer is text or binary. Smarter detection than the other solutions.
https://github.com/bevry/istextorbinary
Determine if a filename and/or buffer is text or binary. Smarter detection than the other solutions. - bevry/istextorbinary
- 321Asynchronous HTTP microservices
https://github.com/vercel/micro
Asynchronous HTTP microservices. Contribute to vercel/micro development by creating an account on GitHub.
- 322The most powerful data validation library for JS
https://github.com/sideway/joi
The most powerful data validation library for JS. Contribute to hapijs/joi development by creating an account on GitHub.
- 323An extremely fast CSS parser, transformer, bundler, and minifier written in Rust.
https://github.com/parcel-bundler/parcel-css
An extremely fast CSS parser, transformer, bundler, and minifier written in Rust. - parcel-bundler/lightningcss
- 324Delightful JavaScript Testing.
https://github.com/facebook/jest
Delightful JavaScript Testing. Contribute to jestjs/jest development by creating an account on GitHub.
- 325แเผผเบูอเบเผฝแ
https://github.com/maxogden/cool-ascii-faces
แเผผเบูอเบเผฝแ. Contribute to max-mapper/cool-ascii-faces development by creating an account on GitHub.
- 326Control the macOS dark mode from the command-line
https://github.com/sindresorhus/dark-mode
Control the macOS dark mode from the command-line. Contribute to sindresorhus/dark-mode development by creating an account on GitHub.
- 327Node.js Video Library / MP4 & FLV parser / MP4 builder / HLS muxer
https://github.com/gkozlenko/node-video-lib
Node.js Video Library / MP4 & FLV parser / MP4 builder / HLS muxer - gkozlenko/node-video-lib
- 328Extract a value from a buffer of json without parsing the whole thing
https://github.com/juliangruber/binary-extract
Extract a value from a buffer of json without parsing the whole thing - juliangruber/binary-extract
- 329Replace all homoglyphs with base characters. Useful to detect similar strings.
https://github.com/nodeca/unhomoglyph
Replace all homoglyphs with base characters. Useful to detect similar strings. - nodeca/unhomoglyph
- 330instrumented streams
https://github.com/joyent/node-vstream
instrumented streams. Contribute to TritonDataCenter/node-vstream development by creating an account on GitHub.
- 331Reliably get the terminal window size
https://github.com/sindresorhus/terminal-size
Reliably get the terminal window size. Contribute to sindresorhus/terminal-size development by creating an account on GitHub.
- 332Modern CSS to all browsers
https://github.com/stylecow/stylecow
Modern CSS to all browsers. Contribute to stylecow/stylecow development by creating an account on GitHub.
- 333Get your public IP address
https://github.com/sindresorhus/ipify
Get your public IP address. Contribute to sindresorhus/ipify development by creating an account on GitHub.
- 334Normalize a URL
https://github.com/sindresorhus/normalize-url
Normalize a URL. Contribute to sindresorhus/normalize-url development by creating an account on GitHub.
- 335Lightweight operating system using Node.js as userspace
https://github.com/NodeOS/NodeOS
Lightweight operating system using Node.js as userspace - NodeOS/NodeOS
- 336Marble.js - functional reactive Node.js framework for building server-side applications, based on TypeScript and RxJS.
https://github.com/marblejs/marble
Marble.js - functional reactive Node.js framework for building server-side applications, based on TypeScript and RxJS. - marblejs/marble
- 337Useful utilities for working with Uint8Array (and Buffer)
https://github.com/sindresorhus/uint8array-extras
Useful utilities for working with Uint8Array (and Buffer) - sindresorhus/uint8array-extras
- 338Fix broken node modules instantly ๐๐ฝโโ๏ธ๐จ
https://github.com/ds300/patch-package
Fix broken node modules instantly ๐๐ฝโโ๏ธ๐จ. Contribute to ds300/patch-package development by creating an account on GitHub.
- 339Log by overwriting the previous output in the terminal. Useful for rendering progress bars, animations, etc.
https://github.com/sindresorhus/log-update
Log by overwriting the previous output in the terminal. Useful for rendering progress bars, animations, etc. - sindresorhus/log-update
- 340Move a file - Even works across devices
https://github.com/sindresorhus/move-file
Move a file - Even works across devices. Contribute to sindresorhus/move-file development by creating an account on GitHub.
- 341Markdown parser, done right. 100% CommonMark support, extensions, syntax plugins & high speed
https://github.com/markdown-it/markdown-it
Markdown parser, done right. 100% CommonMark support, extensions, syntax plugins & high speed - markdown-it/markdown-it
- 342general natural language facilities for node
https://github.com/NaturalNode/natural
general natural language facilities for node. Contribute to NaturalNode/natural development by creating an account on GitHub.
- 343WebAssembly wrapper to simplify fast math coding
https://github.com/nodeca/multimath
WebAssembly wrapper to simplify fast math coding. Contribute to nodeca/multimath development by creating an account on GitHub.
- 344i18next: learn once - translate everywhere
https://github.com/i18next/i18next
i18next: learn once - translate everywhere. Contribute to i18next/i18next development by creating an account on GitHub.
- 345Tiny hashing module that uses the native crypto API in Node.js and the browser
https://github.com/sindresorhus/crypto-hash
Tiny hashing module that uses the native crypto API in Node.js and the browser - sindresorhus/crypto-hash
- 346โก๏ธ Fast parsing, formatting and timezone manipulations for dates
https://github.com/floatdrop/node-cctz
โก๏ธ Fast parsing, formatting and timezone manipulations for dates - floatdrop/node-cctz
- 347:dog: Get popular dog names
https://github.com/sindresorhus/dog-names
:dog: Get popular dog names. Contribute to sindresorhus/dog-names development by creating an account on GitHub.
- 348Simple client testing from your scripts
https://github.com/nodeca/navit
Simple client testing from your scripts. Contribute to nodeca/navit development by creating an account on GitHub.
- 349Accessibility engine for automated Web UI testing
https://github.com/dequelabs/axe-core
Accessibility engine for automated Web UI testing. Contribute to dequelabs/axe-core development by creating an account on GitHub.
- 350๐ฑ The ultimate solution for populating your MongoDB database.
https://github.com/pkosiec/mongo-seeding
๐ฑ The ultimate solution for populating your MongoDB database. - pkosiec/mongo-seeding
- 351Better Queue for NodeJS
https://github.com/diamondio/better-queue
Better Queue for NodeJS. Contribute to diamondio/better-queue development by creating an account on GitHub.
- 352Get the real length of a string - by correctly counting astral symbols and ignoring ansi escape codes
https://github.com/sindresorhus/string-length
Get the real length of a string - by correctly counting astral symbols and ignoring ansi escape codes - sindresorhus/string-length
- 353Check whether a package or organization name is available on npm
https://github.com/sindresorhus/npm-name
Check whether a package or organization name is available on npm - sindresorhus/npm-name
- 354REST API Client Library
https://github.com/simov/purest
REST API Client Library. Contribute to simov/purest development by creating an account on GitHub.
- 355:cat2: Get popular cat names
https://github.com/sindresorhus/cat-names
:cat2: Get popular cat names. Contribute to sindresorhus/cat-names development by creating an account on GitHub.
- 356PEG.js: Parser generator for JavaScript
https://github.com/pegjs/pegjs
PEG.js: Parser generator for JavaScript. Contribute to pegjs/pegjs development by creating an account on GitHub.
- 357An SQL-friendly ORM for Node.js
https://github.com/Vincit/objection.js
An SQL-friendly ORM for Node.js. Contribute to Vincit/objection.js development by creating an account on GitHub.
- 358An implementation of IPFS in JavaScript
https://github.com/ipfs/helia
An implementation of IPFS in JavaScript. Contribute to ipfs/helia development by creating an account on GitHub.
- 359Create boxes in the terminal
https://github.com/sindresorhus/boxen
Create boxes in the terminal. Contribute to sindresorhus/boxen development by creating an account on GitHub.
- 360Make ORMs great again!
https://github.com/PhilWaldmann/openrecord
Make ORMs great again! Contribute to PhilWaldmann/openrecord development by creating an account on GitHub.
- 361Easy to maintain open source documentation websites.
https://github.com/facebook/docusaurus
Easy to maintain open source documentation websites. - facebook/docusaurus
- 362Pug โ robust, elegant, feature rich template engine for Node.js
https://github.com/pugjs/pug
Pug โ robust, elegant, feature rich template engine for Node.js - pugjs/pug
- 363petruisfan/node-supervisor
https://github.com/petruisfan/node-supervisor
Contribute to petruisfan/node-supervisor development by creating an account on GitHub.
- 364Minimal templating on steroids.
https://github.com/handlebars-lang/handlebars.js
Minimal templating on steroids. Contribute to handlebars-lang/handlebars.js development by creating an account on GitHub.
- 365LoopBack makes it easy to build modern API applications that require complex integrations.
https://github.com/loopbackio/loopback-next
LoopBack makes it easy to build modern API applications that require complex integrations. - loopbackio/loopback-next
- 366โณ Modern JavaScript date utility library โ๏ธ
https://github.com/date-fns/date-fns
โณ Modern JavaScript date utility library โ๏ธ. Contribute to date-fns/date-fns development by creating an account on GitHub.
- 367:shell: Portable Unix shell commands for Node.js
https://github.com/shelljs/shelljs
:shell: Portable Unix shell commands for Node.js. Contribute to shelljs/shelljs development by creating an account on GitHub.
- 368Streamline Your Node.js Debugging Workflow with Chromium (Chrome, Edge, More) DevTools.
https://github.com/june07/nim
Streamline Your Node.js Debugging Workflow with Chromium (Chrome, Edge, More) DevTools. - june07/NiM
- 369The superpowered headless CMS for Node.js โ built with GraphQL and React
https://github.com/keystonejs/keystone
The superpowered headless CMS for Node.js โ built with GraphQL and React - keystonejs/keystone
- 370Rust bindings for writing safe and fast native Node.js modules.
https://github.com/neon-bindings/neon
Rust bindings for writing safe and fast native Node.js modules. - neon-bindings/neon
- 371Turn multiple data sources into a single GraphQL API
https://github.com/exogee-technology/graphweaver
Turn multiple data sources into a single GraphQL API - exogee-technology/graphweaver
- 372He is like Batman, but for Node.js stack traces
https://github.com/watson/stackman
He is like Batman, but for Node.js stack traces. Contribute to watson/stackman development by creating an account on GitHub.
- 373AdminJS is an admin panel for apps written in node.js
https://github.com/SoftwareBrothers/adminjs
AdminJS is an admin panel for apps written in node.js - SoftwareBrothers/adminjs
- 374High-level streams library for Node.js and the browser
https://github.com/caolan/highland
High-level streams library for Node.js and the browser - caolan/highland
- 375Empower your website frontends with layouts, meta-data, pre-processors (markdown, jade, coffeescript, etc.), partials, skeletons, file watching, querying, and an amazing plugin system. DocPad will streamline your web development process allowing you to craft powerful static sites quicker than ever before.
https://github.com/docpad/docpad
Empower your website frontends with layouts, meta-data, pre-processors (markdown, jade, coffeescript, etc.), partials, skeletons, file watching, querying, and an amazing plugin system. DocPad will ...
- 376๐ Minimalistic zero-dependencies statsd client for Node.js
https://github.com/immobiliare/dats
๐ Minimalistic zero-dependencies statsd client for Node.js - GitHub - immobiliare/dats: ๐ Minimalistic zero-dependencies statsd client for Node.js
- 377yet another zip library for node
https://github.com/thejoshwolfe/yazl
yet another zip library for node. Contribute to thejoshwolfe/yazl development by creating an account on GitHub.
- 378A JavaScript implementation of various web standards, for use with Node.js
https://github.com/jsdom/jsdom
A JavaScript implementation of various web standards, for use with Node.js - jsdom/jsdom
- 379Node version management
https://github.com/tj/n
Node version management. Contribute to tj/n development by creating an account on GitHub.
- 380Next-generation ORM for Node.js & TypeScript | PostgreSQL, MySQL, MariaDB, SQL Server, SQLite, MongoDB and CockroachDB
https://github.com/prisma/prisma
Next-generation ORM for Node.js & TypeScript | PostgreSQL, MySQL, MariaDB, SQL Server, SQLite, MongoDB and CockroachDB - prisma/prisma
- 381GPIO access and interrupt detection with Node.js
https://github.com/fivdi/onoff
GPIO access and interrupt detection with Node.js. Contribute to fivdi/onoff development by creating an account on GitHub.
- 382A Node.js tool to automate end-to-end web testing.
https://github.com/DevExpress/testcafe
A Node.js tool to automate end-to-end web testing. - DevExpress/testcafe
- 383a fast newline (or any delimiter) splitter stream - like require('split') but specific for binary data
https://github.com/maxogden/binary-split
a fast newline (or any delimiter) splitter stream - like require('split') but specific for binary data - max-mapper/binary-split
- 384A NMEA parser and GPS utility library
https://github.com/infusion/GPS.js
A NMEA parser and GPS utility library. Contribute to infusion/GPS.js development by creating an account on GitHub.
- 385An image processing library written entirely in JavaScript for Node, with zero external or native dependencies.
https://github.com/oliver-moran/jimp
An image processing library written entirely in JavaScript for Node, with zero external or native dependencies. - jimp-dev/jimp
- 386:books: some best practices for JS modules
https://github.com/mattdesl/module-best-practices
:books: some best practices for JS modules. Contribute to mattdesl/module-best-practices development by creating an account on GitHub.
- 387Mobile app splash screen generator
https://github.com/samverschueren/mobisplash-cli
Mobile app splash screen generator. Contribute to SamVerschueren/mobisplash-cli development by creating an account on GitHub.
- 388Native Node bindings to Git.
https://github.com/nodegit/nodegit
Native Node bindings to Git. Contribute to nodegit/nodegit development by creating an account on GitHub.
- 389A fast, simple & powerful blog framework, powered by Node.js.
https://github.com/hexojs/hexo
A fast, simple & powerful blog framework, powered by Node.js. - hexojs/hexo
- 390Use full ES2015+ features to develop Node.js applications, Support TypeScript.
https://github.com/thinkjs/thinkjs
Use full ES2015+ features to develop Node.js applications, Support TypeScript. - thinkjs/thinkjs
- 391Block users from running your app with root permissions
https://github.com/sindresorhus/sudo-block
Block users from running your app with root permissions - sindresorhus/sudo-block
- 392The next web scraper. See through the <html> noise.
https://github.com/matthewmueller/x-ray
The next web scraper. See through the <html> noise. - matthewmueller/x-ray
- 393Daemon for easy but powerful stats aggregation
https://github.com/statsd/statsd
Daemon for easy but powerful stats aggregation. Contribute to statsd/statsd development by creating an account on GitHub.
- 394Test spies, stubs and mocks for JavaScript.
https://github.com/sinonjs/sinon
Test spies, stubs and mocks for JavaScript. Contribute to sinonjs/sinon development by creating an account on GitHub.
- 395The future of Node.js REST development
https://github.com/restify/node-restify
The future of Node.js REST development. Contribute to restify/node-restify development by creating an account on GitHub.
- 396Convert a string to a valid safe filename
https://github.com/sindresorhus/filenamify
Convert a string to a valid safe filename. Contribute to sindresorhus/filenamify development by creating an account on GitHub.
- 397human friendly i18n for javascript (node.js + browser)
https://github.com/nodeca/babelfish
human friendly i18n for javascript (node.js + browser) - nodeca/babelfish
- 398Convert bytes to a human readable string: 1337 โ 1.34 kB
https://github.com/sindresorhus/pretty-bytes
Convert bytes to a human readable string: 1337 โ 1.34 kB - sindresorhus/pretty-bytes
- 399Awesome npm resources and tips
https://github.com/sindresorhus/awesome-npm
Awesome npm resources and tips. Contribute to sindresorhus/awesome-npm development by creating an account on GitHub.
- 400User-friendly glob matching
https://github.com/sindresorhus/globby
User-friendly glob matching. Contribute to sindresorhus/globby development by creating an account on GitHub.
- 401Couchbase Node.js Client Library (Official)
https://github.com/couchbase/couchnode
Couchbase Node.js Client Library (Official). Contribute to couchbase/couchnode development by creating an account on GitHub.
- 402A tiny (124 bytes), secure, URL-friendly, unique string ID generator for JavaScript
https://github.com/ai/nanoid
A tiny (124 bytes), secure, URL-friendly, unique string ID generator for JavaScript - ai/nanoid
- 403Map over promises concurrently
https://github.com/sindresorhus/p-map
Map over promises concurrently. Contribute to sindresorhus/p-map development by creating an account on GitHub.
- 404:rocket: Progressive microservices framework for Node.js
https://github.com/moleculerjs/moleculer
:rocket: Progressive microservices framework for Node.js - moleculerjs/moleculer
- 405A light-weight module that brings the Fetch API to Node.js
https://github.com/node-fetch/node-fetch
A light-weight module that brings the Fetch API to Node.js - node-fetch/node-fetch
- 406The fastest JSON schema Validator. Supports JSON Schema draft-04/06/07/2019-09/2020-12 and JSON Type Definition (RFC8927)
https://github.com/ajv-validator/ajv
The fastest JSON schema Validator. Supports JSON Schema draft-04/06/07/2019-09/2020-12 and JSON Type Definition (RFC8927) - ajv-validator/ajv
- 407โ๏ธ TDD with Browserify, Mocha, Headless Chrome and WebDriver
https://github.com/mantoni/mochify.js
โ๏ธ TDD with Browserify, Mocha, Headless Chrome and WebDriver - mantoni/mochify.js
- 408Minimize HTML
https://github.com/Swaagie/minimize
Minimize HTML. Contribute to Swaagie/minimize development by creating an account on GitHub.
- 409๐ค Object property paths with wildcards and regexps ๐ต
https://github.com/ehmicky/wild-wild-path
๐ค Object property paths with wildcards and regexps ๐ต - ehmicky/wild-wild-path
- 410A curated, community driven list of awesome Meteor packages, libraries, resources and shiny things
https://github.com/Urigo/awesome-meteor
A curated, community driven list of awesome Meteor packages, libraries, resources and shiny things - Urigo/awesome-meteor
- 411Node.js Desktop Automation.
https://github.com/octalmage/robotjs
Node.js Desktop Automation. . Contribute to octalmage/robotjs development by creating an account on GitHub.
- 412Run any command on specific Node.js versions
https://github.com/ehmicky/nve
Run any command on specific Node.js versions. Contribute to ehmicky/nve development by creating an account on GitHub.
- 413๐ธ Lightweight currency conversion library, successor of money.js
https://github.com/xxczaki/cashify
๐ธ Lightweight currency conversion library, successor of money.js - parsify-dev/cashify
- 414Install dependencies as you code โก๏ธ
https://github.com/siddharthkp/auto-install
Install dependencies as you code โก๏ธ. Contribute to siddharthkp/auto-install development by creating an account on GitHub.
- 415Add stdin support to any CLI app that accepts file input
https://github.com/sindresorhus/tmpin
Add stdin support to any CLI app that accepts file input - sindresorhus/tmpin
- 416Scrape/Crawl article from any site automatically. Make any web page readable, no matter Chinese or English.
https://github.com/Tjatse/node-readability
Scrape/Crawl article from any site automatically. Make any web page readable, no matter Chinese or English. - Tjatse/node-readability
- 417:heavy_check_mark: Run tests for multiple versions of Node.js in local env.
https://github.com/egoist/testen
:heavy_check_mark: Run tests for multiple versions of Node.js in local env. - egoist/testen
- 418The Simple, Secure Framework Developers Trust
https://github.com/hapijs/hapi
The Simple, Secure Framework Developers Trust. Contribute to hapijs/hapi development by creating an account on GitHub.
- 419Remove or replace part of a string like Array#splice
https://github.com/sindresorhus/splice-string
Remove or replace part of a string like Array#splice - sindresorhus/splice-string
- 420Get the visual width of a string - the number of columns required to display it
https://github.com/sindresorhus/string-width
Get the visual width of a string - the number of columns required to display it - sindresorhus/string-width
- 421A reactive programming library for JavaScript
https://github.com/ReactiveX/RxJS
A reactive programming library for JavaScript. Contribute to ReactiveX/rxjs development by creating an account on GitHub.
- 422Empty the trash
https://github.com/sindresorhus/empty-trash
Empty the trash. Contribute to sindresorhus/empty-trash development by creating an account on GitHub.
- 423โฐ Day.js 2kB immutable date-time library alternative to Moment.js with the same modern API
https://github.com/iamkun/dayjs
โฐ Day.js 2kB immutable date-time library alternative to Moment.js with the same modern API - iamkun/dayjs
- 424Process execution for humans
https://github.com/sindresorhus/execa
Process execution for humans. Contribute to sindresorhus/execa development by creating an account on GitHub.
- 425Limit the execution rate of a function
https://github.com/lpinca/valvelet
Limit the execution rate of a function. Contribute to lpinca/valvelet development by creating an account on GitHub.
- 426Generate a random float
https://github.com/sindresorhus/random-float
Generate a random float. Contribute to sindresorhus/random-float development by creating an account on GitHub.
- 427Schema based serialization made easy
https://github.com/compactr/compactr.js
Schema based serialization made easy. Contribute to compactr/compactr.js development by creating an account on GitHub.
- 428Generate a random integer
https://github.com/sindresorhus/random-int
Generate a random integer. Contribute to sindresorhus/random-int development by creating an account on GitHub.
- 429Power Assert in JavaScript. Provides descriptive assertion messages through standard assert interface. No API is the best API.
https://github.com/power-assert-js/power-assert
Power Assert in JavaScript. Provides descriptive assertion messages through standard assert interface. No API is the best API. - power-assert-js/power-assert
- 430A node.js package for Steven Levithan's excellent dateFormat() function.
https://github.com/felixge/node-dateformat
A node.js package for Steven Levithan's excellent dateFormat() function. - felixge/node-dateformat
- 431Convert a dash/dot/underscore/space separated string to camelCase: foo-bar โ fooBar
https://github.com/sindresorhus/camelcase
Convert a dash/dot/underscore/space separated string to camelCase: foo-bar โ fooBar - sindresorhus/camelcase
- 432โฑ A library for working with dates and times in JS
https://github.com/moment/luxon
โฑ A library for working with dates and times in JS - moment/luxon
- 433The API after every nerd's heart...
https://github.com/SkyHacks/nerds
The API after every nerd's heart... Contribute to SkyHacks/nerds development by creating an account on GitHub.
- 434A reactive programming library for JavaScript
https://github.com/reactivex/rxjs
A reactive programming library for JavaScript. Contribute to ReactiveX/rxjs development by creating an account on GitHub.
- 435A small, fast, JavaScript-based JavaScript parser
https://github.com/acornjs/acorn
A small, fast, JavaScript-based JavaScript parser. Contribute to acornjs/acorn development by creating an account on GitHub.
- 436Flexible ascii progress bar for nodejs
https://github.com/visionmedia/node-progress
Flexible ascii progress bar for nodejs. Contribute to visionmedia/node-progress development by creating an account on GitHub.
- 437Global HTTP/HTTPS proxy agent configurable using environment variables.
https://github.com/gajus/global-agent
Global HTTP/HTTPS proxy agent configurable using environment variables. - gajus/global-agent
- 438DEPRECATED - please use https://github.com/Brooooooklyn/snappy. Nodejs bindings to Google's Snappy compression library
https://github.com/kesla/node-snappy
DEPRECATED - please use https://github.com/Brooooooklyn/snappy. Nodejs bindings to Google's Snappy compression library - kesla/node-snappy
- 439A toolkit to automate & enhance your workflow
https://github.com/gulpjs/gulp
A toolkit to automate & enhance your workflow. Contribute to gulpjs/gulp development by creating an account on GitHub.
- 440Build Amazon Simple Queue Service (SQS) based applications without the boilerplate
https://github.com/bbc/sqs-consumer
Build Amazon Simple Queue Service (SQS) based applications without the boilerplate - bbc/sqs-consumer
- 441Node.js โ Blog
https://nodejs.org/en/blog/
Node.jsยฎ is a JavaScript runtime built on Chrome's V8 JavaScript engine.
FAQ'sto know more about the topic.
mail [email protected] to add your project or resources here ๐ฅ.
- 1Why should I use Node.js for my web application?
- 2Why is Node.js considered non-blocking?
- 3Why is Node.js popular for building APIs?
- 4Why does Node.js use JavaScript?
- 5Why is Node.js considered lightweight?
- 6Why is Node.js good for real-time applications?
- 7Why is Node.js suitable for microservices architecture?
- 8Why does Node.js have a large community?
- 9Why should I learn Node.js?
- 10Why is Node.js great for handling asynchronous tasks?
- 11Why is Node.js ideal for single-page applications (SPAs)?
- 12Why is Node.js often used for building RESTful APIs?
- 13Why does Node.js support cross-platform development?
- 14Why should businesses consider using Node.js?
- 15Why is Node.js a good choice for data-intensive applications?
- 16Why is Node.js good for microservices architecture?
- 17Why is Node.js popular among developers?
- 18Why is Node.js effective for building real-time applications?
- 19Why is Node.js suitable for serverless architecture?
- 20Why is Node.js preferred for developing CLI tools?
- 21Why is Node.js ideal for handling concurrent requests?
- 22Why is Node.js beneficial for API development?
- 23Why is Node.js a good choice for building single-page applications (SPAs)?
- 24Why is Node.js a great choice for Internet of Things (IoT) applications?
- 25How does Node.js facilitate microservices architecture?
- 26What makes Node.js suitable for real-time applications?
- 27What advantages does Node.js offer for developing scalable applications?
- 28How does Node.js manage asynchronous operations?
- 29What is the role of middleware in Node.js applications?
- 30How does Node.js handle file uploads?
- 31What are the differences between Node.js and traditional server-side languages?
- 32What are the advantages of using Node.js for API development?
- 33What are some best practices for securing Node.js applications?
- 34How to implement logging in a Node.js application?
- 35How to manage Node.js application configurations?
- 36How to handle file uploads in Node.js?
- 37How to deploy a Node.js application?
- 38Why is Node.js preferred for building microservices?
- 39Why is asynchronous programming important in Node.js?
- 40Why should I use Express with Node.js?
- 41Why is Node.js good for real-time applications?
- 42Why is Node.js preferred for building REST APIs?
- 43Why is Node.js suitable for data-intensive applications?
- 44What are the advantages of using Node.js for building microservices?
- 45Why is Node.js a good choice for RESTful APIs?
- 46Why should I use Node.js for server-side rendering?
- 47Why is Node.js suitable for real-time applications?
- 48Why is Node.js often used in microservices architecture?
- 49Why is Node.js popular for building web applications?
- 50What is Node.js used for?
- 51How does Node.js handle asynchronous programming?
- 52What are the benefits of using Node.js for REST APIs?
- 53How can you optimize Node.js application performance?
- 54What is the role of middleware in Node.js?
- 55How do you handle errors in a Node.js application?
- 56What are the best practices for writing tests in Node.js?
- 57How does Node.js handle asynchronous operations?
- 58What are some popular frameworks for building applications with Node.js?
- 59How can I optimize the performance of my Node.js application?
- 60How does Node.js support real-time applications?
- 61How to create a RESTful API using Node.js?
- 62How to handle file uploads in a Node.js application?
- 63How to implement JWT authentication in a Node.js application?
- 64How to connect MongoDB with a Node.js application?
- 65How to create RESTful APIs with Node.js and Express?
- 66How to use environment variables in a Node.js application?
- 67How to implement authentication in Node.js applications?
- 68How to set up a Node.js development environment?
- 69How to deploy a Node.js application?
- 70How to handle errors in Node.js applications?
- 71How to create a REST API with Node.js?
- 72How to use middleware in Node.js?
- 73How to connect Node.js to a MongoDB database?
- 74How to handle asynchronous code in Node.js?
- 75How to create a REST API using Node.js?
- 76How to manage packages in Node.js?
- 77How to use middleware in Express?
- 78How to set up a WebSocket server in Node.js?
- 79How to deploy a Node.js application?
- 80How to secure a Node.js application?
- 81How to integrate a database with Node.js?
- 82How to debug a Node.js application?
- 83How to optimize a Node.js application?
- 84What should I do if my Node.js application crashes unexpectedly?
- 85Why does my Node.js application run slowly?
- 86What are the steps to debug a memory leak in a Node.js application?
- 87How can I troubleshoot dependency issues in my Node.js project?
- 88What is the best way to manage environment variables in a Node.js application?
- 89How can I handle uncaught exceptions in a Node.js application?
- 90What are some strategies for logging in a Node.js application?
- 91How do I fix a 'Cannot find module' error in Node.js?
- 92What should I do if my Node.js server is not responding?
- 93How do I resolve CORS issues in my Node.js application?
- 94Why is my Node.js application running slow?
- 95How do I handle unexpected errors in Node.js?
- 96What should I do if my Node.js application crashes frequently?
- 97How do I set up logging in my Node.js application?
- 98What are some best practices for structuring a Node.js project?
- 99How can I improve the performance of my Node.js application?
- 100What are common security vulnerabilities in Node.js applications?
Queriesor most google FAQ's about NodeJS.
mail [email protected] to add more queries here ๐.
- 1
what is a node js
- 2
what is nodemailer
- 3
what exactly is node js
- 4
is node js good for backend
- 5
is node js good
- 6
how to use node js
- 7
what can i do with node js
- 8
what is stream in nodejs
- 9
why nodejs is used
- 10
how node js event loop works
- 11
how nodejs works under the hood
- 12
is node js safe
- 13
what is event loop in nodejs
- 14
how does node js work
- 15
is node js backend
- 16
how to do pagination in nodejs
- 17
should i learn node js in 2024
- 18
what node js used for
- 19
why nodejs is so popular
- 20
is node js worth learning 2024
- 21
what node js developer do
- 22
should i learn node js in 2023
- 23
is node js worth learning 2023
- 24
what node js can do
- 25
how work node js
- 26
how nodejs handle multiple requests
- 27
how nodejs works
- 28
what can node js do
- 29
which node js to download
- 30
what is difference between nodejs and reactjs
- 31
is node js multithreading
- 32
why nodejs is better than other
- 33
how nodejs handle concurrency
- 34
how node js works internally
- 35
is node js a framework
- 36
where to deploy nodejs app
- 37
what is difference between nodejs and express js
- 38
why nodejs is single threaded
- 39
how to do node js
- 40
- 41
why we need node js
- 42
is node js easy to learn
- 43
how nodejs works in hindi
- 44
how nodejs is single threaded and asynchronous
- 46
should i learn node js
- 47
why nodejs is single threaded in hindi
- 48
how nodejs works in tamil
- 49
what does node js do
- 50
why nodejs is better than php
- 51
how to create an api in nodejs
- 52
how nodejs works behind the scenes
- 53
is node js single threaded
More Sitesto check out once you're finished browsing here.
https://www.0x3d.site/
0x3d is designed for aggregating information.
https://nodejs.0x3d.site/
NodeJS Online Directory
https://cross-platform.0x3d.site/
Cross Platform Online Directory
https://open-source.0x3d.site/
Open Source Online Directory
https://analytics.0x3d.site/
Analytics Online Directory
https://javascript.0x3d.site/
JavaScript Online Directory
https://golang.0x3d.site/
GoLang Online Directory
https://python.0x3d.site/
Python Online Directory
https://swift.0x3d.site/
Swift Online Directory
https://rust.0x3d.site/
Rust Online Directory
https://scala.0x3d.site/
Scala Online Directory
https://ruby.0x3d.site/
Ruby Online Directory
https://clojure.0x3d.site/
Clojure Online Directory
https://elixir.0x3d.site/
Elixir Online Directory
https://elm.0x3d.site/
Elm Online Directory
https://lua.0x3d.site/
Lua Online Directory
https://c-programming.0x3d.site/
C Programming Online Directory
https://cpp-programming.0x3d.site/
C++ Programming Online Directory
https://r-programming.0x3d.site/
R Programming Online Directory
https://perl.0x3d.site/
Perl Online Directory
https://java.0x3d.site/
Java Online Directory
https://kotlin.0x3d.site/
Kotlin Online Directory
https://php.0x3d.site/
PHP Online Directory
https://react.0x3d.site/
React JS Online Directory
https://angular.0x3d.site/
Angular JS Online Directory