- Vue – Props
Passing data down. `defineProps` with an object declaration, types, `required`, `default` and the function form every object and array default needs, why props are one-way and what to do instead of mutating one, prop casing between template and script, and reading a prop in script versus in a template.
- Vue – Components
Breaking a page into pieces. Importing and using a component with `<script setup>` and no registration step, naming and casing in templates, where components live in a project that has grown past a dozen of them, and how the demo app splits `ui/`, `public/` and `admin/` so that a component's folder tells you who is allowed to use it.
- Vue – Conditional and List Rendering
`v-if` versus `v-show` and which one to reach for, `v-else-if` and `v-else`, `v-for` over arrays and objects, and `:key` — what it is for, why an index is usually the wrong choice, and the class of bug that only appears once you reorder or delete. Also why `v-if` and `v-for` on the same element is a mistake Vue now warns about.
- Vue – Watchers: watch and watchEffect
For the side effects a computed must not do. `watch` with a getter source, the `immediate` and `deep` options and what each really costs, `watchEffect` and how it collects dependencies for you, cleaning up so a stale request cannot overwrite a fresh one, and the demo app's rule that the URL — not component state — is the single source of truth a watcher reacts to.
- FastAPI – Interview Questions
The questions a FastAPI role actually asks, answered against the eighteen lessons before this one. Why type hints do the validating, def versus async def and what happens to each, how dependency injection is tested, where a transaction begins and ends, what BackgroundTasks does not promise, and how a request is traced in production. Short answers, with the reasoning behind them.