Skip to content

Commit

Permalink
Restructure docs to allow for language-specific sections. (#196)
Browse files Browse the repository at this point in the history
* Hide collection header for now

* Restructure docs to allow for language-specific docs

* Move swimos concepts section to top level

* Move SwimOS Concepts page

* Add basic index pages for server and client sections

* Allow non-dropdown links in header menu

* Add edit button back

* Hide Rust sections, hide Java client section for now

* Saving my work because there's a tornado warning lol

* Add more redirects

* Fix broken links

* Update doc names in config for typescript section

* Update icons
  • Loading branch information
afolson authored Apr 15, 2024
1 parent 8ab12bc commit 93e7c58
Show file tree
Hide file tree
Showing 80 changed files with 596 additions and 181 deletions.
126 changes: 87 additions & 39 deletions _config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -77,12 +77,27 @@ exclude:

# Every top level section is actually a collection. Their files are in a _folder in src/
collections:
devguide:
# Server Documentation
swimos-concepts:
kind: docs
output: true
name: "Java Server Getting Started"
description: Getting started guide
permalink: /swimos-concepts/:name
order:
- index.md
- fundamentals.md
- web-agents-intro.md
- lanes-intro.md
- links-intro.md
- recon.md
- warp.md
java-server-devguide:
kind: docs
output: true
name: "Developer Guide"
description: An ordered guide through SwimOS.
permalink: /developer-guide/:name/
permalink: /server/java/developer-guide/:name
order:
- index.md
# 1. Introduction
Expand All @@ -99,21 +114,25 @@ collections:
# 3.1 Agent URIs
# 3.2 Agent Properties
# 3.3 Traits
backend:
java-server-tutorials:
kind: docs
output: true
name: "Backend"
description: Documentation about SwimOS fundamentals and CLI usage.
permalink: /backend/:name/
name: "Tutorials"
description: Java Tutorials
permalink: /server/java/tutorials/:name
order:
- index.md
- demos.md
- transit.md
- monitor.md
java-server:
kind: docs
output: true
name: "Java Server"
description: Java server docs
permalink: /server/java/:name
order:
- index.md
# Getting Started
- fundamentals.md
- web-agents-intro.md
- lanes-intro.md
- links-intro.md
- recon.md
- warp.md
- swim-libraries.md
# Design Guidelines
- agent-design.md
Expand Down Expand Up @@ -153,47 +172,77 @@ collections:
- egress-bridges.md
- http-lanes.md
- auth-policy.md
weight: 1
frontend:
# Rust Server
rust-server:
kind: docs
output: true
name: "Rust Server"
description: Documentation for SwimOS Java Client
permalink: /server/rust/:name
order:
- index.md
rust-server-devguide:
kind: docs
output: true
name: "Frontend"
name: "Rust Server Dev Guide"
description: Documentation for SwimOS Java Client
permalink: /server/rust/developer-guide/:name
order:
- index.md
rust-server-tutorials:
kind: docs
output: true
name: "Rust Server Tutorials"
description: Documentation for SwimOS Java Client
permalink: /server/rust/tutorials/:name
order:
- index.md
# Client Docs
typescript-client:
kind: docs
output: true
name: "Client"
description: Documentation about streaming data from SwimOS apps for use in UIs.
permalink: /frontend/:name/
permalink: /client/typescript/:name
order:
- index.md
# Introduction
- whatIsWarp.md
- gettingStarted.md
- what-is-warp.md
- getting-started.md
# Connections
- warpClient.md
- warp-client.md
- downlinks.md
- valueDownlink.md
- mapDownlink.md
# - listDownlink.md
- eventDownlink.md
- value-downlink.md
- map-downlink.md
# - list-downlink.md
- event-downlink.md
# - property.md
# - demandLanes.md
# - demand-lanes.md
# - authentication.md
# Data
- dataModel.md
- data-model.md
- structures.md
- form.md
# - structures.md
# Examples/Demos
# Integrations
# - react.md
weight: 1
tutorials:
java-client:
kind: docs
output: true
name: "Tutorials"
name: "Java Client"
description: Documentation for SwimOS Java Client
permalink: /client/java/:name
order:
- index.md
rust-client:
kind: docs
output: true
name: "Rust Client"
description: Documentation for SwimOS Java Client
permalink: /client/rust/:name
order:
- index.md
- demos.md
- transit.md
- monitor.md
weight: 2
meta:
output: true
name: "Meta"
Expand All @@ -202,7 +251,6 @@ collections:
- contribute.md
- diataxis.md
- styles.md
weight: 3

# The directory that contains our collections
collections_dir: src
Expand Down Expand Up @@ -237,11 +285,11 @@ announcement:
text: "We'll be at booth #9001."
cta-link: "https://nstream.io/"

feed:
collections:
- tutorials
- backend
- meta
# feed:
# collections:
# - tutorials
# - server
# - meta

paginate: 9
paginate_path: "/blog/page/:num"
125 changes: 103 additions & 22 deletions _data/header-nav.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,48 +44,123 @@
# icon:
# path: "M10,23L10,21L5,21C4.45,21,3.98,20.8,3.59,20.41C3.2,20.02,3,19.55,3,19L3,5C3,4.45,3.2,3.98,3.59,3.59C3.98,3.2,4.45,3,5,3L10,3L10,1L12,1L12,23L10,23ZM5,18L10,18L10,12L5,18ZM14,21L14,12L19,18L19,5L14,5L14,3L19,3C19.55,3,20.02,3.2,20.41,3.59C20.8,3.98,21,4.45,21,5L21,19C21,19.55,20.8,20.02,20.41,20.41C20.02,20.8,19.55,21,19,21L14,21Z"
# url: /comparisons/
- section: Documentation
id: documentation
- section: SwimOS Concepts
url: /swimos-concepts/
- section: Server
id: server
menu:
- group: Backend
- group: Java
items:
- title: Backend Documentation
- title: Server Documentation
blurb:
icon: "fa-solid fa-server"
url: /backend/
url: /server/java/
- title: Developer Guide
blurb: Learn SwimOS from the start
icon: "fa-brands fa-java"
url: /developer-guide/
- group: Frontend
items:
- title: Frontend Documentation
blurb:
icon: "fa-solid fa-code"
url: /frontend/
- group: Tutorials & Blog
items:
url: /server/java/developer-guide/
- title: Tutorials
blurb:
icon: "fa-solid fa-graduation-cap"
url: /tutorials/
- title: Blog
url: /server/java/tutorials/
# - group: Client
# items:
# - title: Client Documentation
# blurb:
# icon: "fa-solid fa-code"
# url: /client/
# - group: Rust
# items:
# - title: Server Documentation
# blurb:
# icon: "fa-solid fa-graduation-cap"
# url: /server/rust/
# - group: Tutorials & Blog
# items:
# - title: Tutorials
# blurb:
# icon: "fa-solid fa-graduation-cap"
# url: /tutorials/
# - title: Blog
# blurb:
# icon: "fa-solid fa-rss"
# url: /blog/
# - group: Frontend
# items:
# - title: Swim UI Documentation
# blurb:
# icon: "fa-solid fa-display"
# url: /frontend/
# more:
# - name: Demos
# icon: "fa-solid fa-laptop-code"
# url: /demos/
# - name: Meta
# icon: "fa-solid fa-cloud"
# url: /meta/
- section: Client
id: client
menu:
- group: Typescript
items:
- title: Typescript Documentation
blurb:
icon: "fa-solid fa-rss"
url: /blog/
icon: "fa-solid fa-scroll"
url: /client/typescript/
# - group: Java
# items:
# - title: Java Documentation
# blurb:
# icon: "fa-solid fa-display"
# url: /client/java/
# - group: Rust
# items:
# - title: Rust Documentation
# blurb:
# icon: "fa-solid fa-display"
# url: /client/rust/
# - section: Documentation
# id: documentation
# menu:
# - group: Server
# items:
# - title: Server Documentation
# blurb:
# icon: "fa-solid fa-server"
# url: /server/
# - title: Developer Guide
# blurb: Learn SwimOS from the start
# icon: "fa-brands fa-java"
# url: /developer-guide/
# - group: Client
# items:
# - title: Client Documentation
# blurb:
# icon: "fa-solid fa-code"
# url: /client/
# - group: Tutorials & Blog
# items:
# - title: Tutorials
# blurb:
# icon: "fa-solid fa-graduation-cap"
# url: /tutorials/
# - title: Blog
# blurb:
# icon: "fa-solid fa-rss"
# url: /blog/
# - group: Frontend
# items:
# - title: Swim UI Documentation
# blurb:
# icon: "fa-solid fa-display"
# url: /frontend/
more:
# more:
# - name: Demos
# icon: "fa-solid fa-laptop-code"
# url: /demos/
- name: Meta
icon: "fa-solid fa-cloud"
url: /meta/
# - name: Meta
# icon: "fa-solid fa-cloud"
# url: /meta/
- section: Community
id: community
menu:
Expand All @@ -109,6 +184,10 @@
- title: Contributor's Guide
blurb: Learn how to contribute to SwimOS and SwimOS docs.
icon: "fa-solid fa-screwdriver-wrench"
url: https://www.swimos.org/meta/contribute.html
- title: Meta
blurb: Information about the docs site
icon: "fa-solid fa-cloud"
url: /meta/contribute.html
more:
- name: YouTube
Expand All @@ -123,3 +202,5 @@
- name: Twitter
icon: "fa-brands fa-twitter"
url: https://twitter.com/nstreamio
- section: Blog
url: /blog/
8 changes: 4 additions & 4 deletions _includes/docs-categories.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,15 +14,15 @@ <h3 class="flex items-center text-2xl sm:text-3xl font-semibold leading-8 text-k
<path stroke-linecap="round" stroke-linejoin="round"
d="M448 80v48c0 44.2-100.3 80-224 80S0 172.2 0 128V80C0 35.8 100.3 0 224 0S448 35.8 448 80zM393.2 214.7c20.8-7.4 39.9-16.9 54.8-28.6V288c0 44.2-100.3 80-224 80S0 332.2 0 288V186.1c14.9 11.8 34 21.2 54.8 28.6C99.7 230.7 159.5 240 224 240s124.3-9.3 169.2-25.3zM0 346.1c14.9 11.8 34 21.2 54.8 28.6C99.7 390.7 159.5 400 224 400s124.3-9.3 169.2-25.3c20.8-7.4 39.9-16.9 54.8-28.6V432c0 44.2-100.3 80-224 80S0 476.2 0 432V346.1z" />
</svg>
<div class="text-xl leading-6">Backend</div>
<div class="text-xl leading-6">Server</div>
</div>
<div class="px-6 py-4 pt-12 leading-6">
<!-- <h3 class="font-bold text-white">Get started with SwimOS</h3> -->
<p class="mt-2 text-sm">
Learn how to build stateful backend services for streaming data applications.
</p>
<div class="mt-10 mb-10 pt-12 text-center">
<a href="{% link _backend/index.md %}"
<a href="{% link _java-server/index.md %}"
class="no-underline rounded-full px-4 py-2.5 text-sm font-semibold text-white shadow-sm ring-1 ring-inset ring-white hover:bg-white hover:text-swim-dark-blue">Get
started</a>
</div>
Expand All @@ -37,15 +37,15 @@ <h3 class="flex items-center text-2xl sm:text-3xl font-semibold leading-8 text-k
<path stroke-linecap="round" stroke-linejoin="round"
d="M64 64c0-17.7-14.3-32-32-32S0 46.3 0 64V400c0 44.2 35.8 80 80 80H480c17.7 0 32-14.3 32-32s-14.3-32-32-32H80c-8.8 0-16-7.2-16-16V64zm406.6 86.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L320 210.7l-57.4-57.4c-12.5-12.5-32.8-12.5-45.3 0l-112 112c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L240 221.3l57.4 57.4c12.5 12.5 32.8 12.5 45.3 0l128-128z" />
</svg>
<div class="text-xl leading-6">Frontend</div>
<div class="text-xl leading-6">Client</div>
</div>
<div class="px-6 py-4 pt-12 leading-6">
<!-- <h3 class="font-bold text-white">Learn streaming data concepts</h3> -->
<p class="mt-2 text-sm">
Learn how to build real-time user interfaces for streaming data applications.
</p>
<div class="mt-10 mb-10 pt-12 text-center">
<a href="{% link _backend/index.md %}"
<a href="{% link _java-server/index.md %}"
class="no-underline rounded-full px-4 py-2.5 text-sm font-semibold text-white shadow-sm ring-1 ring-inset ring-white hover:bg-white hover:text-swim-dark-blue">Get
started</a>
</div>
Expand Down
Loading

0 comments on commit 93e7c58

Please sign in to comment.