This document explains the need for every top level dependency the project has.
Dependency | Reason |
---|---|
@apollo/client | Client library for executing GraphQL operations. |
@cypress/code-coverage | Code coverage for Cypress. |
@material-ui/core | Core package for Material UI components. |
@material-ui/icons | Library for using Material Icons. |
apollo-upload-client | Allows file uploads with GraphQL mutations. |
babel-plugin-istanbul | Babel plugin for instrumenting code for code coverage. |
browser-image-compression | Used for resizing uploaded images. |
clsx | A minimalistic library to connect Material UI classes. |
dayjs | Immutable date library. |
formik | Provides useful and extensible form logic. |
graphql | Only used for getting useful GraphQL typings. |
gray-matter | Parse content from Markdown files. |
next | Rendering framework for React. |
next-offline | Offline support for Next.js. |
next-translate | I18n support for Next.js. |
nprogress | Provides the loading bar. |
ramda | Our go-to utility library. |
react | Duh. |
react-dom | Duh. |
react-pdf | Render PDF files. |
remark-gfc | Remark plugin to render additional Markdown elements. |
yup | Object schema validation (used together with Formik). |
Dependency | Reason |
---|---|
@graphql-codegen/cli | Generate API functions from GraphQL code. |
dpdm | A tool that we use to check for circular dependencies. |
cypress | Browser testing tool. |
eslint | Linter. |
graphql-let | GraphQL Code Generator wrapper to automate code generation. |
prettier | Formatter. |
raw-loader | Needed for parsing Markdown files. |
typescript | Duh. |
Dependency | Reason |
---|---|
libgtk2.0-0 | Use Cypress for browser tests. |
libgtk-3-0 | Use Cypress for browser tests. |
libnotify-dev | Use Cypress for browser tests. |
libgconf-2-4 | Use Cypress for browser tests. |
libgbm-dev | Use Cypress for browser tests. |
libxss3 | Use Cypress for browser tests. |
libxss1 | Use Cypress for browser tests. |
libasound2 | Use Cypress for browser tests. |
libxtst6 | Use Cypress for browser tests. |
xauth | Use Cypress for browser tests. |
xvfb | Use Cypress for browser tests. |