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: