Skip to main content

Third Party Dependencies

It is common practice utilizing third-party libraries for our projects. Choosing the right one can be a difficult task. Therefore we curated a list of recommended packages and set guidelines for choosing a package which is not on the list.

Guidelines for choosing a third party package.

When choosing a NPM package for your project please check the recommended packages list first. This is a curated list recommended by the frontend developer community of the Gemeente Amsterdam.

If the packages in the list do not fit your requirements you can pick a non-recommended package. When do so, follow these guidelines.

  • Does it have the correct license?
  • Is the package health still good?
    • Who is maintaining it?
    • Is it actively maintained?
    • How many downloads per week?
  • Does it have an acceptable bundle size?
  • Comparison of similar packages.s

You could propose a package to the list of Recommonded Packages. Create a PR with a description to motivate your proposal.

A collection of third party (React) libraries we recommend using in your frontend project.

Developer Environments

Libraries

Hooks

State management

  • React Redux - Official React bindings for Redux
    • Redux Toolkit - The official, opinionated, batteries-included toolset for efficient Redux development
    • Redux DevTools - DevTools for Redux with hot reloading, action replay, and customizable UI
    • Reselect - Selector library for Redux
    • Redux Thunk - Thunk middleware for redux
    • redux-saga - An alternative side effect model for Redux apps
  • TanStack Query - Powerful asynchronous state management
  • Jotai - Bottom-up approach to React state management with an atomic model

Routing

Forms

UI Components

Testing

  • Jest - Delightful JavaScript Testing
  • Enzyme - JavaScript Testing utilities for React
  • React Testing Library - Simple and complete React DOM testing utilities
  • Vitest - A Vite-native testing framework.

Component Sandbox

  • Storybook - Storybook is a frontend workshop for building UI components and pages in isolation

Schema validators

Utilities

Managing dependencies

To Be Defined