Frontend
Work-in-progress: This content is incomplete; you can help by expanding it
Language
Section titled “Language”React - Unless there’s a very good reason, we use React on our team over other frontend frameworks (Angular, Vue, etc). There may sometimes be a reason to use pure vanilla JS and not use a frontend framework at all; that’s fine.
TypeScript - Static typing can be philosophically considered a form of testing - it provides immediate, useful feedback as to whether the code written satisfies the defined constraints. We have a strong preference that TypeScript is used over plain JavaScript.
React Frameworks
Section titled “React Frameworks”- create-vite-app for Single-Page Applications (SPAs)
- Next.js for server-side rendered applications
- Astro for content-centric static pages
Testing
Section titled “Testing”Unit tests
Section titled “Unit tests”Use React Testing Library and install the following:
@testing-library/dom@testing-library/jest-dom@testing-library/react@testing-library/user-eventjest-environment-jsdom
End-to-end tests
Section titled “End-to-end tests”- Cypress is recommended, or more commonly used
- Some folks have used Playwright
Feedback widget
English and Spanish content integration using SmartCat as the TMS