(Print) Use this randomly generated list as your call list when playing the game. There is no need to say the BINGO column name. Place some kind of mark (like an X, a checkmark, a dot, tally mark, etc) on each cell as you announce it, to keep track. You can also cut out each item, place them in a bag and pull words from the bag.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Inline styles instead of scoped CSS.
No strict type-checking with TypeScript.
Direct DOM manipulation in Vue methods.
Hardcoded API URLs or configurations.
Duplicated or unused TypeScript interfaces.
Circular dependencies in component imports.
Mutating props directly in child components.
No separation of concerns (e.g., mixing logic and view).
Excessive logic in Vue templates.
Overusing `any` type instead of specific types or interfaces.
Overloading a single component with multiple responsibilities.
Leaving debugging code (e.g., `console.log`) in production.
No global state management (e.g., Vuex or Pinia) for shared data.
Global imports instead of lazy-loading components.
Missing or poorly written unit tests.
No error boundary handling for child components.
Missing `defineProps` and `defineEmits` in Composition API.
Missing default values for optional props.
Improper use of lifecycle hooks (e.g., heavy logic in `mounted`).
Not defining types for component props.
No linting tools configured (e.g., ESLint + TypeScript rules).
Using `this` instead of `ref()` or `reactive()` in Composition API.
Not using `key` attribute in v-for loops.
Hardcoded strings instead of localization (i18n).
Not using `v-model` for two-way binding where appropriate.