diff --git a/README.md b/README.md index 91f28f2..def25f5 100644 --- a/README.md +++ b/README.md @@ -1,37 +1,25 @@ -

ThreeFold Decentralized Cloud Website

+

ThreeFold DeCloud Docs

-

Table of Contents

-- [Introduction](#introduction) -- [Steps](#steps) -- [URL](#url) +get hero ---- +```bash +curl https://raw.githubusercontent.com/freeflowuniverse/herolib/refs/heads/development/install_hero.sh > /tmp/install_hero.sh +bash /tmp/install_hero.sh +#DONT FORGET TO START A NEW SHELL (otherwise the paths will not be set) -## Introduction +hero docusaurus -u https://git.ourworld.tf/tfgrid/docs_hero -d +``` -This repository contains the code to deploy the ThreeFold Decentralized Cloud website. +to push -## Steps +```bash +hero docusaurus -u https://git.ourworld.tf/tfgrid/docs_hero -bp -- Install - ``` - bash install.sh - ``` -- Run locally - ``` - bash develop.sh - ``` -- Push change online to stating website - ``` - bash build-dev.sh - ``` -- Push change online to production website - ``` - bash build.sh - ``` +#push for development: +hero docusaurus -u https://git.ourworld.tf/tfgrid/docs_hero -bpd +``` ## URL -- The website in staging mode is at `threefold.info/declouddev` -- The website in production mode is at `threefold.info/declouddev` \ No newline at end of file +- The production website is available at `https://threefold.info/hero` \ No newline at end of file diff --git a/build-dev.sh b/build-dev.sh deleted file mode 100755 index dace5e4..0000000 --- a/build-dev.sh +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/bash - -set -ex - -script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" -cd "${script_dir}" - -export PATH=${BASE}/node_modules/.bin:$PATH - -echo "Docs directory: $script_dir" - -# Change baseUrl to '/declouddev/' -sed -i "s|/decloud/|/declouddev/|g" docusaurus.config.ts ./src/pages/index.tsx - -bun docusaurus build - -rsync -rv --delete ${script_dir}/build/ root@info.ourworld.tf:/root/hero/www/info/declouddev - -# Change baseUrl to '/decloud/' -sed -i "s|/declouddev/|/decloud/|g" docusaurus.config.ts ./src/pages/index.tsx \ No newline at end of file diff --git a/build.sh b/build.sh deleted file mode 100755 index d941abe..0000000 --- a/build.sh +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/bash - -set -ex - -script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" -cd "${script_dir}" - -export PATH=${BASE}/node_modules/.bin:$PATH - -echo "Docs directory: $script_dir" - -bun docusaurus build - -rsync -rv --delete ${script_dir}/build/ root@info.ourworld.tf:/root/hero/www/info/decloud diff --git a/cfg/footer.json b/cfg/footer.json new file mode 100644 index 0000000..b662a0f --- /dev/null +++ b/cfg/footer.json @@ -0,0 +1,65 @@ +{ + "style": "dark", + "links": [ + { + "title": "Docs", + "items": [ + { + "label": "Start Here", + "to": "/docs/introduction" + }, + { + "label": "V3 Manual", + "href": "https://manual.grid.tf/" + }, + { + "label": "V4 Docs", + "href": "https://docs.threefold.io/" + } + ] + }, + { + "title": "Community", + "items": [ + { + "label": "Telegram", + "href": "https://t.me/threefold" + }, + { + "label": "X", + "href": "https://x.com/threefold_io" + }, + { + "label": "Forum", + "href": "https://forum.threefold.io" + }, + { + "label": "Support", + "to": "/support" + } + ] + }, + { + "title": "Links", + "items": [ + { + "label": "ThreeFold.io", + "href": "https://threefold.io" + }, + { + "label": "Dashboard", + "href": "https://dashboard.grid.tf" + }, + { + "label": "GitHub", + "href": "https://github.com/threefoldtech/home" + }, + { + "label": "Gitea", + "href": "https://git.ourworld.tf" + } + ] + } + ], + "copyright": "Copyright © 2025 ThreeFold" +} diff --git a/cfg/main.json b/cfg/main.json new file mode 100644 index 0000000..58aa84a --- /dev/null +++ b/cfg/main.json @@ -0,0 +1,25 @@ +{ + "title": "ThreeFold Decentralized Cloud", + "tagline": "Self-Healing Data & Cloud Network", + "url": "https://threefold.info", + "baseUrl": "/decloud/", + "favicon": "img/favicon.png", + "metadata": [ + { + "name": "description", + "content": "ThreeFold is laying the foundation for Web4, the next generation of the Internet." + }, + { + "property": "og:image", + "content": "https://threefold.info/decloud/img/tf_graph.png" + }, + { + "property": "og:description", + "content": "ThreeFold is laying the foundation for Web4, the next generation of the Internet." + }, + { + "property": "og:title", + "content": "Introduction | ThreeFold Docs" + } + ] +} diff --git a/cfg/navbar.json b/cfg/navbar.json new file mode 100644 index 0000000..ac7f0e8 --- /dev/null +++ b/cfg/navbar.json @@ -0,0 +1,25 @@ +{ + "title": "", + "logo": { + "alt": "ThreeFold Logo", + "src": "img/new_logo_tft.png" + }, + "items": [ + { + "type": "docSidebar", + "sidebarId": "tutorialSidebar", + "position": "left", + "label": "Docs" + }, + { + "to": "/support", + "label": "Support", + "position": "left" + }, + { + "href": "https://threefold.io", + "label": "ThreeFold.io", + "position": "right" + } + ] +} diff --git a/develop.sh b/develop.sh deleted file mode 100755 index 1e717c6..0000000 --- a/develop.sh +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/bash - -set -ex - -script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" -cd "${script_dir}" - -echo "Docs directory: $script_dir" - -#export NODE_OPTIONS=--openssl-legacy-provider - -#npm run start -- --host 0.0.0.0 - -bun run start -p 3100 diff --git a/docusaurus.config.ts b/docusaurus.config.ts deleted file mode 100644 index d4d0b3a..0000000 --- a/docusaurus.config.ts +++ /dev/null @@ -1,170 +0,0 @@ -import {themes as prismThemes} from 'prism-react-renderer'; -import type {Config} from '@docusaurus/types'; -import type * as Preset from '@docusaurus/preset-classic'; - -const config: Config = { - title: 'ThreeFold Decentralized Cloud', - tagline: 'Self-Healing Data & Cloud Network', - favicon: 'img/favicon.png', - - url: 'https://threefold.info', - baseUrl: '/decloud/', - - onBrokenLinks: 'throw', - onBrokenMarkdownLinks: 'warn', - - i18n: { - defaultLocale: 'en', - locales: ['en'], - }, - - presets: [ - [ - 'classic', - { - docs: { - sidebarPath: './sidebars.ts', - }, - blog: { - showReadingTime: true, - feedOptions: { - type: ['rss', 'atom'], - xslt: true, - }, - onInlineTags: 'warn', - onInlineAuthors: 'warn', - onUntruncatedBlogPosts: 'warn', - }, - theme: { - customCss: './src/css/custom.css', - }, - } satisfies Preset.Options, - ], - ], - - markdown: { - mermaid: true, - }, - themes: ['@docusaurus/theme-mermaid'], - - scripts: [ - - { - src: - '/js/crisp.js', - async: false, - }, - ], - - themeConfig: { - - colorMode: { - defaultMode: 'dark', - disableSwitch: true, - respectPrefersColorScheme: false, - }, - image: 'img/tf_graph.png', - metadata: [ - { name: 'description', content: 'ThreeFold is laying the foundation for Web4, the next generation of the Internet.' }, - { property: 'og:image', content: 'https://threefold.info/decloud/img/tf_graph.png' }, - { property: 'og:description', content: 'ThreeFold is laying the foundation for Web4, the next generation of the Internet.' }, - { property: 'og:title', content: 'Introduction | ThreeFold Docs' }, - ], - navbar: { - title: '', - logo: { - alt: 'ThreeFold Logo', - src: 'img/new_logo_tft.png', - }, - items: [ - { - type: 'docSidebar', - sidebarId: 'tutorialSidebar', - position: 'left', - label: 'Docs', - }, - { - to: '/support', - label: 'Support', - position: 'left', - }, - { - href: 'https://threefold.io', - label: 'ThreeFold.io', - position: 'right', - }, - ], - }, - footer: { - style: 'dark', - links: [ - { - title: 'Docs', - items: [ - { - label: 'Start Here', - to: '/docs/introduction', - }, - { - label: 'V3 Manual', - href: 'https://manual.grid.tf/', - }, - { - label: 'V4 Docs', - href: 'https://docs.threefold.io/', - }, - ], - }, - { - title: 'Community', - items: [ - { - label: 'Telegram', - href: 'https://t.me/threefold', - }, - { - label: 'X', - href: 'https://x.com/threefold_io', - }, - { - label: 'Forum', - href: 'https://forum.threefold.io', - }, - { - label: 'Support', - to: '/support', - }, - ], - }, - { - title: 'Links', - items: [ - { - label: 'ThreeFold.io', - href: 'https://threefold.io', - }, - { - label: 'Dashboard', - href: 'https://dashboard.grid.tf', - }, - { - label: 'GitHub', - href: 'https://github.com/threefoldtech/home', - }, - { - label: 'Gitea', - href: 'https://git.ourworld.tf', - }, - ], - }, - ], - copyright: `Copyright © ${new Date().getFullYear()} ThreeFold`, - }, - prism: { - theme: prismThemes.github, - darkTheme: prismThemes.dracula, - }, - }, -}; - -export default config; diff --git a/install.sh b/install.sh deleted file mode 100755 index ae174ba..0000000 --- a/install.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/bin/bash - -set -ex - -script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" -cd "${script_dir}" - -echo "Docs directory: $script_dir" - -# Function to detect the current shell and source the appropriate rc file -source_rc_file() { - local shell_name=$(basename "$SHELL") - case "$shell_name" in - bash) - source "$HOME/.bashrc" - ;; - zsh) - source "$HOME/.zshrc" - ;; - fish) - source "$HOME/.config/fish/config.fish" - ;; - *) - echo "Unsupported shell: $shell_name" - exit 1 - ;; - esac -} - -# Check if bun is installed -if ! command -v bun &> /dev/null; then - echo "Bun is not installed. Installing..." - curl -fsSL https://bun.sh/install | bash - source_rc_file -else - echo "Bun is already installed." -fi - -bun install \ No newline at end of file diff --git a/package.json b/package.json deleted file mode 100644 index a63f99f..0000000 --- a/package.json +++ /dev/null @@ -1,49 +0,0 @@ -{ - "name": "docs-website", - "version": "0.0.0", - "private": true, - "scripts": { - "docusaurus": "docusaurus", - "start": "docusaurus start", - "build": "docusaurus build", - "swizzle": "docusaurus swizzle", - "deploy": "docusaurus deploy", - "clear": "docusaurus clear", - "serve": "docusaurus serve", - "write-translations": "docusaurus write-translations", - "write-heading-ids": "docusaurus write-heading-ids", - "typecheck": "tsc" - }, - "dependencies": { - "@docusaurus/core": "^3.7.0", - "@docusaurus/preset-classic": "^3.7.0", - "@docusaurus/theme-mermaid": "^3.7.0", - "@mdx-js/react": "^3.0.0", - "clsx": "^2.0.0", - "prism-react-renderer": "^2.3.0", - "react": "^18.2.0", - "react-dom": "^18.2.0" - }, - "devDependencies": { - "@docusaurus/module-type-aliases": "^3.7.0", - "@docusaurus/tsconfig": "3.5.2", - "@docusaurus/types": "3.5.2", - "typescript": "~5.5.2" - }, - "browserslist": { - "production": [ - ">0.5%", - "not dead", - "not op_mini all" - ], - "development": [ - "last 3 chrome version", - "last 3 firefox version", - "last 5 safari version" - ] - }, - "engines": { - "bun": ">=1.1.45" - }, - "packageManager": "bun@1.1.45" -} diff --git a/sidebars.ts b/sidebars.ts deleted file mode 100644 index acc7685..0000000 --- a/sidebars.ts +++ /dev/null @@ -1,31 +0,0 @@ -import type {SidebarsConfig} from '@docusaurus/plugin-content-docs'; - -/** - * Creating a sidebar enables you to: - - create an ordered group of docs - - render a sidebar for each doc of that group - - provide next/previous navigation - - The sidebars can be generated from the filesystem, or explicitly defined here. - - Create as many sidebars as you want. - */ -const sidebars: SidebarsConfig = { - // By default, Docusaurus generates a sidebar from the docs folder structure - tutorialSidebar: [{type: 'autogenerated', dirName: '.'}], - - // But you can create a sidebar manually - /* - tutorialSidebar: [ - 'intro', - 'hello', - { - type: 'category', - label: 'Tutorial', - items: ['tutorial-basics/create-a-document'], - }, - ], - */ -}; - -export default sidebars; diff --git a/src/components/HomepageFeatures/index.tsx b/src/components/HomepageFeatures/index.tsx deleted file mode 100644 index 75fb700..0000000 --- a/src/components/HomepageFeatures/index.tsx +++ /dev/null @@ -1,71 +0,0 @@ -import clsx from 'clsx'; -import Heading from '@theme/Heading'; -import styles from './styles.module.css'; -import { useColorMode } from '@docusaurus/theme-common' - -type FeatureItem = { - title: string; - Svg: React.ComponentType>; - description: JSX.Element; -}; - -const FeatureList: FeatureItem[] = [ - { scale: 1.0, - fill:"currentColor", - title: 'Building Web4', - Svg: require('@site/static/img/clouds.svg').default, - description: ( - <> - Laying the groundwork for Web4, the next generation of the Internet. - - ), - }, - { scale: 1.0, - fill:"currentColor", - title: 'ThreeFold Grid', - Svg: require('@site/static/img/nodes.svg').default, - description: ( - <> - ThreeFold nodes, routers and phones create an end‑to‑end encrypted network. - - ), - }, - { scale: 1.0, - fill:"currentColor", - title: 'Community Rewards', - Svg: require('@site/static/img/rewards.svg').default, - description: ( - <> - The ecosystem rewards the community to foster growth and expansion. - - ), - }, -]; - -function Feature({scale, fill, id, title, Svg, description}: FeatureItem) { - return ( -
-
- -
-
- {title} -

{description}

-
-
- ); -} - -export default function HomepageFeatures(): JSX.Element { - return ( -
-
-
- {FeatureList.map((props, idx) => ( - - ))} -
-
-
- ); -} diff --git a/src/components/HomepageFeatures/styles.module.css b/src/components/HomepageFeatures/styles.module.css deleted file mode 100644 index b248eb2..0000000 --- a/src/components/HomepageFeatures/styles.module.css +++ /dev/null @@ -1,11 +0,0 @@ -.features { - display: flex; - align-items: center; - padding: 2rem 0; - width: 100%; -} - -.featureSvg { - height: 200px; - width: 200px; -} diff --git a/src/css/custom.css b/src/css/custom.css deleted file mode 100644 index b878d8d..0000000 --- a/src/css/custom.css +++ /dev/null @@ -1,131 +0,0 @@ -/** - * Any CSS included here will be global. The classic template - * bundles Infima by default. Infima is a CSS framework designed to - * work well for content-centric websites. - */ - -/* Ensure navbar items and logo are vertically aligned */ -.navbar__logo { - display: flex; - align-items: center; /* Center aligns the items vertically */ - height: 100%; /* Ensures full height for alignment */ -} - -.navbar__logo img { - max-width: 150px; /* Set maximum width of the logo */ - height: auto; /* Maintain aspect ratio */ -} - -/* Align navbar items, such as Docs and Support */ -.navbar__item { - display: flex; - align-items: center; /* Vertically align the items */ -} - -/* Optional: Adjust padding for navbar items */ -.navbar__link { - padding: 8px 12px; /* Modify values as necessary for better spacing */ -} - -/* Add @font-face declarations for the Inter font */ -@font-face { - font-family: 'Inter'; - font-weight: 400; /* Light */ - font-style: normal; - src: url('/fonts/Inter_28pt-Light.ttf') format('truetype'); /* Corrected path */ -} - -@font-face { - font-family: 'Inter'; - font-weight: 500; /* Regular */ - font-style: normal; - src: url('/fonts/Inter_28pt-Regular.ttf') format('truetype'); /* Corrected path */ -} - -@font-face { - font-family: 'Inter'; - font-weight: 600; /* Medium */ - font-style: normal; - src: url('/fonts/Inter_28pt-Medium.ttf') format('truetype'); /* Corrected path */ -} - -/* Apply the Inter font globally */ -body { - font-family: 'Inter', sans-serif; /* Set the global font */ - font-size: 18px; -} - -/* Header styles - Medium weight for headers */ -h1, h2, h3, h4, h5, h6 { - font-weight: 600; /* Medium weight for headers */ - font-family: 'Inter', sans-serif; /* Set the global font */ -} - -/* Paragraph styles - Light weight for paragraphs */ -p { - font-weight: 400; /* Light weight for paragraphs */ - font-family: 'Inter', sans-serif; /* Set the global font */ -} - -/* You can override the default Infima variables here. */ -:root { - --ifm-color-primary: #2e83ff; - --ifm-color-primary-dark: #29784c; - --ifm-color-primary-darker: #277148; - --ifm-color-primary-darkest: #205d3b; - --ifm-color-primary-light: #33925d; - --ifm-color-primary-lighter: #359962; - --ifm-color-primary-lightest: #3cad6e; - --ifm-code-font-size: 95%; - --svg-fill-color: #2a2021; /* Black fill for light mode */ - --docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.1); -} - -/* Dark mode styles */ -html[data-theme="dark"] { - --svg-fill-color: #fff; /* White fill for dark mode */ -} - -/* For readability concerns, you should choose a lighter palette in dark mode. */ -[data-theme='dark'] { - --ifm-color-primary: #8d8d8d; - --ifm-color-primary-dark: #21af90; - --ifm-color-primary-darker: #1fa588; - --ifm-color-primary-darkest: #1a8870; - --ifm-color-primary-light: #29d5b0; - --ifm-color-primary-lighter: #32d8b4; - --ifm-color-primary-lightest: #4fddbf; - --svg-fill-color: #fff; /* White fill for dark mode */ - --docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.3); -} -.footer { - background-color: #131213; -} -.footer a, -.footer p, -.footer span, -.footer div { - color: #ffffff; /* Example: Light gray text for dark mode */ -} -.navbar { /* or .navbar--fixedTop if it has that class */ - background-color: #131213; -} - -/* Apply scroll margin to footnote targets */ -[data-footnote-ref="true"] { - scroll-margin-top: 80px; /* Adjust this value to match your navbar height */ -} - -/* Ensure navbar items and logo are vertically aligned */ -.navbar__logo { - display: flex; - align-items: center; /* Center aligns the items vertically */ - height: 100%; /* Ensures full height for alignment */ -} - -.navbar__link { /* Example: for navbar links */ - color: #ffffff; -} -img.svg-icon { - fill: var(--svg-fill-color); /* Apply the color variable */ -} \ No newline at end of file diff --git a/src/pages/index.module.css b/src/pages/index.module.css deleted file mode 100644 index 9f71a5d..0000000 --- a/src/pages/index.module.css +++ /dev/null @@ -1,23 +0,0 @@ -/** - * CSS files with the .module.css suffix will be treated as CSS modules - * and scoped locally. - */ - -.heroBanner { - padding: 4rem 0; - text-align: center; - position: relative; - overflow: hidden; -} - -@media screen and (max-width: 996px) { - .heroBanner { - padding: 2rem; - } -} - -.buttons { - display: flex; - align-items: center; - justify-content: center; -} diff --git a/src/pages/index.tsx b/src/pages/index.tsx deleted file mode 100644 index e0d4f56..0000000 --- a/src/pages/index.tsx +++ /dev/null @@ -1,6 +0,0 @@ -import React from 'react'; -import { Redirect } from '@docusaurus/router'; - -export default function Home() { - return ; -} \ No newline at end of file diff --git a/src/pages/markdown-page.md b/src/pages/markdown-page.md deleted file mode 100644 index 9756c5b..0000000 --- a/src/pages/markdown-page.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Markdown page example ---- - -# Markdown page example - -You don't need React to write simple standalone pages. diff --git a/src/pages/support.md b/src/pages/support.md deleted file mode 100644 index 6c27c15..0000000 --- a/src/pages/support.md +++ /dev/null @@ -1,34 +0,0 @@ -# Support - -Our dedicated team is here to help you every step of the way. We're passionate about ensuring that you receive the best possible experience exploring the ThreeFold ecosystem. - -If you can't find the answer to your question, our dedicated ThreeFold support team is here to help. - -## Reach Support - -To contact the ThreeFold support team, visit the [ThreeFold Support Crisp website](https://threefoldfaq.crisp.help/en/). - -## Live Chat Availability - -Our support team is available from Monday to Friday, Central European Summer Time (CEST), between 8:00 AM and 12:00 AM (16 hours per day). During these hours, you can interact with us in real-time via live chat on the ThreeFold website. - -* **Monday to Friday**: Available from 8:00 AM to 12:00 AM CEST - -> Outside of these hours, you can still write to the support team and they will get back to you during working hours. - -## How We Can Help - -Our support team is here to assist you with any questions or concerns you may have about ThreeFold. Whether it's troubleshooting an issue, setting up a new feature, or simply answering a question, we're here to help. - -### Support Services -* **Technical Support**: Assistance with technical issues related to ThreeFold. -* **Feature Setup**: Guidance on how to set up and use various ThreeFold features, services and products. -* **General Questions**: Answers to any questions you may have about ThreeFold. - -## Get In Touch - -Ready to reach out? Simply visit the [ThreeFold Support Crisp website](https://threefoldfaq.crisp.help/en/) and initiate a chat with us during business hours. - -*We're here to listen, assist, and provide support!* - ---- diff --git a/static/.nojekyll b/static/.nojekyll deleted file mode 100644 index e69de29..0000000 diff --git a/static/CNAME b/static/CNAME deleted file mode 100644 index 339ae8f..0000000 --- a/static/CNAME +++ /dev/null @@ -1 +0,0 @@ -threefold.info/decloud \ No newline at end of file diff --git a/static/fonts/Inter_28pt-Light.ttf b/static/fonts/Inter_28pt-Light.ttf deleted file mode 100644 index 5eeff3a..0000000 Binary files a/static/fonts/Inter_28pt-Light.ttf and /dev/null differ diff --git a/static/fonts/Inter_28pt-Medium.ttf b/static/fonts/Inter_28pt-Medium.ttf deleted file mode 100644 index 00120fe..0000000 Binary files a/static/fonts/Inter_28pt-Medium.ttf and /dev/null differ diff --git a/static/fonts/Inter_28pt-Regular.ttf b/static/fonts/Inter_28pt-Regular.ttf deleted file mode 100644 index 855b6f4..0000000 Binary files a/static/fonts/Inter_28pt-Regular.ttf and /dev/null differ diff --git a/static/js/crisp.js b/static/js/crisp.js deleted file mode 100644 index 9e5aaa5..0000000 --- a/static/js/crisp.js +++ /dev/null @@ -1 +0,0 @@ -window.$crisp=[];window.CRISP_WEBSITE_ID="1a5a5241-91cb-4a41-8323-5ba5ec574da0";(function(){d=document;s=d.createElement("script");s.src="https://client.crisp.chat/l.js";s.async=1;d.getElementsByTagName("head")[0].appendChild(s);})(); \ No newline at end of file diff --git a/tsconfig.json b/tsconfig.json deleted file mode 100644 index 7a35633..0000000 --- a/tsconfig.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - // This file is not used in compilation. It is here just for a nice editor experience. - "extends": "@docusaurus/tsconfig", - "compilerOptions": { - "baseUrl": "docs" - } -}