How to create a Demo Center using ChatGPT

Andy Binkley
November 2, 2023

Building Demo Centers in Tourial is real easy. But, with this prompt we've developed for ChatGPT-4, it's even easier to plan your Demo Center's topics and content tracks. Using this prompt, ChatGPT-4 will actually crawl your website and give you a tailored set of discovery questions and suggested content topics that you can then use to create a personalized demo center for your brand — it's pretty sweet.

Here's the step-by-step: 

  1. Login to chat on OpenAI
  2. Select GPT-4 and select browse with Bing (GPT-4 is a paid feature) 
  3. Copy the entire prompt below starting at "export" and ending with "unless prompted"
  4. Paste the prompt into ChatGPT (be sure to update the company name and website at the very bottom)

*Tip: If you don't want to pay for ChatGPT-4, try this same prompt in 3.5 — we've seen it work for some! Just depends on whether their database recognizes your brand.

export interface IDemoCenter {  _id?: string;  accountId?: string;  slug: string;  name: string;  status: TourialStatus;  logo?: string;  logoUrl?: string;  items: DCItem[];  tags: DCTag[];  modules: DCModule[];  config: DCConfig;  styles: DCStyles;  deletedAt?: number;  updatedAt?: Date;  createdAt?: Date;  editedAt?: Date;  htmlMetadata?: HtmlMetadata[];}export interface DCItem {  id: string;  type: DCItemType;  title: string;  description?: string;  thumbnail: string;  url?: string;  duration?: number;  tags: string[];  uuid: string;}export interface DCTag {  id: string;  label: string;}export interface DCModule {  id: string;  title: string;  prompt: string;  description?: string;  slug: string;  items: string[];  tracks: DCTrack[];  type: DCModuleType;  isGated?: boolean;}export interface DCTrack {  id: string;  title: string;  slug: string;  img?: string;  items: string[];}export interface DCConfig {  theme: DCThemeType;  header: DCHeaderConfig;  body: DCBodyConfig;  welcome: DCWelcomeConfig;  itemDetails: DCItemDetailsConfig;  moduleDetails: DCModuleDetailsConfig;  share: DCShareConfig;  quickView: DCQuickViewConfig;  itemCard: DCItemCardConfig;  tag: DCTagConfig;  badge: DCBadgeConfig;  sidebar: DCSidebarConfig;  cardButton: DCCardButtonConfig;  gallerySection: DCGallerySectionConfig;  controls: DCControlsConfig;  gatingFormId?: string;}export interface DCStyles {  highlightColor: string;  gradientColor1: string;  gradientColor2: string;  gradientPercent: number;  cardBorderRadius: number;  containerBorderRadius: number;  buttonBorderRadius: number;  largeButtonBorderRadius: number;}export interface DCHeaderConfig {  cta: DCButtonConfig;  demoButton: DCButtonConfig;  browseButton: DCButtonConfig;}export interface DCItemDetailsConfig {  titleTextStyle: DCTextStyle;  itemTypeTextStyle: DCTextStyle;  separatorColor: string;}export interface DCModuleDetailsConfig {  backgroundColor: string;  borderRadius: number;  titleTextStyle: DCTextStyle;  promptTextStyle: DCTextStyle;  descriptionTextStyle: DCTextStyle;  continueButton: DCButtonConfig;  skipButton: DCButtonConfig;}export interface DCShareConfig {  backgroundColor: string;  copyButtonColor: string;  inputStyle: DCInputStyle;  title: DCStyledText;  description: DCStyledText;}export interface DCWelcomeConfig {  isEnabled: boolean;  title: DCStyledText;  message: DCStyledText;  featuredContentId: string;  showFeaturedContent: boolean;  demoButton: DCButtonConfig;  browseButton: DCButtonConfig;}export interface DCQuickViewConfig {  closeButton: DCStyledText;}export interface DCButtonConfig {  type?: DCButtonType;  isEnabled: boolean;  text: string;  icon?: DCIconType;  iconPlacement?: DCButtonIconPlacement;  action: DCButtonAction;  url?: string;  style: DCButtonStyle;  formId?: string;}export interface DCBodyConfig {  backgroundColor: string;  backgroundImage: string;}export interface DCItemCardConfig {  size: ShirtSize;  borderColor: string;  borderRadius: number;  activeBorderColor: string;  backgroundColor: string;  shadow: boolean;  activeShadow: boolean;  label: DCTextStyle;  title: DCTextStyle;  description: DCTextStyle;  infoPlacement: DCCardInfoPlacement;  viewButton: DCButtonConfig;}export interface DCTagConfig {  activeBackgroundColor: string;  activeBorderColor: string;  text: DCTextStyle;  borderRadius: number;}export interface DCBadgeConfig {  text: DCTextStyle;  defaultBackgroundColor: string;}export interface DCSidebarConfig {  borderRadius: number;  activeModuleShadow: boolean;  activeIconColor: string;  inactiveIconColor: string;  moduleTitleStyle: DCTextStyle;  emptyStateTextStyle: DCTextStyle;  itemTitleStyle: DCTextStyle;  itemTypeStyle: DCTextStyle;  shareButton: DCButtonConfig;}export interface DCControlsConfig {  labelStyle: DCTextStyle;  nextStyle: DCTextStyle;}export interface DCCardButtonConfig {  borderRadius: number;  activeColor: string;  shadow: boolean;  labelStyle: DCTextStyle;}export interface DCGallerySectionConfig {  isEnabled: boolean;  borderRadius: number;  titleStyle: DCTextStyle;  toggleStyle: DCTextStyle;}export interface DCTextStyle {  font: string;  size: ShirtSize;  color: string;  style: TextStyle;  align: TextAlign;  activeColor?: string;  isUppercase?: boolean;}export interface DCInputStyle {  color: string;  backgroundColor: string;  borderColor: string;  font: string;  size: ShirtSize;}export interface DCButtonStyle extends DCTextStyle {  backgroundColor: string;  backgroundColor2?: string;  gradientPercent?: number;  borderColor: string;  borderRadius: number;  hoverColor?: string;}export interface DCStyledText {  text: string;  style: DCTextStyle;}export interface DCGradient {  color1: string;  color2: string;  percent: number;}export interface DCTheme {  textMain: string;  textSecondary: string;  neutralPrimary: string;  neutralTranslucentColor: string;  neutralTranslucentOpacity: number;  neutralSecondary: string;  shadow: string;}export interface DCRouteParams {  slug: string;  module: string;  id: string;}export interface DCTrackSelection {  module: string;  tracks: string[];}export interface DCLocalStorage {  viewedItems: string[];}// builderexport interface DCBuilderRouteParams {  id: string;  moduleId: string;}export interface DCBuilderWarning {  key: string;  message: string;}export const DC_SETTINGS_KEY = "demoCenter";export const DC_ROOT = "dc";export const DC_LIVE_PREVIEW_ROOT = "dc-preview";export const DC_DEFAULT_MODULE_NAME = "New Module";export enum DCItemType {  TOUR = "TOUR",  VIDEO = "VIDEO",  YOUTUBE = "YOUTUBE",  VIMEO = "VIMEO",  LOOM = "LOOM",  WISTIA = "WISTIA",  VIDYARD = "VIDYARD",  VOCALVIDEO = "VOCALVIDEO",  PDF = "DOCUMENT",  HTML = "HTML",  IMAGE = "IMAGE",  DOM_TOUR = "DOM_TOUR",}export enum DCModuleType {  SINGLE = "SINGLE",  MULTIPLE = "MULTIPLE",  BOOLEAN = "BOOLEAN",  NO_PROMPT = "NO_PROMPT",  SCALE = "SCALE",}export enum DCModuleStatus {  AWAITING_SELECTION = "AWAITING_SELECTION",  IN_PROGRESS = "IN_PROGRESS",  COMPLETE = "COMPLETE",  SKIPPED = "SKIPPED",  REJECTED = "REJECTED",  LOCKED = "LOCKED",}export enum DCCardInfoPlacement {  INSIDE = "INSIDE",  OUTSIDE = "OUTSIDE",}export enum DCButtonAction {  LINK = "LINK",  SHARE = "SHARE",  COPY = "COPY",  VIEW = "VIEW",  LIBRARY = "LIBRARY",  CALENDLY_SCHEDULER = "CALENDLY_SCHEDULER",  HUBSPOT_SCHEDULER = "HUBSPOT_SCHEDULER",  SKIP = "SKIP",  FORM = "FORM",  LOGO = "LOGO",  CONFIRM_SELECTION = "CONFIRM_SELECTION",  SELF_GUIDED_DEMO = "SELF_GUIDED_DEMO",  PREVIOUS = "PREVIOUS",  NEXT = "NEXT",  COPY_MOBILE_LINK = "COPY_MOBILE_LINK",}export enum DCButtonType {  DEFAULT = "DEFAULT",  LARGE = "LARGE",  BORDERLESS = "BORDERLESS",}export enum DCButtonIconPlacement {  LEFT = "LEFT",  RIGHT = "RIGHT",}export enum DCIconType {  DOWN_CHEVRON = "DOWN_CHEVRON",  DOWN_CHEVRON_CIRCLED = "DOWN_CHEVRON_CIRCLED",  RIGHT_ARROW = "RIGHT_ARROW",  LEFT_ARROW = "LEFT_ARROW",  BACK_ARROW = "BACK_ARROW",  SHARE = "SHARE",  COLLAPSE = "COLLAPSE",  DOCUMENT = "DOCUMENT",  TOUR = "TOUR",  VIDEO = "VIDEO",  CHECKMARK = "CHECKMARK",  LIBRARY = "LIBRARY",  EMPTY_ITEM = "EMPTY_ITEM",  ACTIVE_ITEM = "ACTIVE_ITEM",  BOOKMARK = "BOOKMARK",  COPY = "COPY",  CHECK_CIRCLE = "CHECK_CIRCLE",  THUMBS_UP = "THUMBS_UP",  THUMBS_DOWN = "THUMBS_DOWN",  PADLOCK = "PADLOCK",  POINTER = "POINTER",  DRAG_HANDLE = "DRAG_HANDLE",  PIN = "PIN",  HAND_WAVE = "HAND_WAVE",  NAVBAR = "NAVBAR",  PLUS = "PLUS",  PLUS_LARGE = "PLUS_LARGE",  IMAGE = "IMAGE",  MEGAPHONE = "MEGAPHONE",  NETWORK = "NETWORK",  ELLIPSES = "ELLIPSES",  PROMPT = "PROMPT",  ADD_PROMPT = "ADD_PROMPT",  TEXT = "TEXT",  ADD_TEXT = "ADD_TEXT",  PENCIL = "PENCIL",  TRASH = "TRASH",  UPLOAD = "UPLOAD",  ADD_IMAGE = "ADD_IMAGE",  CHECKLIST = "CHECKLIST",  YES_NO = "YES_NO",  MULTI_SELECT = "MULTI_SELECT",  SINGLE_SELECT = "SINGLE_SELECT",  NO_PROMPT = "NO_PROMPT",  SWATCHES = "SWATCHES",  MOON = "MOON",  SUN = "SUN",  CIRCLE_IN_PROGRESS = "CIRCLE_IN_PROGRESS",  FORWARD_ARROW = "FORWARD_ARROW",  MODULE_COMPLETE = "MODULE_COMPLETE",  SPEEDOMETER = "SPEEDOMETER",}export enum DCBadgeType {  DURATION = "DURATION",}export enum DCMode {  IN_APP_PREVIEW = "IN_APP_PREVIEW",  LIVE_PREVIEW = "LIVE_PREVIEW",  LIVE = "LIVE",}export enum DCThemeType {  LIGHT = "Light",  DARK = "Dark",}export enum DCView {  WELCOME = "welcome",  ITEM = "item",  GALLERY_VIEW = "gallery",  MODULE = "module",}export enum DCBuilderMode {  MANAGE = "manage",  STYLES = "styles",  OVERVIEW = "overview",  PREVIEW = "preview",}export enum DCCMPageType {  INTRO_PAGE = "Intro Page",  NAVIGATION = "Navigation",  WELCOME = "welcome",  GATED_MODULES = "Gated topics",}

