Pen Settings

HTML

CSS

CSS Base

Vendor Prefixing

Add External Stylesheets/Pens

Any URL's added here will be added as <link>s in order, and before the CSS in the editor. If you link to another Pen, it will include the CSS from that Pen. If the preprocessor matches, it will attempt to combine them before processing.

+ add another resource

JavaScript

Babel is required to process package imports. If you need a different preprocessor remove all packages first.

Add External Scripts/Pens

Any URL's added here will be added as <script>s in order, and run before the JavaScript in the editor. You can use the URL of any other Pen and it will include the JavaScript from that Pen.

+ add another resource

Behavior

Save Automatically?

If active, Pens will autosave every 30 seconds after being saved once.

Auto-Updating Preview

If enabled, the preview panel updates automatically as you code. If disabled, use the "Run" button to update.

Format on Save

If enabled, your code will be formatted when you actively save your Pen. Note: your code becomes un-folded during formatting.

Editor Settings

Code Indentation

Want to change your Syntax Highlighting theme, Fonts and more?

Visit your global Editor Settings.

HTML

              
                <script src="https://cdn.jsdelivr.net/npm/guidechimp@1/dist/guidechimp.min.js"></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/guidechimp@1/dist/guidechimp.min.css">

<H1>GuideChimp Tour Example</H1>
<H2>Internationalization / i18n</H2>
<div class="tour-container">
  Choose tour language:&nbsp;
  <select id="tour-language">
   <option value="en">English</option>
   <option value="de">German</option>
   <option value="by">Bavarian (fallback to English)</option>
  </select>
  <H3>NetLicensing <a href="https://netlicensing.io/licensing-models/" target="_blank">Licensing Models</a></H3>
  <div id="try-and-buy" class="tour-section">Try & Buy</div>
  <div id="subscription" class="tour-section">Subscription</div>
  <div id="pricing-table" class="tour-section">Pricing Table</div>
  <div id="multi-feature" class="tour-section">Multi-Feature</div>
  <div id="node-locked" class="tour-section">Node-Locked</div>
  <div id="pay-per-use" class="tour-section">Pay-per-Use</div>  
  <div>
    <button id="startTour" class="start-tour">Start Tour</button>
  </div>
</div>
              
            
!

CSS

              
                body {
  font-family: Roboto;
}
h1,h2,h3 {
  text-align: center;
}
.tour-container {
  background: #FFFAF0;
  width: 800px;
  margin: 20px auto;
  padding: 15px 20px 30px 20px;
  text-align: center;
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2);
}
.tour-section {
  display: inline-block;
  border-radius: 3px;
  border: 1px solid grey;
  padding: 20px;
  margin-bottom: 5px;
  width: 200px;
  color: white;
}
#try-and-buy { background: #E14817; }
#subscription { background: #F08B53; }
#pricing-table { background: #7B2A10; }
#multi-feature { background: #AB6543; }
#node-locked { background: #87888A; }
#pay-per-use { background: #F2951C; }
.start-tour {
  color: white;
  font-size: 20px;
  border-radius: 3px;
  padding: 10px 20px;
  border: 1px solid #87888A;
  background: #7B2A10;
  display: inline-block;
  margin-top: 20px;
}
.tour-button {
  color: white;
  font-size: 16px;
  border-radius: 3px;
  padding: 5px 20px;
  border: 1px solid #87888A;
  background: #7B2A10;
  display: inline-block;
  margin-left: 10px;
}
              
            
!

