9. Other tooling types

Tooling

Extensions modules

Notes:

This set of criteria doesn't require having an in-depth knowledge of the tools listed below; instead, students are encouraged to learn the basic concepts of why and how they are used (and where in a web app project), test them out, and play with usage examples.

Learning outcomes — understand the purpose and basic usage of other common tooling types you may be required to use in a web project:

  • Linters/formatters, for example, ESLint and Prettier:

    • Detecting potential bugs, and how linters can automatically fix them.

    • The need to have coding standards, and how these tools can easily automate conformance to those standards.

    • Integrating them as part of your workflow — as a code editor extension, as part of your test runner, or as part of a CI run.

  • Package managers, for example, npm and yarn:

    • Using these as a way to manage project dependencies as a codebase becomes more complex.

    • Finding suitable packages to solve your problems from registries and installing them.

    • Using scripts (for example npm scripts) to make deployment and testing easier.

  • Build tools/bundlers, for example, Rollup.js, Parcel, and Vite.js:

    • Using these to manage dependencies, and organize, optimize, and minify your code into build files for improved performance.
  • Deployment tools, for example, Simple FTP clients, Netlify and Vercel:

    • Using these to deploy your applications.

    • Integrating tooling with GitHub to provide automatic test deployments on push.

    • Handling custom domains, serverless functions, and form submissions.

    • Handling access control and integration with identity providers such as Okta and Auth0.

    • Integrations with popular frameworks and app platforms.

Resources:

Previous: 8. CSS toolingNext: Frequently asked questions