corpus.blog
Most cited
Talked about
Blogs
41554 blogs · [ { "id": "01a087c1-370c-7106-9b51-62e17ab5c098", "title": "Common Anti-Patterns in React Hook Form", "url": "https://phelipetls.github.io/pt/posts/react-hook-form-anti-patterns/", "published_at": "2025-10-15T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e16e0ca9f6", "title": "Debugging GitHub actions locally in an interactive shell", "url": "https://phelipetls.github.io/pt/posts/debugging-github-actions-locally/", "published_at": "2025-01-06T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e17483af61", "title": "Implementing infinite scroll in React", "url": "https://phelipetls.github.io/pt/posts/infinite-scroll-react/", "published_at": "2023-11-26T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e16d64a73a", "title": "Debouncing callbacks in React components", "url": "https://phelipetls.github.io/pt/posts/debouncing-react/", "published_at": "2023-10-31T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e17dd52b4f", "title": "Animating on the web", "url": "https://phelipetls.github.io/pt/posts/web-animations/", "published_at": "2023-10-04T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e17960cada", "title": "My zsh prompt", "url": "https://phelipetls.github.io/pt/posts/my-zsh-prompt/", "published_at": "2023-07-16T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e17b924e03", "title": "Parsing URL search params with Zod", "url": "https://phelipetls.github.io/pt/posts/url-search-params-zod/", "published_at": "2023-04-27T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e16f935d75", "title": "Deriving types from data in TypeScript", "url": "https://phelipetls.github.io/pt/posts/deriving-types-from-data-typescript/", "published_at": "2023-04-02T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e17a25fdec", "title": "Type-safe polymorphic React components", "url": "https://phelipetls.github.io/pt/posts/polymorphic-components-react-typescript/", "published_at": "2023-04-01T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e17752f92e", "title": "Good enough syntax highlight for MDX in Neovim using Treesitter", "url": "https://phelipetls.github.io/pt/posts/mdx-syntax-highlight-treesitter-nvim/", "published_at": "2023-01-24T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e1730bc19d", "title": "Git worktrees are great for code reviews", "url": "https://phelipetls.github.io/pt/posts/git-worktrees-are-great-for-code-reviews/", "published_at": "2022-11-06T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e17bd5f5a5", "title": "Template String Converter in Neovim with Treesitter", "url": "https://phelipetls.github.io/pt/posts/template-string-converter-with-neovim-treesitter/", "published_at": "2022-10-14T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e16ca36264", "title": "Ergonomic mappings for code formatting in Vim", "url": "https://phelipetls.github.io/pt/posts/code-formatting-vim/", "published_at": "2022-09-29T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e17b4307dd", "title": "An apparent React bug", "url": "https://phelipetls.github.io/pt/posts/surprising-react-bug/", "published_at": "2022-09-10T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e1731cd648", "title": "How not to write forms with React", "url": "https://phelipetls.github.io/pt/posts/how-not-to-write-forms-in-react/", "published_at": "2022-08-28T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e1719a72c4", "title": "My favorite custom git commands", "url": "https://phelipetls.github.io/pt/posts/favorite-custom-git-commands/", "published_at": "2022-08-03T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e16c6e9dc3", "title": "Bash for JavaScript developers", "url": "https://phelipetls.github.io/pt/posts/bash-for-javascript-developers/", "published_at": "2022-07-24T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e175f6f18c", "title": "Ansible for dotfiles: the introduction I wish I've had", "url": "https://phelipetls.github.io/pt/posts/introduction-to-ansible/", "published_at": "2022-05-26T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e1786841c7", "title": "Moving away from tiling window managers", "url": "https://phelipetls.github.io/pt/posts/moving-away-from-tiling-window-managers/", "published_at": "2022-05-01T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e16eaf7731", "title": "Demystifying git rebase", "url": "https://phelipetls.github.io/pt/posts/demystifying-git-rebase/", "published_at": "2022-04-06T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e17ccac665", "title": "Using Storybook and MSW in React Native", "url": "https://phelipetls.github.io/pt/posts/using-storybook-and-msw-in-react-native/", "published_at": "2022-03-02T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e16ba62e07", "title": "adb: a must-know CLI tool for Android development", "url": "https://phelipetls.github.io/pt/posts/adb-a-must-know-cli-tool-for-android-development/", "published_at": "2022-02-07T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e1790a05ae", "title": "Node.js one-liner to read JSON files", "url": "https://phelipetls.github.io/pt/posts/nodejs-one-liner-to-read-json-files/", "published_at": "2022-01-26T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e1750fbedc", "title": "Improving the Android Studio experience in dwm", "url": "https://phelipetls.github.io/pt/posts/improving-the-android-studio-experience-in-dwm/", "published_at": "2022-01-25T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e176a07aeb", "title": "Making Vim understand TypeScript path mapping", "url": "https://phelipetls.github.io/pt/posts/making-vim-understand-typescript-path-mapping/", "published_at": "2021-09-15T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e16c3b749b", "title": "Automating SVG to JSX conversion with svgr", "url": "https://phelipetls.github.io/pt/posts/automating-svg-to-jsx-conversion-with-svgr/", "published_at": "2021-09-08T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e16ff3cfa2", "title": "Extending Vim with ripgrep", "url": "https://phelipetls.github.io/pt/posts/extending-vim-with-ripgrep/", "published_at": "2021-06-11T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e173b96bf2", "title": "Implementing dark mode for static websites", "url": "https://phelipetls.github.io/pt/posts/implementing-dark-mode-for-static-websites/", "published_at": "2021-04-29T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e1785c588a", "title": "My experience testing React applications", "url": "https://phelipetls.github.io/pt/posts/my-experience-testing-react-applications/", "published_at": "2021-04-28T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e1775ed0a6", "title": "Migrating from create-react-app to Vite", "url": "https://phelipetls.github.io/pt/posts/migrating-from-cra-to-vite/", "published_at": "2021-04-23T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e16d5d9f12", "title": "Configuring eslint to work with Neovim LSP", "url": "https://phelipetls.github.io/pt/posts/configuring-eslint-to-work-with-neovim-lsp/", "published_at": "2020-12-28T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e170c76676", "title": "Python f-strings syntax highlighting in Vim", "url": "https://phelipetls.github.io/pt/posts/f-strings-syntax-highlighting-in-vim/", "published_at": "2020-10-28T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e16f1624cb", "title": "Deploying a Flask app on a Heroku free dyno", "url": "https://phelipetls.github.io/pt/posts/deploying-flask-app-on-heroku/", "published_at": "2020-10-11T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e17d75fef3", "title": "A Vim errorformat for pytest", "url": "https://phelipetls.github.io/pt/posts/vim-errorformat-for-pytest/", "published_at": "2020-10-07T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e16bfd8bfb", "title": "Asynchronous :make in Neovim with Lua", "url": "https://phelipetls.github.io/pt/posts/async-make-in-nvim-with-lua/", "published_at": "2020-08-12T00:00:00+00:00" }, { "id": "01a087c1-370c-7106-9b51-62e1724bd73e", "title": "Getting Salesforce reports with VBA", "url": "https://phelipetls.github.io/pt/posts/getting-salesforce-reports-with-vba/", "published_at": "2020-08-05T00:00:00+00:00" } ] posts
Claim your blog
Back to phelipetls.github.io
Blog · corpus.blog/blogs/phelipetls.github.io/posts
phelipetls.github.io
phelipetls.github.io
2025
Common Anti-Patterns in React Hook Form
original ↗
15 Oct 2025
Debugging GitHub actions locally in an interactive shell
original ↗
6 Jan 2025
2023
Implementing infinite scroll in React
original ↗
26 Nov 2023
Debouncing callbacks in React components
original ↗
31 Oct 2023
Animating on the web
original ↗
4 Oct 2023
My zsh prompt
original ↗
16 Jul 2023
Parsing URL search params with Zod
original ↗
27 Apr 2023
Deriving types from data in TypeScript
original ↗
2 Apr 2023
Type-safe polymorphic React components
original ↗
1 Apr 2023
Good enough syntax highlight for MDX in Neovim using Treesitter
original ↗
24 Jan 2023
2022
Git worktrees are great for code reviews
original ↗
6 Nov 2022
Template String Converter in Neovim with Treesitter
original ↗
14 Oct 2022
Ergonomic mappings for code formatting in Vim
original ↗
29 Sept 2022
An apparent React bug
original ↗
10 Sept 2022
How not to write forms with React
original ↗
28 Aug 2022
My favorite custom git commands
original ↗
3 Aug 2022
Bash for JavaScript developers
original ↗
24 Jul 2022
Ansible for dotfiles: the introduction I wish I've had
original ↗
26 May 2022
Moving away from tiling window managers
original ↗
1 May 2022
Demystifying git rebase
original ↗
6 Apr 2022
Using Storybook and MSW in React Native
original ↗
2 Mar 2022
adb: a must-know CLI tool for Android development
original ↗
7 Feb 2022
Node.js one-liner to read JSON files
original ↗
26 Jan 2022
Improving the Android Studio experience in dwm
original ↗
25 Jan 2022
2021
Making Vim understand TypeScript path mapping
original ↗
15 Sept 2021
Automating SVG to JSX conversion with svgr
original ↗
8 Sept 2021
Extending Vim with ripgrep
original ↗
11 Jun 2021
Implementing dark mode for static websites
original ↗
29 Apr 2021
My experience testing React applications
original ↗
28 Apr 2021
Migrating from create-react-app to Vite
original ↗
23 Apr 2021
2020
Configuring eslint to work with Neovim LSP
original ↗
28 Dec 2020
Python f-strings syntax highlighting in Vim
original ↗
28 Oct 2020
Deploying a Flask app on a Heroku free dyno
original ↗
11 Oct 2020
A Vim errorformat for pytest
original ↗
7 Oct 2020
Asynchronous :make in Neovim with Lua
original ↗
12 Aug 2020
Getting Salesforce reports with VBA
original ↗
5 Aug 2020