{"id":20816353,"url":"https://github.com/riptano/docs-ui","last_synced_at":"2026-04-01T18:08:16.497Z","repository":{"id":191938501,"uuid":"685614324","full_name":"riptano/docs-ui","owner":"riptano","description":"The UI and theme for DataStax Docs.","archived":false,"fork":false,"pushed_at":"2026-03-17T17:45:53.000Z","size":7726,"stargazers_count":2,"open_issues_count":41,"forks_count":0,"subscribers_count":38,"default_branch":"main","last_synced_at":"2026-03-18T07:11:19.137Z","etag":null,"topics":["antora","documentation","ui-bundle","ui-components"],"latest_commit_sha":null,"homepage":"https://riptano.github.io/docs-ui/","language":"CSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/riptano.png","metadata":{"files":{"readme":"README.adoc","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-08-31T16:13:18.000Z","updated_at":"2026-03-17T17:45:56.000Z","dependencies_parsed_at":"2023-10-04T04:10:51.153Z","dependency_job_id":"63f18d56-aced-4e1c-a212-5f353a8b4e70","html_url":"https://github.com/riptano/docs-ui","commit_stats":null,"previous_names":["riptano/docs-ui"],"tags_count":78,"template":false,"template_full_name":null,"purl":"pkg:github/riptano/docs-ui","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/riptano%2Fdocs-ui","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/riptano%2Fdocs-ui/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/riptano%2Fdocs-ui/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/riptano%2Fdocs-ui/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/riptano","download_url":"https://codeload.github.com/riptano/docs-ui/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/riptano%2Fdocs-ui/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31290767,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-01T13:12:26.723Z","status":"ssl_error","status_checked_at":"2026-04-01T13:12:25.102Z","response_time":53,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["antora","documentation","ui-bundle","ui-components"],"created_at":"2024-11-17T21:29:56.840Z","updated_at":"2026-04-01T18:08:16.466Z","avatar_url":"https://github.com/riptano.png","language":"CSS","funding_links":[],"categories":[],"sub_categories":[],"readme":"= DataStax Docs UI\n// Variables:\n:current-release:\n// Settings:\n:!example-caption:\n:experimental:\n:hide-uri-scheme:\n:toc: macro\nifdef::env-github[]\n:icons: font\n:toc-title: Contents\n:tip-caption: :bulb:\n:note-caption: :information_source:\n:important-caption: :heavy_exclamation_mark:\n:caution-caption: :fire:\n:warning-caption: :warning:\n:badges:\nendif::[]\n// Project URLs:\n:url-project: https://github.com/riptano/docs-ui\n:url-ui-preview: https://d5rxiv0do0q3v.cloudfront.net/docs-ui-drafts/main/index.html\n:url-ui-bundle-latest: {url-project}/releases/latest\n// :url-ci-pipelines: {url-project}/pipelines\n// :img-ci-status: {url-project}/badges/master/pipeline.svg\n:url-docs-home: https://github.com/riptano/docs-home\n:url-datastax: https://datastax.com\n:url-datastax-docs: https://docs.datastax.com\n:url-datastax-docs-repo: https://github.com/riptano/datastax-docs-site\n:url-coppi: https://coppi.aws.dsinternal.org\n:url-docs-preview: http://docs-preview.datastax.com\n:url-tailwind-readme: src/css/README.adoc\n// External URLs:\n:url-antora: https://antora.org\n:url-antora-docs: https://docs.antora.org\n:url-antora-ui-docs: https://docs.antora.org/antora-ui-default/\n:url-antora-default-ui: https://gitlab.com/antora/antora-ui-default\n:url-git: https://git-scm.com\n:url-git-dl: {url-git}/downloads\n:url-gulp: http://gulpjs.com\n:url-opendevise: https://opendevise.com\n:url-nodejs: https://nodejs.org\n:url-nvm: https://github.com/nvm-sh/nvm\n:url-nvm-install: {url-nvm}#installing-and-updating\n:url-source-maps: https://developer.mozilla.org/en-US/docs/Tools/Debugger/How_to/Use_a_source_map\n:url-create-release: https://docs.github.com/en/repositories/releasing-projects-on-github/managing-releases-in-a-repository#creating-a-release\n\nifdef::badges[]\nimage:https://img.shields.io/github/v/release/riptano/docs-ui?label=latest%20release\u0026labelColor=%23232324\u0026color=%237724aa[\"Latest UI bundle release (GitHub)\", link={url-ui-bundle-latest}]\nimage:https://img.shields.io/badge/Preview-%237724aa[\"Latest UI preview (GitHub Pages)\", link={url-ui-preview}]\nendif::[]\n\nThis project is used to develop and distribute the UI template for {url-datastax-docs}.\nIt is a fork of the {url-antora-default-ui}[Antora Default UI] that has been customized for our needs.\n\nThe repository itself produces a UI bundle that can be applied when generating a static documentation site using {url-antora}[Antora] -- in our case, we apply it when generating {url-datastax-docs-repo}[datastax-docs-site].\nThe UI bundle contains the HTML templates (layouts, partials, and helpers), CSS, JavaScript, fonts, and (site-wide) images.\nAs such, it provides both the visual theme and user interactions for the documentation site.\n\n* Latest UI preview: {url-ui-preview}\n\n* Latest UI bundle release: {url-ui-bundle-latest}\n\ntoc::[]\n\n[#use-the-ui]\n== Use the DataStax Docs UI\n\nTo use the DataStax Docs UI with Antora, add the following configuration to your playbook file:\n\n[source,yaml]\n----\nui:\n  bundle:\n    url: https://github.com/riptano/ui-docs/releases/latest/download/ui-bundle.zip\n    snapshot: true\n----\n\n[NOTE]\n====\nThe `snapshot` flag tells Antora to fetch the UI when the `--fetch` command-line flag is present.\nThis setting is required because updates to the UI bundle are pushed to the same URL.\nIf the URL were to be unique, this setting would not be required.\n====\n\nRead on to learn how to develop the UI.\n\n== Development quickstart\n\nThis section offers a basic tutorial to teach you how to set up the UI project, preview it locally, and bundle it for use with Antora.\nA more comprehensive tutorial can be found in the documentation at {url-antora-ui-docs}.\n\n[#prerequisites]\n=== Prerequisites\n\nTo preview and bundle the UI, you need the following software on your computer:\n\n* {url-git}[git] (command: `git`)\n* {url-nodejs}[Node.js] (commands: `node` and `npm`)\n* {url-gulp}[Gulp CLI] (command: `gulp`)\n\n==== git\n\nFirst, make sure you have git installed.\n\n[source,shell]\n----\ngit --version\n----\n\nIf not, {url-git-dl}[download and install] the git package for your system.\n\n==== Node.js\n\nNext, make sure that you have Node.js installed (which also provides npm).\n\n[source,shell]\n----\nnode --version\n----\n\nIf this command fails with an error, you don't have Node.js installed.\nIf the command doesn't report an https://nodejs.org/en[LTS version] of Node.js, it means you don't have a suitable version of Node.js installed.\n\nWhile you can install Node.js from the official packages, we strongly recommend that you use {url-nvm}[nvm] (Node Version Manager) to manage your Node.js installation(s).\nFollow the {url-nvm-install}[nvm installation instructions] to set up nvm on your machine.\n\nOnce you've installed nvm, open a new terminal and install Node.js LTS using the following command:\n\n[source,shell]\n----\nnvm install --lts\n----\n\nYou can switch to this version of Node.js at any time using the following command:\n\n[source,shell]\n----\nnvm use --lts\n----\n\nTo make Node.js LTS the default in new terminals, type:\n\n[source,shell]\n----\nnvm alias default node\n----\n\nNow that you have Node.js installed, you can proceed with installing the Gulp CLI.\n\n==== Gulp CLI\n\nYou'll need the Gulp command-line interface (CLI) to run the build.\nThe Gulp CLI package provides the `gulp` command which, in turn, executes the version of Gulp declared by the project.\n\nYou can install the Gulp CLI globally (which resolves to a location in your user directory if you're using nvm) using the following command:\n\n[source,shell]\n----\nnpm install -g gulp-cli\n----\n\nVerify the Gulp CLI is installed and on your PATH by running:\n\n[source,shell]\n----\ngulp --version\n----\n\nIf you prefer to install global packages using Yarn, run this command instead:\n\n[source,shell]\n----\nyarn global add gulp-cli\n----\n\nAlternately, you can use the `gulp` command that is installed by the project's dependencies.\n\n[source,shell]\n----\nnpx --offline gulp --version\n----\n\nNow that you have the prerequisites installed, you can fetch and build the UI project.\n\n=== Clone and initialize the UI project\n\nClone the default UI project using git:\n\n[source,shell,subs=attributes+]\n----\ngit clone {url-project} \u0026\u0026\ncd \"`basename $_`\"\n----\n\nThe example above clones the DataStax Docs UI project and then switches to the project folder on your filesystem.\nStay in this project folder when executing all subsequent commands.\n\nUse npm to install the project's dependencies inside the project.\nIn your terminal, execute the following command:\n\n[source,shell]\n----\nnpm install\n----\n\nThis command installs the dependencies listed in [.path]_package.json_ into the [.path]_node_modules/_ folder inside the project.\nThis folder does not get included in the UI bundle and should _not_ be committed to the source control repository.\n\n[TIP]\n====\nIf you prefer to install packages using Yarn, run this command instead:\n\n[source,shell]\n----\nyarn\n----\n====\n\n=== Preview the UI\n\nThe default UI project is configured to preview offline.\nThe files in the [.path]_preview-src/_ folder provide the sample content that allow you to see the UI in action.\nIn this folder, you'll primarily find pages written in AsciiDoc.\nThese pages provide a representative sample and kitchen sink of content from the real site.\n\nTo build the UI and preview it in a local web server, run the `preview` command:\n\n[source,shell]\n----\ngulp preview\n----\n\nYou'll see a URL listed in the output of this command:\n\n....\n[12:00:00] Starting server...\n[12:00:00] Server started http://localhost:5252\n[12:00:00] Running server\n....\n\nNavigate to this URL to preview the site locally.\n\nWhile this command is running, any changes you make to the source files will be instantly reflected in the browser.\nThis works by monitoring the project for changes, running the `preview:build` task if a change is detected, and sending the updates to the browser.\n\nPress kbd:[Ctrl+C] to stop the preview server and end the continuous build.\n\n[NOTE]\n====\nOpening or updating a pull request against the `main` branch triggers an automatic `gulp preview` deployment to GitHub Pages so that reviewers can view your latest changes without having to run the preview locally.\n====\n\n[#create-bundle]\n=== Package for use with Antora\n\nIf you need to package the UI so you can use it to generate the documentation site locally, run the following command:\n\n[source,shell]\n----\ngulp bundle\n----\n\nIf any errors are reported by lint, you'll need to fix them.\n\nWhen the command completes successfully, the UI bundle will be available at [.path]_build/ui-bundle.zip_.\nYou can point Antora at the local path to this bundle using the `--ui-bundle-url` command-line option or the https://docs.antora.org/antora/latest/playbook/ui-bundle-url/#url-key[`ui.bundle.url`] key in the site playbook.\n\nIf you have the preview running, and you want to bundle without causing the preview to be clobbered, use:\n\n[source,shell]\n----\ngulp bundle:pack\n----\n\nThe UI bundle will again be available at [.path]_build/ui-bundle.zip_.\n\n[NOTE]\n====\nUI bundles for the DataStax documentation site are automatically published via automation.\nSee \u003c\u003cautomatic-ui-release\u003e\u003e.\n====\n\n==== Source maps\n\nThe build consolidates all the CSS and client-side JavaScript into combined files, [.path]_site.css_ and [.path]_site.js_, respectively, in order to reduce the size of the bundle.\n{url-source-maps}[Source maps] correlate these combined files with their original sources.\n\nThis \"`source mapping`\" is accomplished by generating additional map files that make this association.\nThese map files sit adjacent to the combined files in the build folder.\nThe mapping they provide allows the debugger to present the original source rather than the obfuscated file, an essential tool for debugging.\n\nIn preview mode, source maps are enabled automatically, so there's nothing you have to do to make use of them.\nIf you need to include source maps in the bundle, you can do so by setting the `SOURCEMAPS` environment variable to `true` when you run the bundle command:\n\n[source,shell]\n----\nSOURCEMAPS=true gulp bundle\n----\n\nIn this case, the bundle will include the source maps, which can be used for debugging your production site.\n\n==== Using TailwindCSS\n\nThis project uses TailwindCSS.\nTo learn more see xref:{url-tailwind-readme}[TailwindCSS README].\n\n[#automatic-ui-release]\n== Automatic UI bundle release\n\nOnce you're satisfied with the changes you've made to the UI, you'll need to open a pull request to merge your changes into the `main` branch.\nUpon merging a pull request into `main`, the following automation occurs:\n\n. A new UI bundle is built using `gulp bundle` (linting also occurs during this step).\n\n. Assuming a successful build, a new tag is applied to the latest commit (incremented from the previous `prod-#` tag).\n\n. A new `prod-#` {url-project}/releases[release] is published with auto-generated release notes and the UI bundle release asset.\n\n[TIP]\n====\nIf you don't want your pull request to trigger an automatic release, e.g. you're only making updates to the README or `preview-src` files, you can skip the automation by including `[no-release]` in the commit message.\n====\n\nOnce the release is published, you can apply it by updating your Antora playbook to point to the new UI bundle URL.\nTo apply it to the DataStax documentation site, you'll need to update the playbook in the {url-datastax-docs-repo}[datastax-docs-site] repository.\n\n== Copyright and license\n\n=== Software\n\nOriginal Copyright (C) 2017-present {url-opendevise}[OpenDevise Inc.] and the {url-antora}[Antora Project].\n\nModifications and additions Copyright (C) 2023-present {url-datastax}[DataStax Inc.].\n\nUse of this software is granted under the terms of the https://www.mozilla.org/en-US/MPL/2.0/[Mozilla Public License Version 2.0] (MPL-2.0).\nSee link:LICENSE[] to find the full license text.\n\n=== Branding and design\n\nCopyright (C) {url-datastax}[DataStax Inc.] 2023-present.\nAll rights reserved.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Friptano%2Fdocs-ui","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Friptano%2Fdocs-ui","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Friptano%2Fdocs-ui/lists"}