From 4b32cd12bc8b5bf4ca1cf21615ef7b956150fd08 Mon Sep 17 00:00:00 2001 From: Tobias Merkle Date: Thu, 8 Feb 2024 11:45:01 -0500 Subject: [PATCH] reorganize pages and add css --- src/SUMMARY.md | 134 ++++++++---------- src/api_reference.md | 7 + src/apis/overview.md | 7 - src/build-and-deploy-an-app.md | 10 ++ src/chess_app.md | 14 ++ src/chess_app/chess_engine.md | 15 -- .../cookbook_overview.md => cookbook.md} | 0 src/getting-started.md | 3 + src/{kit/kit.md => kit-dev-toolkit.md} | 0 src/my_first_app/chapter_1.md | 11 -- src/system-components.md | 3 + theme/css/general.css | 5 + theme/index.hbs | 6 +- 13 files changed, 102 insertions(+), 113 deletions(-) create mode 100644 src/api_reference.md create mode 100644 src/build-and-deploy-an-app.md create mode 100644 src/chess_app.md rename src/{cookbook/cookbook_overview.md => cookbook.md} (100%) create mode 100644 src/getting-started.md rename src/{kit/kit.md => kit-dev-toolkit.md} (100%) create mode 100644 src/system-components.md diff --git a/src/SUMMARY.md b/src/SUMMARY.md index e996ab08..87e88086 100644 --- a/src/SUMMARY.md +++ b/src/SUMMARY.md @@ -1,79 +1,59 @@ # Summary -# Getting Started - -- [Quick Start](./quick-start.md) -- [Introduction](./intro.md) -- [Identity System](./identity_system.md) -- [Design Philosophy](./design_philosophy.md) -- [Installation](./install.md) -- [Join the Network](./login.md) - -# System Components - -- [Processes](./process/processes.md) - - [Capability-Based Security](./process/capabilities.md) - - [Startup, Spindown, and Crashes](./process/startup.md) - - [Extensions](./process/extensions.md) -- [Networking Protocol](./networking_protocol.md) -- [Public Key Infrastructure](./pki.md) -- [HTTP Server & Client](./http_server_and_client.md) -- [Files](./files.md) -- [Databases](./databases.md) -- [Terminal](./terminal.md) - -# Process Standard Library - -- [Overview](./process_stdlib/overview.md) - -# Kit: Development Tool**kit** - -- [`kit`](./kit/kit.md) -- [`boot-fake-node`](./kit/boot-fake-node.md) -- [`new`](./kit/new.md) -- [`build`](./kit/build.md) -- [`start-package`](./kit/start-package.md) -- [`remove-package`](./kit/remove-package.md) -- [`dev-ui`](./kit/dev-ui.md) -- [`inject-message`](./kit/inject-message.md) -- [`run-tests`](./kit/run-tests.md) - -# Tutorial: Build and Deploy an App - -- [Environment Setup](./my_first_app/chapter_1.md) -- [Sending Some Messages, Using Some Tools](./my_first_app/chapter_2.md) -- [Defining Your Protocol](./my_first_app/chapter_3.md) -- [Frontend Time](./my_first_app/chapter_4.md) -- [Sharing with the World](./my_first_app/chapter_5.md) - -# In-Depth Guide: Chess App - -- [Chess Engine](./chess_app/chess_engine.md) -- [Adding a Frontend](./chess_app/frontend.md) -- [Putting Everything Together](./chess_app/putting_everything_together.md) -- [Extension 1: Chat](./chess_app/chat.md) - -# Cookbook (Handy Recipes) - -- [Cookbook Overview](./cookbook/cookbook_overview.md) -- [Managing Child Processes](./cookbook/manage_child_processes.md) -- [Publishing a Website or Web App](./cookbook/publish_to_web.md) -- [Simple File Transfer Guide](./cookbook/file_transfer.md) -- [Intro to Web UI with File Transfer](./cookbook/file_transfer_ui.md) -- [Writing and Running Scripts](./cookbook/writing_scripts.md) -- [Writing an Extension](./cookbook/extensions.md) - -# API Reference - -- [APIs Overview](./apis/overview.md) -- [HTTP API](./apis/http_authentication.md) -- [HTTP Client API](./apis/http_client.md) -- [HTTP Server API](./apis/http_server.md) -- [Kernel API](./apis/kernel.md) -- [KV API](./apis/kv.md) -- [Net API](./apis/net.md) -- [`kinode.wit`](./apis/kinode_wit.md) -- [SQLite API](./apis/sqlite.md) -- [Terminal API](./apis/terminal.md) -- [VFS API](./apis/vfs.md) -- [WebSocket API](./apis/websocket_authentication.md) +- [Getting Started](./quick-start.md) + - [Introduction](./intro.md) + - [Identity System](./identity_system.md) + - [Design Philosophy](./design_philosophy.md) + - [Installation](./install.md) + - [Join the Network](./login.md) +- [System Components](./system-components.md) + - [Processes](./process/processes.md) + - [Capability-Based Security](./process/capabilities.md) + - [Startup, Spindown, and Crashes](./process/startup.md) + - [Extensions](./process/extensions.md) + - [Networking Protocol](./networking_protocol.md) + - [Public Key Infrastructure](./pki.md) + - [HTTP Server & Client](./http_server_and_client.md) + - [Files](./files.md) + - [Databases](./databases.md) + - [Terminal](./terminal.md) +- [Process Standard Library](./process_stdlib/overview.md) +- [Kit: Development Tool**kit**](./kit-dev-toolkit.md) + - [`boot-fake-node`](./kit/boot-fake-node.md) + - [`new`](./kit/new.md) + - [`build`](./kit/build.md) + - [`start-package`](./kit/start-package.md) + - [`remove-package`](./kit/remove-package.md) + - [`dev-ui`](./kit/dev-ui.md) + - [`inject-message`](./kit/inject-message.md) + - [`run-tests`](./kit/run-tests.md) +- [Tutorial: Build and Deploy an App](./build-and-deploy-an-app.md) + - [Environment Setup](./my_first_app/chapter_1.md) + - [Sending Some Messages, Using Some Tools](./my_first_app/chapter_2.md) + - [Defining Your Protocol](./my_first_app/chapter_3.md) + - [Frontend Time](./my_first_app/chapter_4.md) + - [Sharing with the World](./my_first_app/chapter_5.md) +- [In-Depth Guide: Chess App](./chess_app.md) + - [Chess Engine](./chess_app/chess_engine.md) + - [Adding a Frontend](./chess_app/frontend.md) + - [Putting Everything Together](./chess_app/putting_everything_together.md) + - [Extension 1: Chat](./chess_app/chat.md) +- [Cookbook (Handy Recipes)](./cookbook.md) + - [Managing Child Processes](./cookbook/manage_child_processes.md) + - [Publishing a Website or Web App](./cookbook/publish_to_web.md) + - [Simple File Transfer Guide](./cookbook/file_transfer.md) + - [Intro to Web UI with File Transfer](./cookbook/file_transfer_ui.md) + - [Writing and Running Scripts](./cookbook/writing_scripts.md) + - [Writing an Extension](./cookbook/extensions.md) +- [API Reference](./api_reference.md) + - [HTTP API](./apis/http_authentication.md) + - [HTTP Client API](./apis/http_client.md) + - [HTTP Server API](./apis/http_server.md) + - [Kernel API](./apis/kernel.md) + - [KV API](./apis/kv.md) + - [Net API](./apis/net.md) + - [`kinode.wit`](./apis/kinode_wit.md) + - [SQLite API](./apis/sqlite.md) + - [Terminal API](./apis/terminal.md) + - [VFS API](./apis/vfs.md) + - [WebSocket API](./apis/websocket_authentication.md) diff --git a/src/api_reference.md b/src/api_reference.md new file mode 100644 index 00000000..83557906 --- /dev/null +++ b/src/api_reference.md @@ -0,0 +1,7 @@ +# APIs Overview + +The APIs documented in this section refer to Kinode runtime modules. +Specifically, they are the patterns of Requests and Responses that an app can use to interact with these modules. + +**Note: App developers usually should not use these APIs directly. +Most standard use-cases are better served by using functions in the [Process Standard Library](../process_stdlib/overview.md).** diff --git a/src/apis/overview.md b/src/apis/overview.md index 83557906..e69de29b 100644 --- a/src/apis/overview.md +++ b/src/apis/overview.md @@ -1,7 +0,0 @@ -# APIs Overview - -The APIs documented in this section refer to Kinode runtime modules. -Specifically, they are the patterns of Requests and Responses that an app can use to interact with these modules. - -**Note: App developers usually should not use these APIs directly. -Most standard use-cases are better served by using functions in the [Process Standard Library](../process_stdlib/overview.md).** diff --git a/src/build-and-deploy-an-app.md b/src/build-and-deploy-an-app.md new file mode 100644 index 00000000..72691ba2 --- /dev/null +++ b/src/build-and-deploy-an-app.md @@ -0,0 +1,10 @@ +# Tutorial: Build and Deploy an App + +Welcome! +In these tutorials, you'll setup your development environment and learn about the `kit` tools. +You'll learn about templates and also walk through writing an application from the group up, backend and frontend. +And finally, you'll learn how to deploy applications through the Kinode app store. + +For the purposes of this documentation, terminal commands are provided as-is for ease of copying EXCEPT when the output of the command is also shown. +In that case, the command is prepended with a `$ ` to distinguish the command from the output. +The `$ ` should not be copied into the terminal. \ No newline at end of file diff --git a/src/chess_app.md b/src/chess_app.md new file mode 100644 index 00000000..5a4a8835 --- /dev/null +++ b/src/chess_app.md @@ -0,0 +1,14 @@ +# In-Depth Guide: Chess App + +This guide will walk you through building a very simple chess app on Kinode OS. +The final result will look like [this](https://github.com/kinode-dao/kinode/tree/main/modules/chess): chess is in the basic runtime distribution so you can try it yourself. + +To prepare for this tutorial, follow the environment setup guide [here](../my_first_app/chapter_1.md), i.e. [start a fake node](../my_first_app/chapter_1.md#booting-a-fake-kinode-node) and then, in another terminal, run: +```bash +kit new my_chess +cd my_chess +kit build +kit start-package -p 8080 +``` + +Once you have the template app installed and can see it running on your testing node, continue... diff --git a/src/chess_app/chess_engine.md b/src/chess_app/chess_engine.md index 7191fe1b..2781b226 100644 --- a/src/chess_app/chess_engine.md +++ b/src/chess_app/chess_engine.md @@ -1,18 +1,3 @@ -# In-Depth Guide: Chess App - -This guide will walk you through building a very simple chess app on Kinode OS. -The final result will look like [this](https://github.com/kinode-dao/kinode/tree/main/modules/chess): chess is in the basic runtime distribution so you can try it yourself. - -To prepare for this tutorial, follow the environment setup guide [here](../my_first_app/chapter_1.md), i.e. [start a fake node](../my_first_app/chapter_1.md#booting-a-fake-kinode-node) and then, in another terminal, run: -```bash -kit new my_chess -cd my_chess -kit build -kit start-package -p 8080 -``` - -Once you have the template app installed and can see it running on your testing node, continue... - # Chess Engine Chess is a good example for a Kinode application walk-through because: diff --git a/src/cookbook/cookbook_overview.md b/src/cookbook.md similarity index 100% rename from src/cookbook/cookbook_overview.md rename to src/cookbook.md diff --git a/src/getting-started.md b/src/getting-started.md new file mode 100644 index 00000000..53ee2383 --- /dev/null +++ b/src/getting-started.md @@ -0,0 +1,3 @@ +# Getting Started + +This guide will help you get started with Kinode OS. It will walk you through the installation process, and provide an overview of the system's design philosophy and identity system. \ No newline at end of file diff --git a/src/kit/kit.md b/src/kit-dev-toolkit.md similarity index 100% rename from src/kit/kit.md rename to src/kit-dev-toolkit.md diff --git a/src/my_first_app/chapter_1.md b/src/my_first_app/chapter_1.md index 4dc6d7df..bbd601b4 100644 --- a/src/my_first_app/chapter_1.md +++ b/src/my_first_app/chapter_1.md @@ -1,14 +1,3 @@ -# Tutorial: Build and Deploy an App - -Welcome! -In these tutorials, you'll setup your development environment and learn about the `kit` tools. -You'll learn about templates and also walk through writing an application from the group up, backend and frontend. -And finally, you'll learn how to deploy applications through the Kinode app store. - -For the purposes of this documentation, terminal commands are provided as-is for ease of copying EXCEPT when the output of the command is also shown. -In that case, the command is prepended with a `$ ` to distinguish the command from the output. -The `$ ` should not be copied into the terminal. - # Environment Setup In this chapter, you'll walk through setting up a Kinode development environment. diff --git a/src/system-components.md b/src/system-components.md new file mode 100644 index 00000000..909c7e63 --- /dev/null +++ b/src/system-components.md @@ -0,0 +1,3 @@ +# System Components + +This section describes the various components of the system, including the processes, networking protocol, public key infrastructure, HTTP server and client, files, databases, and terminal. \ No newline at end of file diff --git a/theme/css/general.css b/theme/css/general.css index 851e9723..b8571d79 100644 --- a/theme/css/general.css +++ b/theme/css/general.css @@ -268,3 +268,8 @@ kbd { .result-no-output { font-style: italic; } + +.chapter > .chapter-item a { + color: var(--fg); + opacity: 1; +} diff --git a/theme/index.hbs b/theme/index.hbs index 000553b1..505653ba 100644 --- a/theme/index.hbs +++ b/theme/index.hbs @@ -21,9 +21,9 @@ - - - + + + {{#if print_enable}} {{/if}}