Giter Club home page Giter Club logo

workshopaggregation's Introduction

Workshop Aggregation Script

Use the aggregateWorkshop.sh script in this repo to combine multiple gitbooks on IBM Developer gitbook account into a single gitbook.

About

This repo is two things

  1. It contains a template that is the contains all the files you need for a gitbook
  2. It contains a script aggregateWorkshop.sh that a) Reference other repos listed in agenda.md and pull them into a generated folder workshop/generatedContent b) Create a list of generated content links at the workshop/generatedContentLinks.md level which can be copied into the main part of the workshop

Steps - Create New Aggregate

  1. Fork the repo. Rename the repo to the name of your new aggregate workshop. This project provides the template and script to populate the content for your new workshop

  2. Gather the links to the repos you want to pull in gitbooks into agenda.txt TODO add support for variants

  3. Create a new space on gitbook: https://ibm-developer.gitbook.io/ TODO automate using gitbook CLI

  4. Manually edit workshop/README.md and workshop/Summary.md and other workshop files as needed to customize experience for this end-to-end workshop.

Steps - Populate Aggregate (first time or update)

This will wipe out everything in the generatedContent folder and repopulate based on links in agenda.txt. It won't touch any other files in the workshop

./aggregateWorkshop.sh

The standard gitbook structure is so:

.gitbook.yaml (tells GitBook to only read the stuff in 'workshop')
.travis.yaml (runs markdownlint by default)
README.md (only used for GitHub.com)
- data (any data (CSV, JSON, etc files) to be used)
- notebooks (any Jupyter notebooks can go here)
- src (any application source code can go here)
- workshop (this is where the workshop is documented)
|_ .gitbook (images should go here)
|_ <folder-n> (these are exercises for the workshop that you manually add)
  |_README.md (the steps for the exercise, in Markdown)
|_ README.md (this will appear on the gitbook home page)
|_ SUMMARY.md (this dictates the Table of Contents)

In additional to those files, the script adds to the workshop folder:

|_ generatedContent (generated content DO NOT EDIT)
  |_<folder-n> (these are exercises for the workshop that are added by the script)
|_ generatedLinks.md

Markdown lint tool

Install the Markdown lint tool,

$ npm install -g markdownlint-cli

To use markdownlint, run the following command,

$ markdownlint workshop -c ".markdownlint.json" -o mdl-results.md

Build Gitbook

Install the gitbook-cli,

$ npm install -g gitbook-cli

To build the Gitbook files into the _book sub-directory with the gitbook-cli, run the following command,

$ gitbook build ./workshop

Serve the Gitbook files locally with the following command,

$ gitbook serve ./workshop

workshopaggregation's People

Contributors

jzaccone avatar remkohdev avatar developerworksjp avatar mlangbehn avatar jkomg avatar stevemar avatar imgbotapp avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.