diff --git a/docs_projectinca/.gitignore b/docs_projectinca/.gitignore new file mode 100644 index 0000000..6240da8 --- /dev/null +++ b/docs_projectinca/.gitignore @@ -0,0 +1,21 @@ +# build output +dist/ +# generated types +.astro/ + +# dependencies +node_modules/ + +# logs +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* + + +# environment variables +.env +.env.production + +# macOS-specific files +.DS_Store diff --git a/docs_projectinca/Makefile b/docs_projectinca/Makefile new file mode 100644 index 0000000..202b232 --- /dev/null +++ b/docs_projectinca/Makefile @@ -0,0 +1,3 @@ +run: + npm install + npm run dev diff --git a/docs_projectinca/README.md b/docs_projectinca/README.md new file mode 100644 index 0000000..4bc2272 --- /dev/null +++ b/docs_projectinca/README.md @@ -0,0 +1,103 @@ +

Project INCA Docs

+ +

Table of Contents

+ +- [Introduction](#introduction) +- [Prerequisites](#prerequisites) + - [Install the prerequisites on Ubuntu](#install-the-prerequisites-on-ubuntu) + - [Install the prerequisites on MAC or Linux with Brew](#install-the-prerequisites-on-mac-or-linux-with-brew) + - [Check if the Prerequisites Are Installed](#check-if-the-prerequisites-are-installed) +- [Clone the Repository](#clone-the-repository) +- [Preview the Website](#preview-the-website) +- [License](#license) +- [References](#references) +- [Contribute](#contribute) + +--- + +## Introduction + +This subrepository contains the code to deploy the Project INCA Docs website, a project by [ThreeFold](https://threefold.io). + +## Prerequisites + +You need [npm](https://www.npmjs.com/) to run this website. + +To clone the repository, you need `git`. + +To use the Makefile for quick deployment, you need `make` + +### Install the prerequisites on Ubuntu +``` +sudo apt update +sudo apt install nodejs +sudo apt install git +sudo apt install make +``` + +### Install the prerequisites on MAC or Linux with Brew + +- [Install Brew](https://brew.sh/) + ``` + /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" + ``` +- Install the prerequisites + ``` + brew install node + brew install git + brew install make + ``` + +### Check if the Prerequisites Are Installed + +``` +npm --version +git version +make --version +``` + +## Clone the Repository + + +``` +git clone https://git.ourworld.tf/tfgrid/info_tfgrid +cd info_tfgrid/docs_projectinca +``` + +For more information, read the original [AstroWind docs](./docs_starlight/starlight_README.md). + +## Preview the Website + +You can preview the website with those two lines. + +``` +npm install +npm run dev +``` + +The equivalent can be achieved using the Makefile: + +``` +make run +``` + +## License + +**INCA Docs** is licensed under the Apache 2.0 license β€” see the [LICENSE](../LICENSE.md) file for details. + +## References + +This Project INCA Docs website is based on the amazing [AstroWind Starlight repo](https://github.com/withastro/starlight). + +We changed the license from MIT to Apache 2.0 to suit this specific project. + +## Contribute + +To contribute to this repository: + +- Make a new branch with `development_` as a prefix (e.g. `development_update`) +- Make changes locally on your code editor +- Push changes to the new branch +- Make a pull request to `development` branch + +The code owners will merge `development` branch to `main` branch. \ No newline at end of file diff --git a/docs_projectinca/astro.config.mjs b/docs_projectinca/astro.config.mjs new file mode 100644 index 0000000..854d0f3 --- /dev/null +++ b/docs_projectinca/astro.config.mjs @@ -0,0 +1,27 @@ +import { defineConfig } from 'astro/config'; +import starlight from '@astrojs/starlight'; + +// https://astro.build/config +export default defineConfig({ + integrations: [ + starlight({ + title: 'Project INCA Docs', + social: { + github: 'https://github.com/threefoldtech', + }, + sidebar: [ + { + label: 'Start Here', + items: [ + // Each item here is one entry in the navigation menu. + { label: 'Getting Started', link: '/start_here/getting_started/' }, + ], + }, + { + label: 'Reference', + autogenerate: { directory: 'reference' }, + }, + ], + }), + ], +}); diff --git a/docs_projectinca/docs_starlight/starlight_README.md b/docs_projectinca/docs_starlight/starlight_README.md new file mode 100644 index 0000000..b51abaa --- /dev/null +++ b/docs_projectinca/docs_starlight/starlight_README.md @@ -0,0 +1,54 @@ +# Starlight Starter Kit: Basics + +[![Built with Starlight](https://astro.badg.es/v2/built-with-starlight/tiny.svg)](https://starlight.astro.build) + +``` +npm create astro@latest -- --template starlight +``` + +[![Open in StackBlitz](https://developer.stackblitz.com/img/open_in_stackblitz.svg)](https://stackblitz.com/github/withastro/starlight/tree/main/examples/basics) +[![Open with CodeSandbox](https://assets.codesandbox.io/github/button-edit-lime.svg)](https://codesandbox.io/p/sandbox/github/withastro/starlight/tree/main/examples/basics) +[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2Fwithastro%2Fstarlight%2Ftree%2Fmain%2Fexamples%2Fbasics&project-name=my-starlight-docs&repository-name=my-starlight-docs) + +> πŸ§‘β€πŸš€ **Seasoned astronaut?** Delete this file. Have fun! + +## πŸš€ Project Structure + +Inside of your Astro + Starlight project, you'll see the following folders and files: + +``` +. +β”œβ”€β”€ public/ +β”œβ”€β”€ src/ +β”‚ β”œβ”€β”€ assets/ +β”‚ β”œβ”€β”€ content/ +β”‚ β”‚ β”œβ”€β”€ docs/ +β”‚ β”‚ └── config.ts +β”‚ └── env.d.ts +β”œβ”€β”€ astro.config.mjs +β”œβ”€β”€ package.json +└── tsconfig.json +``` + +Starlight looks for `.md` or `.mdx` files in the `src/content/docs/` directory. Each file is exposed as a route based on its file name. + +Images can be added to `src/assets/` and embedded in Markdown with a relative link. + +Static assets, like favicons, can be placed in the `public/` directory. + +## 🧞 Commands + +All commands are run from the root of the project, from a terminal: + +| Command | Action | +| :------------------------ | :----------------------------------------------- | +| `npm install` | Installs dependencies | +| `npm run dev` | Starts local dev server at `localhost:4321` | +| `npm run build` | Build your production site to `./dist/` | +| `npm run preview` | Preview your build locally, before deploying | +| `npm run astro ...` | Run CLI commands like `astro add`, `astro check` | +| `npm run astro -- --help` | Get help using the Astro CLI | + +## πŸ‘€ Want to learn more? + +Check out [Starlight’s docs](https://starlight.astro.build/), read [the Astro documentation](https://docs.astro.build), or jump into the [Astro Discord server](https://astro.build/chat). diff --git a/docs_projectinca/package.json b/docs_projectinca/package.json new file mode 100644 index 0000000..a267703 --- /dev/null +++ b/docs_projectinca/package.json @@ -0,0 +1,19 @@ +{ + "name": "", + "type": "module", + "version": "0.0.1", + "scripts": { + "dev": "astro dev", + "start": "astro dev", + "build": "astro check && astro build", + "preview": "astro preview", + "astro": "astro" + }, + "dependencies": { + "@astrojs/check": "^0.7.0", + "@astrojs/starlight": "^0.24.2", + "astro": "^4.10.2", + "sharp": "^0.32.5", + "typescript": "^5.4.5" + } +} diff --git a/docs_projectinca/public/favicon.svg b/docs_projectinca/public/favicon.svg new file mode 100644 index 0000000..cba5ac1 --- /dev/null +++ b/docs_projectinca/public/favicon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/docs_projectinca/src/assets/black_threefold.png b/docs_projectinca/src/assets/black_threefold.png new file mode 100644 index 0000000..ae46096 Binary files /dev/null and b/docs_projectinca/src/assets/black_threefold.png differ diff --git a/docs_projectinca/src/assets/hero_host3.png b/docs_projectinca/src/assets/hero_host3.png new file mode 100644 index 0000000..6fc9e4c Binary files /dev/null and b/docs_projectinca/src/assets/hero_host3.png differ diff --git a/docs_projectinca/src/assets/houston.webp b/docs_projectinca/src/assets/houston.webp new file mode 100644 index 0000000..930c164 Binary files /dev/null and b/docs_projectinca/src/assets/houston.webp differ diff --git a/docs_projectinca/src/assets/inca_background.webp b/docs_projectinca/src/assets/inca_background.webp new file mode 100644 index 0000000..57e5f5c Binary files /dev/null and b/docs_projectinca/src/assets/inca_background.webp differ diff --git a/docs_projectinca/src/content/config.ts b/docs_projectinca/src/content/config.ts new file mode 100644 index 0000000..45f60b0 --- /dev/null +++ b/docs_projectinca/src/content/config.ts @@ -0,0 +1,6 @@ +import { defineCollection } from 'astro:content'; +import { docsSchema } from '@astrojs/starlight/schema'; + +export const collections = { + docs: defineCollection({ schema: docsSchema() }), +}; diff --git a/docs_projectinca/src/content/docs/guides/getstarted.md b/docs_projectinca/src/content/docs/guides/getstarted.md new file mode 100644 index 0000000..f4052a7 --- /dev/null +++ b/docs_projectinca/src/content/docs/guides/getstarted.md @@ -0,0 +1,10 @@ +--- +title: Get Started +description: Earn INCA rewards by hosting nodes +--- + +Earn INCA rewards by hosting nodes + +## Get a Node + +- Visit the official INCA website to [get INCA nodes](https://internetcapacity.org/) diff --git a/docs_projectinca/src/content/docs/index.mdx b/docs_projectinca/src/content/docs/index.mdx new file mode 100644 index 0000000..58ec3f2 --- /dev/null +++ b/docs_projectinca/src/content/docs/index.mdx @@ -0,0 +1,36 @@ +--- +title: Welcome to the Project INCA Docs +description: Get started building your docs site with Starlight. +template: splash +hero: + tagline: Learn how to deploy INCA nodes to earn rewards! + image: + file: ../../assets/hero_host3.png + actions: + - text: Get Started + link: /guides/getstarted/ + icon: right-arrow + variant: primary + - text: Visit the website + link: https://internetcapacity.org/ + icon: external +--- + +import { Card, CardGrid } from '@astrojs/starlight/components'; + +## Become a Cloud Service Provider + + + + Read the [INCA Docs](/guides/getstarted) to learn about the ecosystem. + + + You can get INCA nodes at the [official INCA website](https://internetcapacity.org/farming/). + + + Project INCA is the fourth version of the [ThreeFold Grid](https://threefold.io/) available in 60+ countries! + + + When you deploy INCA nodes, you contribute to the growth of the grid and earn INCA rewards! + + diff --git a/docs_projectinca/src/content/docs/reference/example.md b/docs_projectinca/src/content/docs/reference/example.md new file mode 100644 index 0000000..0224f09 --- /dev/null +++ b/docs_projectinca/src/content/docs/reference/example.md @@ -0,0 +1,11 @@ +--- +title: Example Reference +description: A reference page in my new Starlight docs site. +--- + +Reference pages are ideal for outlining how things work in terse and clear terms. +Less concerned with telling a story or addressing a specific use case, they should give a comprehensive outline of what you're documenting. + +## Further reading + +- Read [about reference](https://diataxis.fr/reference/) in the DiΓ‘taxis framework diff --git a/docs_projectinca/src/content/docs/start_here/getting_started.md b/docs_projectinca/src/content/docs/start_here/getting_started.md new file mode 100644 index 0000000..f4052a7 --- /dev/null +++ b/docs_projectinca/src/content/docs/start_here/getting_started.md @@ -0,0 +1,10 @@ +--- +title: Get Started +description: Earn INCA rewards by hosting nodes +--- + +Earn INCA rewards by hosting nodes + +## Get a Node + +- Visit the official INCA website to [get INCA nodes](https://internetcapacity.org/) diff --git a/docs_projectinca/src/env.d.ts b/docs_projectinca/src/env.d.ts new file mode 100644 index 0000000..acef35f --- /dev/null +++ b/docs_projectinca/src/env.d.ts @@ -0,0 +1,2 @@ +/// +/// diff --git a/docs_projectinca/tsconfig.json b/docs_projectinca/tsconfig.json new file mode 100644 index 0000000..77da9dd --- /dev/null +++ b/docs_projectinca/tsconfig.json @@ -0,0 +1,3 @@ +{ + "extends": "astro/tsconfigs/strict" +} \ No newline at end of file