- The application must start
- The application must be a Single Page Application
- The application must be divided into components
- The file structure must be consistent and easy to follow
- The list and details page must work with minor issues
- The application must include meaningful tests
- The application is configurable by environment variables
- The application has a development and production environment
- The application supports code splitting
- The application has good naming
- The application computes values
- The application is responsive
- A component library is created
- TypeScript is used
- Cross-browser techniques are implemented
- Styles are shipped separately
- Hot reload is added
- No componentization
- No modularization
- Inline styles
- No control over re-rendering (e.g. not using id for a list)
- Bad naming