Skip to main content

Libraries

A list of recommended libraries for common patterns. Each library is tagged with use cases to make it easier to find the library that is best suited for your needs.

Choosing a library

Before using an external library to solve your problem, ask yourself the following questions:

  • Do I need a library for this?
  • Is this project actively maintained?
  • Is the package keeping up to date?

✅ Preferred libraries

Use these libraries in your projects as you seem fit.

Library nameDescriptionTags
Angular Material CDKA full featured CDK to help with many use cases.ui
Day.jsWork with date, datetime, times, relative timesdate
ESLintUse ESLint to check and fix your codebase for code issues.code-styles
LodashMany utility functions. Use the lodash-es version since that is tree-shakeable.utilities
NgxTranslatei18n, internationalization library for Angulartranslations
PrettierMake your code prettier.code-styles
TypeScript ESLintTypeScript version for ESLint.code-styles
tRPCEnd-to-end type-safe APIs for front-end projectstypes
ts-essentialsCreate type-safe code more easily with this helper librarytypes

⚠️ Use with caution

Use these libraries with caution.

Library nameDescriptionTags
Tailwind CSSControversial, inconsistent, leads to unreadable and unmaintainable class name liststranslations
Underscore.jsHas some limitations working with multi-level arrays/objects. Prefer Lodash.translations

🚫 Never use

These libraries are deprecated, or otherwise unfit for usage.

Library nameDescriptionTags
Moment.jsMoment.js is a legacy project in maintenance mode. Use Day.js instead.code-styles
TSLintTSLint has been deprecated since 2019. Use ESLint instead.code-styles