Objective: Develop a set of 8 interactive modules for customer using the DemoCenter platform. These modules will serve as marketing tools to engage visitors on customer's website, allowing them to explore and understand the offerings better.Background:DemoCenter is a web platform engineered to facilitate SaaS companies in marketing their products interactively. Users navigate through various modules, respond to prompts, make selections, and receive tailored content based on their interactions.Module Structure:Each module comprises a title, a prompt, a ModuleType, selections, and suggested content. Below is an illustrative example:Module: Time & AttendancePrompt: How do you currently track time and attendance?ModuleType: SINGLESelections:- Manual tracking  Suggested Content: Benefits of transitioning to digital time tracking.- Digital tracking  Suggested Content: Advanced features for digital time tracking.- Not tracking  Suggested Content: Importance and benefits of time tracking.Submission:Provide the module set in plain text, formatted similarly to the example module above.Module Creation Task:Create 8 distinctive modules reflecting Customer's offerings and market positioning. Utilize a variety of ModuleTypes (SINGLE, MULTIPLE, BOOLEAN, SCALE) to engage users in different ways. Ensure the language and style resonate with the Customer's brand and target audience.The created modules will be reviewed for alignment with the customer's brand, interactive engagement, and the clarity of information provided.


First browse their site at [REPLACE WITH YOUR WEBSITE] then immediately perform task of module creation. Create the modules based on information available to best of your ability after first browse. Do not provide any additional text outside of modules unless prompted.