Using AWS and Netlify for free hosting
Hosting a website
There are multiple ways to host a website today, many hosting solutions are also free for a non popular website, when traffic is low.
Netlify for example offers at least for personal use a hosting solution for next.js (and not only) that offers an easy way to deploy your website using a github repository. Every time the main branch is updated it retriggers a website deploy without the developer needing to maintain or update any deployment scripts.
One just starts at netlify.com by creating an account and providing a git repository. For next.js projects netlify detects the project type and offers to configure build and deployment automatically from the main git branch. After initial configuration everything related to updates will run automatically.
Netlify - configure domain
One can configure to use an external domain and that includes configuration of the external DNS server that handles the website. Once Netlify detects the existence of the external domain it will request for the user to configure the DNS records so that they point to the Netlify created subdomain (web-app.netlify.app) that user created when it configured the new website. See dns considerations.
Using AWS Route 53
One can use AWS management console, find service Route 53 there to buy and then configure the domain for the authoritative DNS configuration.
After the domain is obtained one needs to add a DNS A Record that link the new domain to the IP exposed by Netlify (see netlify dns considerations). Also registering as an alias the www subdomain is a good idea, so that DNS requests to www.website go to the same destination.
One can see bellow how the DNS configuration looks like in Route 53