- FastAPI – Logging, Health Checks and Request Tracing
Making a running API explainable. Structured JSON logs with a correlation id carried by a ContextVar so it survives both async routes and the threadpool, a health check that reports each dependency separately, and what to log per request. Includes two things that bite in a container: uvicorn quietly replacing your log config, and a test that asserted on log content while reading another handler's work.
- Vue – The Single-File Component
A `.vue` file holds a template, a script and a style block, and that co-location is the whole idea. What `<script setup>` compiles to and why it replaced `export default`, why `<style scoped>` does not leak, when a component needs a name, and how the build turns three blocks in one file into a render function.
- FastAPI – Testing the Whole Stack
TestClient against the real ASGI stack, dependency_overrides to swap the database and the current user, and a fixture that runs every test inside a transaction it rolls back. Which tests belong at the service layer and which can only be written through HTTP — including the class of bug that lives entirely in configuration and is invisible to everything below TestClient.
- Vue – Set Up a Project with Vite
One command scaffolds the project: what `npm create vue@latest` generates, what each file is for, how `index.html` is the real entry point under Vite, what `createApp(App).use(pinia).use(router).mount('#app')` is actually doing, the dev server and its proxy, and the handful of npm scripts you will run every day.
- FastAPI – Middleware, Ordering and CORS
Middleware for the things every request needs: a correlation id, a timing header, one access log line. Then ordering, which reads backwards — add_middleware inserts at the front, so the last call is the outermost layer. Getting that wrong shipped a real bug here: every 500 reached the browser without CORS headers, so the frontend reported a CORS failure and never saw the error body.