Powerful Form Validation With React Hook Form and Zod

Zod is a lightweight and powerful validation library for JavaScript and TypeScript applications. It enables you to define the structure of your data through schemas and validate the input data against those schemas. Although it can be used with JavaScript applications, Zod works greatly with TypeScript. Zod can automatically generate…

How to Create and Validate Forms With React Hook Form

React Hook Form (RHF) is a library for managing and validating forms. It's a performant library that improves the app performance by reducing the amount of code you need to write and minimizing the number of re-renders. RHF is also super light having zero dependencies. Lastly, you can integrate RHF…

Configure Ghost Mail with Gmail SMTP Server

Sending transactional emails from a self-hosted Ghost instance requires you to configure the mail manually. Transactional emails refer to emails containing password resets, member invitations, signup and login links. If you have a Gmail account, you can use the Gmail SMTP server for free to send up to 500 emails…

The Best 32 Git GUI Clients for Mac OS X

Git is a version control system developers use to track changes in their code and collaborate with other developers on projects. While you can use git from the command line, many developers prefer to use a graphical user interface (GUI) client to make their workflow more efficient. This article presents…

Get Started with SQL - A Brief Guide

When I started my career in IT in the early 2000s, SQL was one of the most important programming concepts because it was one of the only ways to work with databases and structured data. SQL continues to enjoy a lot of popularity and is a great skill to learn…

Get Started With Ghost on DigitalOcean Droplet

This article will teach you how to install and run a Ghost blog or publication on a DigitalOcean droplet. Pre-requisites: * A domain * DigitalOcean account * Knowledge of working with the terminal 1. Create DigitalOcean account First of all, you need a DigitalOcean account. If you don't have one, you can create…