Global navigation for docs
Allow users to view and browse to other sections of the site / other products and features.
### Roadmap
The roadmap for the global nav is split into 3 stages of contributions:
- [x] [MVC](#mvc): the first iteration with the minimum implementation to make it work properly
- [x] [Further improvements](#further-improvements): the plan for a second iteration, refining the nav and improving UX
- [x] [Further discussions](#further-discussions): things that we have in mind but may change according to the feedback after the 1st and 2nd implementations and also according to our priorities
### MVC
- https://gitlab.com/gitlab-com/gitlab-docs/merge_requests/362 // https://gitlab.com/gitlab-com/gitlab-docs/issues/169
- [x] Add user docs according to the UI + useful links for new users
- [x] Add admin docs according to the UI + useful links for new users
- [x] Add main contributor docs
MVC's feedback and planned second iteration: https://gitlab.com/gitlab-com/gitlab-docs/issues/298.
#### MVC's known issues
- [x] Omnibus homepage sees "GitLab" as active. This happens as the code checks for the url against `/#{dir}/`, and as GitLab and Omnibus both have a README the logic says they're the same. Will be solved when we create the nav for Omnibus and Runner docs.

- [x] "Operations" links to the first item after it (mimics the GL UI). This happens bc /operations/ do not have an index to link to. Will be solved when we create the index.

- [x] Post-merging issue/bug: ToC only moves to the right sidebar once the page is reloaded https://gitlab.com/gitlab-com/gitlab-docs/issues/299 // https://gitlab.com/gitlab-com/gitlab-docs/merge_requests/374
### Further improvements
Fix known issues explained above:
- [x] BUG: ToC only moves to the right sidebar once the page is reloaded: https://gitlab.com/gitlab-com/gitlab-docs/issues/299
- [x] Add indexes to /operations/, /customization/, and /admin_user/, to link them properly from the nav => https://gitlab.com/gitlab-org/gitlab-ce/issues/55234
- [x] Add nav for Omnibus and Runner => https://gitlab.com/gitlab-com/gitlab-docs/issues/298
Other improvements:
- [x] Add expandable buttons for each nav section or category => https://gitlab.com/gitlab-com/gitlab-docs/issues/298
- [x] Add button to toggle the left sidebar (something that works well on mobile too) => https://gitlab.com/gitlab-com/gitlab-docs/issues/298 // https://gitlab.com/gitlab-com/gitlab-docs/issues/336
- [ ] Coordinate usability test with the UX team
- [x] Reposition **global nav | content | ToC** properly on the page with CSS and fix bugs in the ToC (which affect the positioning)
- [x] "Info" icon says "Not available in free tiers": display the actual tiers the feature is availabe in. => https://gitlab.com/gitlab-com/gitlab-docs/merge_requests/483.
- [ ] Display bagdes themselves instead of the "info" icon.
| NOW | FUTURE |
| -- | ------ |
|  |  |
- [x] Add second-level support for docs links. E.g., Projects > Issues
- [ ] Add category icons (svg) next to each nav category
#### Further discussions
- [x] Maybe, if we think it's good, add a third-level support for links. Keep the breadcrumbs for easy navigation and for deeply nested pages
- [x] Improve the layout for 4k monitors
- [x] Do this dynamically with weights like Hugo does? https://github.com/gohugoio/hugoDocs/blob/master/content/en/templates/introduction.md (adding `order` or `weight` in frontmatter) => UPDATE: done - order goes according to the data file
- ~~Update landing pages to take advantage of sidebar. For example: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/21946~~ => UPDATE: the organization of the nav according to DevOps stages didn't work well, so we don't need this anymore.
### Context
Need to develop a design. (For inspiration, here's how others do a global nav: [Docker](https://docs.docker.com/install/) [MS](https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/) [Google](https://cloud.google.com/container-registry/docs/get-image-vulnerabilities) [Pi-hole](https://docs.pi-hole.net/ftldns/configfile/) [Bootstrap](https://getbootstrap.com/docs/4.1/getting-started/introduction/) [Hugo](https://gohugo.io/templates/introduction/) ).
Do we include logic to auto-expand the current section, showing its second level pages, while allowing users to manually expand other sections?
* Start with a static manual nav hierarchy/links
* Start with 2 level deep ‘fixed’/manual and then move forward from there in future phases. (So no site restructure now, just manual global nav.) (Also relying on (keeping) breadcrumbs for deeper nav within sections.) Add the links that we want to present manually in a yaml file (like [what Docker does](https://github.com/docker/docker.github.io/blob/master/_data/toc.yaml))
* For mobile: ability to toggle
* Help from front end eng.
* Fix site so that right-nav is properly responsive; currently buggy and can’t handle new left nav div
* Users vs Admins? Within each subsection, offer Users vs Admins subsections? Or wait for this because it will require docs restructuring initiative?
epic