I use neovim or regular Vim if neovim is not available. I have a pretty good config to develop with javascript and typescript, mainly thanks to coc.nvim, which basically transforms your vim completion engine in VS Code. You can check out my latest config here.

Visual Studio Code

I don't really use it anymore cause I use Vim for everything but it's the one I would recommend to all of you.

Kitty terminal

Not really an editor, but it's my terminal of choice to use vim. The thing I like the most about Kitty is that it's config is a plain text file so I can include it in my dotfiles

Tech stack


For any web project that I start now, I use Next.js. This tool gives you an automatic hybrid setup of ReactJS (so, client rendering for browser navigation + SSR) with the file system as the router. I also use it to build lambda-based APIs as the client's backend.

Next also allows you to use a CMS to prerender all pages and use a CDN to quickly serve all files as static. That's what I use to build the site you're looking at right now.


In the server I use NodeJS but I rarely need it since I went serverless thanks to NextJS lambdas.


For data persistance I started to use (and love) the open-source alternative to Firebase: Supabase. It’s a database service with great DX. From their website is really easy to create and manage SQL tables (and make queries as well). But what I appreciate the most is the library react-supabase: It easily lets you not only use normal DB requests in your app, but also use the real-time API that Supabase has, via Hooks, and make one-liners like this one - with a simple hook, you always have live data in your UI without any effort.


I'm writing these lines on Storyblok, the CMS of my choice. I use it to generate static content with NextJS (JAMStack). I like it cause it has a visual editor that connects to your React components so you can directly see your content changing live.