80237e2e68
* Adds keyboard navigation to table of content links Signed-off-by: Aaron Stephanus <taoist.futility@pm.me> * Adds table of contents scroll and item focus management to the current page or the first toc item Signed-off-by: Aaron Stephanus <taoist.futility@pm.me> * Add space key capture to the toc expand/collapse arrows Signed-off-by: Aaron Stephanus <taoist.futility@pm.me> * Adds escape key support for expand/collapse of toc categories on the category label Signed-off-by: Aaron Stephanus <taoist.futility@pm.me> * Adds missing aria-role and aria-current attributes to toc affordances Signed-off-by: Aaron Stephanus <taoist.futility@pm.me> * Changes the function of the space bar to navigate to a toc parent category item instead of only expand its children Signed-off-by: Aaron Stephanus <taoist.futility@pm.me> * Adds arrow up/down key support to toc navigation Signed-off-by: Aaron Stephanus <taoist.futility@pm.me> * Adds missing accessibility attribute handling to the toc Signed-off-by: Aaron Stephanus <taoist.futility@pm.me> * Corrects arrow key handling of keyboard navigation of the toc Signed-off-by: Aaron Stephanus <taoist.futility@pm.me> * Adds padding to allow for the keyboard focus rectangle Signed-off-by: Aaron Stephanus <taoist.futility@pm.me> * Removes explicit tabindex values for the toc navigation Signed-off-by: Aaron Stephanus <taoist.futility@pm.me> * Removes auto focus of toc navigation items on page load; refactors navigation panel scroll into view logic to account for the sticky version selector Signed-off-by: Aaron Stephanus <taoist.futility@pm.me> * Removes keyboard focus trap on search field for the tab key Signed-off-by: Aaron Stephanus <taoist.futility@pm.me> * Unifies navigation item focus state for top level items and sub navigation items Signed-off-by: Aaron Stephanus <taoist.futility@pm.me> * Removes the expand/collapse navigation buttons from being tab focusable Signed-off-by: Aaron Stephanus <taoist.futility@pm.me> * Corrects navigation item spacing to permit visible focus rectangles Signed-off-by: Aaron Stephanus <taoist.futility@pm.me> * Implements full arrow navigation for the toc items according to the w3c tree view navigation pattern Signed-off-by: Aaron Stephanus <taoist.futility@pm.me> * Adds reference link to the w3c documentation about the tree view navigation to the arrow key toc navigation javascript Signed-off-by: Aaron Stephanus <taoist.futility@pm.me> * Account for the difference between the navigation panel height, and the viewport height when auto scrolling the toc item of the current page Signed-off-by: Aaron Stephanus <taoist.futility@pm.me> * Corrects keyboard navigation focus rectangles from being slightly obscured on the bottom Signed-off-by: Aaron Stephanus <taoist.futility@pm.me> * Corrects aria and role attributes according to the navigation tree pattern as opposed to the disclosure pattern Signed-off-by: Aaron Stephanus <taoist.futility@pm.me> * Corrects Jekyll include parameter assignment syntax error Signed-off-by: Aaron Stephanus <taoist.futility@pm.me> * Removes aria-expanded setting from the templates since it is unrealiable to determine without iterating through the entire tree to determine if one of its children of children is the current page Signed-off-by: Aaron Stephanus <taoist.futility@pm.me> * Moves setting of aria-expanded attributes to a runtime behavior, and corrects arrow left/right behavior on navigation tree items Signed-off-by: Aaron Stephanus <taoist.futility@pm.me> * Ensures unique navigation menu element ids; conditionally sets aira-owns and aria-current attributes Signed-off-by: Aaron Stephanus <taoist.futility@pm.me> * Removes JavaScript that is unused following refactoring tree view navigation; adds comments explaining choices Signed-off-by: Aaron Stephanus <taoist.futility@pm.me> --------- Signed-off-by: Aaron Stephanus <taoist.futility@pm.me> |
||
---|---|---|
.github | ||
_api-reference | ||
_benchmark | ||
_clients | ||
_dashboards | ||
_data | ||
_data-prepper | ||
_developer-documentation | ||
_field-types | ||
_im-plugin | ||
_includes | ||
_install-and-configure | ||
_layouts | ||
_ml-commons-plugin | ||
_monitoring-your-cluster | ||
_observing-your-data | ||
_plugins | ||
_query-dsl | ||
_sass | ||
_search-plugins | ||
_security | ||
_security-analytics | ||
_tools | ||
_troubleshoot | ||
_tuning-your-cluster | ||
_upgrade-to | ||
assets | ||
images | ||
release-notes | ||
templates | ||
.gitignore | ||
.vale.ini | ||
404.md | ||
API_STYLE_GUIDE.md | ||
CNAME | ||
CODE_OF_CONDUCT.md | ||
CONTRIBUTING.md | ||
FORMATTING_GUIDE.md | ||
Gemfile | ||
LICENSE | ||
MAINTAINERS.md | ||
NOTICE | ||
README.md | ||
STYLE_GUIDE.md | ||
TERMS.md | ||
THIRD-PARTY | ||
_config.yml | ||
about.md | ||
breaking-changes.md | ||
build.sh | ||
check-links.sh | ||
favicon.ico | ||
favicon.png | ||
favicon.svg | ||
index.md | ||
quickstart.md | ||
version-history.md |
README.md
About the OpenSearch documentation repo
The documentation repository contains the documentation for OpenSearch, the search, analytics, and visualization suite with advanced security, alerting, SQL support, automated index management, deep performance analysis, and more. You can find the rendered documentation at opensearch.org/docs.
How you can help
Community contributions remain essential in keeping this documentation comprehensive, useful, well-organized, and up-to-date. If you are interested in contributing, please see the Contribution file.
Points of contact
If you encounter problems or have questions when contributing to the documentation, these people can help:
How the website works
This repository contains Markdown files organized into Jekyll "collections" (e.g., _search-plugins
, _opensearch
, etc.). Each Markdown file correlates with one page on the website.
Using plain text on GitHub has many advantages:
- Everything is free, open source, and works on every operating system. Use your favorite text editor, Ruby, Jekyll, and Git.
- Markdown is easy to learn and looks good in side-by-side diffs.
- The workflow is no different than contributing code. Make your changes, build locally to check your work, and submit a pull request. Reviewers check the PR before merging.
- Alternatives like wikis and WordPress are full web applications that require databases and ongoing maintenance. They also have inferior versioning and content review processes compared to Git. Static websites, such as the ones Jekyll produces, are faster, more secure, and more stable.
In addition to the content for a given page, each Markdown file contains some Jekyll front matter. Front matter looks like this:
---
layout: default
title: Alerting security
nav_order: 10
parent: Alerting
has_children: false
---
If you want to reorganize content or add new pages, keep an eye on has_children
, parent
, and nav_order
, which define the hierarchy and order of pages in the lefthand navigation. For more information, see the documentation for our upstream Jekyll theme.
Contribute content
There are a few ways to contribute content, depending on the magnitude of the change.
Minor changes
If you want to add a few paragraphs across multiple files and are comfortable with Git, try this approach:
-
Fork this repository.
-
Download GitHub Desktop, install it, and clone your fork.
-
Navigate to the repository root.
-
Create a new branch.
-
Edit the Markdown files in
/docs
. -
Commit, sign off, push your changes to your fork, and submit a pull request.
Major changes
If you're making major changes to the documentation and need to see the rendered HTML before submitting a pull request, here's how to make the changes and view them locally:
-
Fork this repository.
-
Download GitHub Desktop, install it, and clone your fork.
-
Navigate to the repository root.
-
Install Ruby if you don't already have it. We recommend RVM, but use whatever method you prefer:
curl -sSL https://get.rvm.io | bash -s stable rvm install 2.6 ruby -v
-
Install Jekyll if you don't already have it:
gem install bundler jekyll
-
Install dependencies:
bundle install
-
Build:
sh build.sh
-
If the build script doesn't automatically open your web browser (it should), open http://localhost:4000/docs/.
-
Create a new branch.
-
Edit the Markdown files in each collection (e.g.
_security/
).If you're a web developer, you can customize
_layouts/default.html
and_sass/custom/custom.scss
. -
When you save a file, marvel as Jekyll automatically rebuilds the site and refreshes your web browser. This process can take anywhere from 10-30 seconds.
-
When you're happy with how everything looks, commit, sign off, push your changes to your fork, and submit a pull request.
Writing tips
The OpenSearch team released style guidelines for our documentation and marketing content. These guidelines cover the style standards and terms to be observed when creating OpenSearch content. We ask that you please adhere to these guidelines whenever contributing content.
We also provide guidelines on terminology. For a list of OpenSearch terms, see Terms.
Formatting documentation
The OpenSearch documentation uses a modified version of the just-the-docs Jekyll theme. For an overview of the commonly used formatted elements, including callouts, videos, and buttons, see the FORMATTING_GUIDE.
Style linting
We use the Vale linter to ensure that our documentation adheres to the OpenSearch Project Style Guidelines. To install Vale locally, follow these steps:
- Run
brew install vale
. - Run
vale *
from the documentation site root directory to lint all Markdown files. To lint a specific file, runvale /path/to/file
.
Optionally, you can install the Vale VSCode extension that integrates Vale with Visual Studio Code. By default, only errors and warnings are underlined. To change the minimum alert level to include suggestions, go to Vale VSCode > Extension Settings and select suggestion in the Vale > Vale CLI: Min Alert Level dropdown list.
Code of conduct
This project has adopted an Open Source Code of Conduct.
Security
See CONTRIBUTING for more information.
License
This project is licensed under the Apache-2.0 License.
Copyright
Copyright OpenSearch contributors.