JS

              
                var tour_en = [
    {
        element: '#try-and-buy',
        title: 'Try & Buy',
        description: 'This licensing model is useful in case you want to distribute secure trial or demo version of your product. Trial licenses are granted for a short time and allow customers to try the product before buying it.',
        buttons: [
            {
                title: 'See more',
                class: 'tour-button',
                onClick: function () {
                    alert("Step button click");
                }
            }
        ]
    },
    {
        element: '#subscription',
        title: 'Subscription',
        description: 'Subscription licensing model allows user to enable product for a specific period of time, with the possibility of the subscription renewal.',
        buttons: [
            {
                title: 'See more',
                class: 'tour-button',
                onClick: function () {
                    alert("Step button click");
                }
            }
        ]
    },
    {
        element: '#pricing-table',
        title: 'Pricing Table',
        description: 'Price and package in minutes without having to re-code or re-engineer back-office systems.',
        buttons: [
            {
                title: 'See more',
                class: 'tour-button',
                onClick: function () {
                    alert("Step button click");
                }
            }
        ]
    },
    {
        element: '#multi-feature',
        title: 'Multi Feature',
        description: 'This licensing model allows enabling or disabling product features on the users needs and budget. It may be used to create an upgrade path from a “lite” version to “standard,” “pro,” “enterprise” etc. versions without modifying the software or uninstalling the existing version.',
        buttons: [
            {
                title: 'See more',
                class: 'tour-button',
                onClick: function () {
                    alert("Step button click");
                }
            }
        ]
    },
    {
        element: '#node-locked',
        title: 'Node-Locked',
        description: 'Software is licensed for use only on one or more named computer systems. Usually, CPU serial number verification is used to enforce this type of license.',
        buttons: [
            {
                title: 'See more',
                class: 'tour-button',
                onClick: function () {
                    alert("Step button click");
                }
            }
        ]
    },
    {
        element: '#pay-per-use',
        title: 'Pay-per-Use',
        description: 'Limits the quantity of the license uses, in addition to the license validity. License fees are based on the actual usage.',
        buttons: [
            {
                title: 'See more',
                class: 'tour-button',
                onClick: function () {
                    alert("Step button click");
                }
            }
        ]
    },
];

var tour_de = [
    {
        element: '#try-and-buy',
        title: 'Try & Buy',
        description: 'Dieses Lizenzmodell ist nützlich, wenn Sie eine Test- oder Demoversion Ihres Produkts anbieten möchten. Testlizenzen werden für kurze Zeit erteilt und ermöglichen den Kunden, das Produkt vor dem Kauf zu testen.',
        buttons: [
            {
                title: 'Mehr sehen',
                class: 'tour-button',
                onClick: function () {
                    alert("Step button click");
                }
            }
        ]
    },
    {
        element: '#subscription',
        title: 'Subscription',
        description: 'Mit dem ABO-Lizenzmodell kann der Benutzer das Produkt für einen bestimmten Zeitraum aktivieren und die Abonnementverlängerung durchführen.',
        buttons: [
            {
                title: 'Mehr sehen',
                class: 'tour-button',
                onClick: function () {
                    alert("Step button click");
                }
            }
        ]
    },
    {
        element: '#pricing-table',
        title: 'Pricing Table',
        description: 'Definiere Preise und paketiere in Minuten, ohne dass Back-Office-Systeme überarbeitet werden müssen.',
        buttons: [
            {
                title: 'Mehr sehen',
                class: 'tour-button',
                onClick: function () {
                    alert("Step button click");
                }
            }
        ]
    },
    {
        element: '#multi-feature',
        title: 'Multi Feature',
        description: 'Dieses Lizenzmodell ermöglicht das Aktivieren oder Deaktivieren von Produktfunktionen entsprechend den Anforderungen und dem Budget des Benutzers. Es kann verwendet werden, um einen Upgrade-Pfad von einer "Lite" -Version zu "Standard" -, "Pro" -, "Enterprise" -Versionen usw. zu erstellen, ohne die Software zu ändern.',
        buttons: [
            {
                title: 'Mehr sehen',
                class: 'tour-button',
                onClick: function () {
                    alert("Step button click");
                }
            }
        ]
    },
    {
        element: '#node-locked',
        title: 'Node-Locked',
        description: 'Mit Node-Locked Lizenzmodel Software ist nur für die Verwendung auf einem oder mehreren benannten Computersystemen lizenziert. Normalerweise wird die Überprüfung der CPU-Seriennummer verwendet, um diese Art von Lizenz durchzusetzen.',
        buttons: [
            {
                title: 'Mehr sehen',
                class: 'tour-button',
                onClick: function () {
                    alert("Step button click");
                }
            }
        ]
    },
    {
        element: '#pay-per-use',
        title: 'Pay-per-Use',
        description: 'Pay-per-Use Lizenzmodel begrenzt die Menge der Lizenzverwendungen zusätzlich zur Lizenzgültigkeit. Die Lizenzgebühren richten sich nach der tatsächlichen Nutzung.',
        buttons: [
            {
                title: 'Mehr sehen',
                class: 'tour-button',
                onClick: function () {
                    alert("Step button click");
                }
            }
        ]
    },
];

document.getElementById('startTour').onclick = function () {
    var tourLang = document.getElementById("tour-language").value;

    switch(tourLang) {
    case 'en':
      tour = tour_en;
      break;
    case 'de':
      tour = tour_de;
      break;
    default:
      tour = tour_en;
    }
  
    var guideChimp = new GuideChimp(tour);
    guideChimp.start();
};

              
            
!
999px

Console