joshxyzhimself
jxyz

jxyz

Web App Development Recommendations

Photo by Anders Jildén on Unsplash

Web App Development Recommendations

joshxyzhimself's photo
joshxyzhimself
·Jul 26, 2022·

2 min read

Subscribe to my newsletter and never miss my upcoming articles

Hereunder are my recommendations for developing web apps.

Keep in mind I code mostly in JavaScript and TypeScript.

Integrated Development Environment (IDE)

I recommend Visual Studio Code. Comes with intellisense, works well with both JavaScript and TypeScript, and has extensions like ESLint for code linting.

Editor Font

I recommend Ubuntu Mono. It's free, friendly to the eyes, and suitable for code editors and terminals.

Version Control System

I recommend Git.

Git is quite easy to learn. The commands init, clone, pull, push are more than enough for starters.

Code Sharing

I recommend GitHub.

GitHub lets you share your code in public and private repositories.

GitHub Gist lets you share code snippets.

Code Testing

I recommend GitHub Actions, it lets you automate your tests whenever you push changes to your code.

Code Linters

I recommend ESLint. It's stable, configurable, not too opinionated, and promotes best practices on most cases. It makes your code very readable too.

Code Bundlers

I recommend ESBuild + PostCSS, or Vite. They're fast and efficient on what they do.

Web Frameworks

I recommend uWebSockets.js. It's an HTTP server with built-in WebSocket support. It is used by numerous financial trading platforms, better than Express.js, Fastify.js, Koa.js, Hapi.js, etc.

Relational Database

I recommend PostgreSQL. Easy to install, with developer-friendly documentation.

Search Database

I recommend TypeSense. Also easy to install, with developer-friendly documentation.

Cache & Message Broker

I recommend Redis. Easy to install, can be used as a cache and message broker.

Routing & TLS

I recommend Caddy and HAProxy.

Caddy for automated TLS and fast deployments.

HAProxy for granular control.

Cloud Vendors

Vultr, Digital Ocean, and Linode for small deployments.

Hetzner, OVH, and Data Packet for alternatives.

Google Cloud Platform, Amazon Web Services, and Microsoft Azure for elaborate deployments.