Skip to content

everydeveloper/devlabs

 
 

Repository files navigation

Snowflake Devlabs

Demo

What are Devlabs?

Devlabs are interactive tutorials and self-serve demos written in markdown syntax. Devlabs provide a unique step-by-step reading experience and automatically saves tutorial progress for readers. These tutorials are published at developers.snowflake.com/devlabs

You can submit your own devlab to be published on Snowflake's website by submitting a pull request to this repo. This repository contains all the tools and documentation you’ll need for building, writing, and submitting your own devlabs!

What's special about the Devlab format?

  • Powerful and flexible authoring flow in Markdown text
  • Ability to produce interactive web or markdown tutorials without writing any code
  • Easy interactive previewing
  • Usage monitoring via Google Analytics
  • Support for multiple target environments or events (conferences, kiosk, web, offline, etc.)
  • Support for anonymous use - ideal for public computers at developer events
  • Looks great, with a responsive web implementation
  • Remembers where the student left off when returning to a codelab
  • Mobile friendly user experience

How to get started

  1. nodejs & npm (Install NodeJS & npm)
  2. install gulp-cli:
npm install --global gulp-cli
  1. install Golang (Install Go)
  2. add /usr/local/go/bin to the PATH environment variable. You can do this by adding the following line to your profile (.bashrc or .zshrc):
export PATH=$PATH:/usr/local/go/bin

Note: Changes made to a profile file may not apply until the next time you log into your computer. To apply the changes immediately, just run the shell commands directly or execute them from the profile using a command such as source $HOME/.zshrc.

  1. install claat:
go get github.com/googlecodelabs/tools/claat
  1. navigate to the site directory:
cd site/
  1. install dependencies:
npm install
  1. run the site locally
gulp serve

Congratulations! You now have the DevLabs landing page running.

Now lets add our first devlab:

  1. Terminate the running gulp server with ctrl C and navigate to the devlab directory
cd site/devlabs

The devlabs directory is where to store all devlab content, written in markdown.

  1. Use the claat tool to convert the markdown file to HTML
claat export sample.md

You should see ok sample as the response. This means claat has successfully converted your .md file to HTML and created a new directory named sample.

  1. Now lets run our server again, this time specifying our devlabs directory of content
gulp serve --codelabs-dir=devlabs

You can now navigate to the landing page in your browser to see your new codelab!

You can use the sample devlab as a template, just change the name of the file and the id listed in the header.

Tips

How do I publish my Devlab to developers.snowflake.com?

  1. You will need to sign Snowflake's CLA
  2. Fork this repository
  3. Clone it to your local system
  4. Make a new branch
  5. Make your changes
  6. Push it back to your repo
  7. Open this repository on GitHub.com
  8. Click the Pull Request button to open a new pull request
  9. Snowflake will review and approve the submission

To learn more how to submit a pull request on GitHub in general, checkout github's official documentation.

About

No description, website, or topics provided.

Resources

License

Contributing

Stars

Watchers

Forks

Packages

No packages published

Languages

  • HTML 33.7%
  • Go 28.5%
  • JavaScript 23.7%
  • SCSS 10.8%
  • Starlark 2.9%
  • Makefile 0.2%
  • Shell 0.2%