Blog
Mert Özen's blog posts on software development, backend, frontend, and DevOps.
Your First React Project: Vite + TypeScript, Project Structure, StrictMode and React DevTools
We build a project skeleton for the series with Vite's react-ts template, feature folders, an @/ alias from a single source via Vite 8's resolve.tsconfigPaths, Oxlint's hook rules and a dev proxy that forwards /api requests to the Bookstore API. With real output we show that StrictMode renders twice and runs effects setup-cleanup-setup in development while the production build runs everything once, and that without the proxy the browser refuses to read the response because of CORS.
What Changed in Static Analysis: .NET 5–11 Analyzers, From TSLint to ESLint 10, TypeScript 7 and Next-Generation Linters
Analyzers have been part of the SDK since .NET 5, and every release brings new rules: the same code gave zero warnings with the .NET 10 SDK and four with the .NET 11 SDK (CA2026, CA2027, CA1877, CA2028). The post covers the .NET 6–11 rule history, CA2028 missing source-generated regexes, why automatic .eslintrc to flat config migration isn't enough with angular-eslint 22, TypeScript 7 holding back typescript-eslint, Oxlint and Biome results on Bookstore, and Sonar's new names.