Web Fundamentals on DevSite

Welcome to the new WebFundamentals! An effort to showcase best practices and tools for modern Web Development.
What's changed?
- We're now using the DevSite infrastructure
- Jekyll has been eliminated. Instead, pages are rendered at request time
- Front-matter has been eliminated from the markdown, but files now require a simple set of tags
What stays the same?
Cloning the repo
If you have a high-bandwidth connection, I recommend starting with a fresh clone
of the repo.
git clone https://github.com/google/WebFundamentals.git
Getting set up
The new DevSite infrastructure simplifies the dependencies a lot. Ensure
you have Node 10 or greater, and the
AppEngine SDK for Python
already installed.
- Run
npm install
(needed for the build process)
Build the auto-generated files
Some files (contributors includes, some pages for updates, showcases, etc.) are
automatically generated. The first time you clone the repo and run npm install
,
this is done for you. However, when you add a case study, update, etc., you'll
need to re-build those files using:
npm run build
Start Local Server
To view the site locally, just run:
npm start
Note: The first time you start the server, you may need to run
start-appengine.sh
and answer any prompts provided by dev_appserver.py
.
Update the code labs
To update the Code Labs, you'll need the
claat
tool and
access to the original Doc files. This will likely only work for Googlers.
- Download the
claat
tool and place it in your tools
directory
- Run
tools/update-codelabs.sh
- Check the latest changes into GitHub
Start the development server
- Run
npm start
Test your changes before submitting a PR
Please run your changes through npm test before submitting a PR. The test
looks for things that may cause issues with DevSite and tries to keep our
content consistent. It's part of the deployment process, so PRs will fail
if there are any errors! To run:
npm test