This repo holds one of a series of examples of JAMstack sites from a freeCodeCamp video. The video, "Introduction to JAMstack" is available to view for free on freeCodeCamp.
The 5th of our 6 code examples, this example builds on example 4 to generate more content in the site with the use of a static site generator first pulling content from a content API at build time. Now building out distinct content pages for each locale supported by the News API content source.
Here in the video, we build the logic to source news content from the News API feed, and generate each localised page on its own URL. Then we also use the static site generator to create a redirects configuration file which can route visitors at the Edge CDN to the site to the correct localized content page for them.
To work on this example locally, you can clone the repository and start editing, although there are a few pre-requisites:
- NodeJS and NPM
- A free Netlify account
- A free newsapi.org API key
# clone the repo
git clone https://github.com/philhawksworth/fcc-5-localized-news
# move into the working directory and install dependencies
cd fcc-5-localized-news
npm install
# build and start the local development server
npm start
# just run the build
npm run build
If you wanted to quickly clone this repository and deploy it as a new site on Netlify you can click the button below for a rapid start. This will give you a ready-made CI/CD pipeline linked to your git commits.
For a better understanding of what this example is and why it exists, you can jump directly into the video at the point we are discussing this example
- Example 1 - All simply static
- Example 2 - Changing the DOM with JavaScript
- Example 3 - Introducing a static site generator
- Example 4 - Generating pages from a content API
- Example 5 - Generating localized pages, with geo-IP routing at the CDN (👈 you are here)
- Example 6 - Client-side rendering targeted API content
- jamstack.org - More info and resources
- Official JAMstack slack - conversation about JAMstack and web development (come on in!)
- Modern Web Development on the JAMstack, O'reilly, 2019 - Book on building websites with the JAMstack. Available as a free e-book.