What is your must have npm package on any given project?

This page summarizes the projects mentioned and recommended in the original post on /r/webdev

Our great sponsors
  • SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • prettier

    Prettier is an opinionated code formatter.

  • Prettier.

  • pythagora

    Generate automated tests for your Node.js app via LLMs without developers having to write a single line of code.

  • Package for generating automated tests Pythagora (https://github.com/Pythagora-io/pythagora). Disclaimer: I'm the author of this tool but I think it can help many because it can create real automated integration tests without us having to write them - for example, you can get from 0 to 80% code coverage in 30 minutes. It's a pretty new package so if you try it out, I'd be happy to hear what do you think.

  • SurveyJS

    Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.

    SurveyJS logo
  • mitt

    🥊 Tiny 200 byte functional event emitter / pubsub.

  • date-fns and mitt (event emitter) are also frequent helpers, but I'm considering dayjs and nanoevents for these cases.

  • date-fns

    ⏳ Modern JavaScript date utility library ⌛️

  • date-fns and mitt (event emitter) are also frequent helpers, but I'm considering dayjs and nanoevents for these cases.

  • dayjs

    ⏰ Day.js 2kB immutable date-time library alternative to Moment.js with the same modern API

  • date-fns and mitt (event emitter) are also frequent helpers, but I'm considering dayjs and nanoevents for these cases.

  • nanoevents

    Simple and tiny (107 bytes) event emitter library for JavaScript

  • date-fns and mitt (event emitter) are also frequent helpers, but I'm considering dayjs and nanoevents for these cases.

  • TypeScript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • Start with typescriptlang.org. The handbook is very helpful. The syntax is pretty simple, but there are some challenging concepts if you are working with complex types. I'd recommend you just start using it. I've found the best way to learn TS is to use TS and dig deeper when you run in to something you don't understand.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • kn-backend

    Knative backend using Deno as a runtime

  • As an example, recently at work, I did a little proof-of-concept demo using Deno as a Knative service to show how a person could leverage it in a serverless way. The demo leveraged quay.io to host a container image automatically built from the repo (https://github.com/KamiQuasi/kn-backend). It was a fun little project.

  • awesome-tiny-js

    🤏 A collection of tiny JS libraries (under 2 kB) to put your bundle on a diet

  • I made this list of sub-2kB libraries: awesome-tiny-js, check it out! /shameless-plug

  • styled-components

    Visual primitives for the component age. Use the best bits of ES6 and CSS to style your apps without stress 💅

  • styled-components

  • tsx

    ⚡️ TypeScript Execute: Node.js enhanced to run TypeScript & ESM

  • I prefer tsx honestly. Nodemon will detect that your using TypeScript and switch from node to ts-node but tsx is a no config necessary version of ts-node that also runs faster. Of course you can configure ts-node to use swc to be faster but then you're playing with config files to get things working.

  • tonal

    A functional music theory library for Javascript

  • I'm working on a music project and both tonejs and tonal are incredible projects.

  • js-proper-url-join

    Like path.join but for a URL

  • I use proper-url-join on almost all projects to ensure API endpoint paths are not gonna get screwed up.

  • lefthook

    Fast and powerful Git hooks manager for any type of projects.

  • lefthook is great for git hooks - much prefer it to husky and lint-staged combo.

  • change-case

    Convert strings between camelCase, PascalCase, Capital Case, snake_case and more

  • change-case is only ~900b

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts