This repository contains the source files for Braze Docs, which hosts all user, developer, partner, and API documentation for the Braze customer engagement platform.
If you'd like to help improve the docs, you can:
- Submit a request or ask in #ask-docs on Slack
- Contribute (see docs/contributing/README.md for the full handbook)
Tip
For a full walkthrough, see Contributing to Braze Docs.
To build the docs locally, you'll need Ruby version 3.3.0 installed. In the terminal, open braze-docs and check for Ruby version 3.3.0.
cd ~/braze-docs
ruby --versionIf this version isn't installed, use a supported version manager to install it. For example, using rbenv:
rbenv install 3.3.0If you have multiple versions of Node.js installed, use asdf for version management.
brew install asdfNext, install project dependencies.
bundle install && asdf installTo start your local docs server on localhost http://127.0.0.1:5006, run the following command. To stop your server, reopen the terminal and press Control + C.
# for 'en' language:
rake
# for other languages:
rake de
rake es
rake fr
rake ja
rake ko
rake pt_br
# Partner hub tiles (Sanity) fetch automatically when `partner_api: true` in `_config.yml`.
# To skip that network call (offline / faster builds): PARTNER_API=false rake
# to render content in '{% markdown_embed %}' tags (e.g. Developer Guide changelogs):
MARKDOWN_API=true rakeNote
Prepending MARKDOWN_API=true to your rake command lets you preview content within a {% markdown_embed %} tag, such as the content on the Developer Guide: Changelogs page. Technology Partners hub tiles load from Sanity whenever partner_api is enabled in _config.yml (the default). Use PARTNER_API=false if you need to skip that network request locally.
Jekyll spends a lot of I/O copying static assets (for example images under assets/). For day-to-day work you can:
- Serve:
rakealready uses--incrementaland_incremental_config.yml(keep_filesforassets). Restarting the server no longer deletes.jekyll-metadataby default, so incremental state is preserved. RunJEKYLL_CLEAN=1 rakewhen you need a full clean rebuild. - One-off build:
bundle exec rake docs_en:build_fast(English) orbundle exec rake "lang:build_fast[fr]"(other locales). Alternatively,JEKYLL_FAST=1 bundle exec rake docs_en:buildenables the same merged config and--incrementalfor the standard build task.
bdocs is a wrapper script located in the root of this repository that helps you replace links, generate redirect URLs, create deployment descriptions, and more. For an in-depth walkthrough, see bdocs wrapper. To get started quickly, run the following command to see a list of available commands:
./bdocs
Braze Docs is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. For more information, see LICENSE.
At Braze, we expect respectful behavior from both administrators and contributors. For more information, see CODE_OF_CONDUCT.md.
