Docsmobile is a documentation system and syntax shell that is built upon NextJS, EUI and MDX. It can be used either with local documentation within the /docs
folder, or you can consume MDX pages from separate repos.
Some things have changed recently so let's chat!
Docsmobile is the engine for our documentation. An engine can't do much without being hooked up to something that makes it go--so for now I've been doing most of my docsmobile development using doc-site as my test site. You'll see info on how to get started in the root README. For the most part, you'll do two things:
- Initialize with
yarn init-docs
which runsdocsmobile init --symlink
under the hood. This allows docsmobile to be set up with symlinks to docsmobile/template so your changes will immediately go through. - Then develop with
yarn dev
(which runsdocsmobile dev
). Note that if it isn't a component change (e.g. style or text change) you'll likely have to refresh the page once your code is done compiling.
To understand how the CI picks up content from outside repos, as well as how to manually deploy the docs, please check https://docs.elastic.dev/docs/ci
Bare minimum, docsmobile needs a content.js with nav and sources config to run. See the docsmobile.config.js in doc-site for a living example. While the search engine config is optional, not providing it will remove all search related UI.
Even if you add more docs to your sources key of content.js/content-dev.js, you won't see the pages appear on the home page or in the side nav without either including the new pages into an existing nav or adding a new navigation unit. If a source has already relocated its .docnav.json
files into it, then they'll compile as expected.
You'll have two source configs--content.js is always used in the production build and mostly shouldn't be touched unless you're intentionally adding a new source. For local development we always use content-dev.js. You can read more on the syntax used in these json blobs in Docs Setup: Add MDX content sources.