Skip to content

Frontend Checklist

This chapter defines the detailed checklist for the frontend area of TQS-S/W certification. The frontend checklist consists of 6 areas: code and components, routing and state management, data communication, build and tools, UI and styling, and testing and quality. Each item is classified as mandatory (O), recommended (R), or optional (S), with the verification method specified.


32.3.1. Code and Components

The code and components checklist verifies the correct usage of Vue 3 and TypeScript, component design rules, and directory structure standards compliance.

No.ItemClassificationVerification Method
1Vue 3 + <script setup> + TypeScript combination is usedOCode verification
2Composition API is used (Options API is not used)OCode review
3SFC block order is maintained as <script><template><style>OCode review
4Component file names use PascalCaseOFile name verification
5TypeScript types are specified in defineProps and defineEmitsOCode review
6Standard directory structure is applied (views / components / composables / stores)ODirectory structure verification
7The v-html directive is not used (DOMPurify must be applied if unavoidable)OCode search
8:key is bound to v-for directives (array index is not used)OCode review
9TypeScript strict mode is enabledOVerify strict: true in tsconfig.json
10The any type is not used (no-explicit-any rule is applied)OESLint execution results verification
11Type definitions are managed in the src/types/ directoryRDirectory structure verification

The code and components area is the foundation of the frontend checklist. Vue 3 Composition API and TypeScript strict mode are core TQS specification requirements that must be met.


32.3.2. Routing and State Management

The routing and state management checklist verifies the correct usage of Vue Router and Pinia.

No.ItemClassificationVerification Method
12createWebHistory mode is used in Vue RouterORouter configuration file verification
13Routes are configured with lazy loading (() => import())ORouter configuration file verification
14Authentication guard is implemented in beforeEachORouter configuration code verification
15Pinia is used as the state management library (Vuex is not used)OVerify dependencies in package.json
16Setup Store syntax is usedOStore file code verification
17storeToRefs is used to maintain reactivityOCode review

Routing and state management are core elements that determine the structural stability of a frontend application. Vue Router's lazy loading directly impacts initial load performance and must be applied.


32.3.3. Data Communication

The data communication checklist verifies Axios-based HTTP communication implementation, error handling, and form validation.

No.ItemClassificationVerification Method
18An Axios instance is created and used (global Axios is not used)OCode verification
19Authentication tokens are injected in request interceptorsOInterceptor code verification
20Errors are converted to a standard format in response interceptorsOInterceptor code verification
21HTTP status code-specific error handling is implemented (401, 403, 404, 500, etc.)OError handler code verification
22Form validation is performed on the client sideOCode review
23File uploads validate extensions and size on the client sideRCode review

The data communication area verifies standardized HTTP communication implementation based on Axios instances. Token injection and error conversion through interceptors are essential patterns that prevent code duplication and ensure consistency.


32.3.4. Build and Tools

The build and tools checklist verifies Vite build configuration, environment variable management, and code quality tool application.

No.ItemClassificationVerification Method
24The @ alias is configured to the src/ path in ViteOVerify vite.config.ts
25Environment variables use the VITE_ prefixOVerify .env files
26Environment variable types are defined in env.d.tsOVerify env.d.ts file existence and content
27Initial load JavaScript bundle size is 300KB or less (gzip)OBuild results or Lighthouse report verification
28ESLint Flat Config is usedOVerify eslint.config.js file
29Prettier is appliedOVerify .prettierrc or prettier.config.js file
30husky + lint-staged are configured for automatic pre-commit lintingOVerify .husky/ directory and lint-staged configuration
31prettier-plugin-tailwindcss is applied for automated class sortingRVerify plugin in Prettier configuration file

The build and tools area verifies the application of automation tools that ensure development productivity and code consistency. The ESLint and Prettier combination is the core toolset for automatically maintaining code style consistency.


32.3.5. UI and Styling

The UI and styling checklist verifies Tailwind CSS application, style management rules, and accessibility standards compliance.

No.ItemClassificationVerification Method
32Tailwind CSS is applied as the styling frameworkOVerify tailwind.config.js file
33The scoped attribute is applied to component <style> blocksOCode review
34Inline styles (style attribute) are not usedOCode search
35WCAG 2.1 AA level accessibility is metOLighthouse accessibility score verification
36Text-to-background color contrast ratio is maintained at 4.5:1 or aboveOAccessibility tool inspection results verification
37Keyboard navigation is supported (Tab key order, focus indicators)RManual testing

The UI and styling area verifies visual consistency and accessibility. WCAG (Web Content Accessibility Guidelines) 2.1 AA level accessibility is a fundamental user experience requirement, including color contrast and keyboard navigation.


32.3.6. Testing and Quality

The testing and quality checklist verifies test framework application, coverage criteria, performance metrics, and internationalization implementation.

No.ItemClassificationVerification Method
38Vitest is applied as the test frameworkOVerify vitest.config.ts or vite.config.ts
39Component tests are written using Vue Test UtilsOTest file existence verification
40Line coverage of 80% or above is achievedOCoverage report verification
41Branch coverage of 70% or above is achievedOCoverage report verification
42Lighthouse performance score of 90 or above is achievedOLighthouse report verification
43vue-i18n is applied to support internationalizationRVerify dependencies in package.json and configuration
44Translation keys are used without hardcoded stringsRCode review

The testing and quality area verifies the reliability and performance of frontend code. Component testing with Vitest and Vue Test Utils is mandatory, and the Lighthouse performance criteria ensure user experience quality.


32.3.7. Item Summary

The total number of items and distribution by classification for the frontend checklist are as follows.

AreaMandatory (O)Recommended (R)Optional (S)Total
Code and Components101011
Routing and State Management6006
Data Communication5106
Build and Tools7108
UI and Styling5106
Testing and Quality5207
Total386044

The frontend checklist consists of a total of 44 items. All 38 mandatory items must be met to obtain Basic certification, and the compliance rate of the 6 recommended items determines whether the Advanced or Premier certification grade is achieved.

TIENIPIA QUALIFIED STANDARD