# Allan Garcez — Senior Frontend Engineer Blog

Writing about frontend engineering, TypeScript, React, Node.js, and developer tooling after 10+ years of building products.

## Recent posts

- [Back to CSS](https://garcez.dev/posts/back-to-css) — Moving from Tailwind CSS to plain CSS
- [Details Matter](https://garcez.dev/posts/all-details-matters) — In the age of AI, attention to detail is everything
- [Espanso: a better way to type](https://garcez.dev/posts/espanso) — Changing your way of typing with macros and automations.
- [Dotfiles](https://garcez.dev/posts/dotfiles) — A practical guide to setting up a productive development environment
- [How to study frontend?](https://garcez.dev/posts/how-to-frontend) — How to define your study path with frontend?
- [Global, local or browser state?](https://garcez.dev/posts/local-global-or-browser-state) — Is state the responsibility of the local component, global or the browser? Learn about the various forms of state storage
- [Diving into Functional Programming](https://garcez.dev/posts/fp) — Trying once again to talk about functional programming, bringing a detailed introduction of the most important concepts and diving into concepts in an explanatory way.
- [Creating a strongly typed router](https://garcez.dev/posts/brouther) — A type-safe contract for routes, links, and redirects
- [Working with forms](https://garcez.dev/posts/forms) — Build practical React forms with the browser APIs you already have
- [GraphQL](https://garcez.dev/posts/graphql) — The REST 'killer' or just another hype?
- [Micro frontend or NextJS](https://garcez.dev/posts/micro-frontend) — New technology, old concept. Nothing changes
- [Functional Typescript](https://garcez.dev/posts/functional-programming) — The functional programming ideas behind everyday JavaScript
- [React Hooks](https://garcez.dev/posts/hooks) — A new (not so new) way of thinking
- [JS tricks: avoiding if statements](https://garcez.dev/posts/avoid-ifs) — Replacing nested conditionals with data
- [Hooks + Redux](https://garcez.dev/posts/hooks-plus-redux) — Uniting hooks with global state
- [Building a flexible frontend](https://garcez.dev/posts/custom-react) — How a multi-tenant frontend became flexible enough to serve different brands
- [What if I need to change just this here?](https://garcez.dev/posts/frontend) — Creating customizable frontends with setup files
- [Array.prototype](https://garcez.dev/posts/array-prototype) — A practical guide to JavaScript arrays
- [Node CLI](https://garcez.dev/posts/nodejs-cli) — Automating tasks through the command line
