Merge pull request #1 from Unkn0wnCat/feature-website
Add initial website
20
website/.gitignore
vendored
Normal file
|
@ -0,0 +1,20 @@
|
|||
# Dependencies
|
||||
/node_modules
|
||||
|
||||
# Production
|
||||
/build
|
||||
|
||||
# Generated files
|
||||
.docusaurus
|
||||
.cache-loader
|
||||
|
||||
# Misc
|
||||
.DS_Store
|
||||
.env.local
|
||||
.env.development.local
|
||||
.env.test.local
|
||||
.env.production.local
|
||||
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
41
website/README.md
Normal file
|
@ -0,0 +1,41 @@
|
|||
# Website
|
||||
|
||||
This website is built using [Docusaurus 2](https://docusaurus.io/), a modern static website generator.
|
||||
|
||||
### Installation
|
||||
|
||||
```
|
||||
$ yarn
|
||||
```
|
||||
|
||||
### Local Development
|
||||
|
||||
```
|
||||
$ yarn start
|
||||
```
|
||||
|
||||
This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.
|
||||
|
||||
### Build
|
||||
|
||||
```
|
||||
$ yarn build
|
||||
```
|
||||
|
||||
This command generates static content into the `build` directory and can be served using any static contents hosting service.
|
||||
|
||||
### Deployment
|
||||
|
||||
Using SSH:
|
||||
|
||||
```
|
||||
$ USE_SSH=true yarn deploy
|
||||
```
|
||||
|
||||
Not using SSH:
|
||||
|
||||
```
|
||||
$ GIT_USER=<Your GitHub username> yarn deploy
|
||||
```
|
||||
|
||||
If you are using GitHub pages for hosting, this command is a convenient way to build the website and push to the `gh-pages` branch.
|
3
website/babel.config.js
Normal file
|
@ -0,0 +1,3 @@
|
|||
module.exports = {
|
||||
presets: [require.resolve('@docusaurus/core/lib/babel/preset')],
|
||||
};
|
13
website/crowdin.yml
Normal file
|
@ -0,0 +1,13 @@
|
|||
project_id: '502518'
|
||||
api_token_env: CROWDIN_PERSONAL_TOKEN
|
||||
preserve_hierarchy: true
|
||||
files:
|
||||
# JSON translation files
|
||||
- source: /i18n/en/**/*
|
||||
translation: /i18n/%two_letters_code%/**/%original_file_name%
|
||||
# Docs Markdown files
|
||||
- source: /docs/**/*
|
||||
translation: /i18n/%two_letters_code%/docusaurus-plugin-content-docs/current/**/%original_file_name%
|
||||
# Blog Markdown files
|
||||
# - source: /blog/**/*
|
||||
# translation: /i18n/%two_letters_code%/docusaurus-plugin-content-blog/**/%original_file_name%
|
20
website/docs/intro.md
Normal file
|
@ -0,0 +1,20 @@
|
|||
---
|
||||
sidebar_position: 1
|
||||
---
|
||||
|
||||
# Documentation Intro
|
||||
|
||||
:::caution
|
||||
|
||||
This documentation is for the Alpha version of Matrix-Veles. Veles may be unstable and weird.
|
||||
|
||||
:::
|
||||
|
||||
So you are interested in Veles, that's great! And actually you came
|
||||
to exactly the right place.
|
||||
|
||||
This is the documentation for Matrix-Veles. It contains a helpful
|
||||
quick-start-guide as well as in-depth references for anything
|
||||
you might need.
|
||||
|
||||
So how about [checking out the basic tutorial to get you started](tutorial-basics/install)?
|
4
website/docs/tutorial-basics/_category_.json
Normal file
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"label": "Tutorial - Basics",
|
||||
"position": 2
|
||||
}
|
66
website/docs/tutorial-basics/install.md
Normal file
|
@ -0,0 +1,66 @@
|
|||
---
|
||||
sidebar_position: 1
|
||||
---
|
||||
|
||||
# Installing Veles
|
||||
|
||||
:::caution
|
||||
|
||||
This documentation is for the Alpha version of Matrix-Veles. Veles may be unstable and weird.
|
||||
|
||||
:::
|
||||
|
||||
:::info Software-Recommendations
|
||||
|
||||
Whilst Veles should work on Linux, Windows and macOS, **we strongly recommend you use Linux** as this is what
|
||||
Veles was developed and tested on! (Veles will run on arm-based minicomputers)
|
||||
|
||||
:::
|
||||
|
||||
## Docker
|
||||
|
||||
:::tip TODO
|
||||
|
||||
This section will come soon.
|
||||
|
||||
:::
|
||||
|
||||
## Bare-Metal
|
||||
|
||||
:::info Pre-Flight-Installations
|
||||
|
||||
Veles uses *MongoDB* as a database backend. Please [install MongoDB Community Server](https://www.mongodb.com/try/download/community) first.
|
||||
|
||||
:::
|
||||
|
||||
### Using the binary release
|
||||
|
||||
Veles provides ready-made binaries for the major OSes and architectures.
|
||||
|
||||
1. Go to the [latest release on GitHub](https://github.com/Unkn0wnCat/matrix-veles/releases/latest)
|
||||
2. Navigate down to "*Assets*" and find the correct file for your OS and architecture
|
||||
3. Download the file (Linux/macOS: .tar.gz, Windows: .zip)
|
||||
1. (Optional) Check the md5 sum of your downloaded file against the provided md5 sum
|
||||
4. Unpack the file (Your OS should come with utilities to do this)
|
||||
5. Navigate to the unpacked directory in your Terminal
|
||||
6. Run `./matrix-veles generateConfig` to generate a basic config<br/>(Linux: You may need to allow execution of the file using `chmod +x ./matrix-veles`)
|
||||
7. Edit the configuration in `./config.yaml` to reflect your setup
|
||||
8. Start Matrix-Veles using `./matrix-veles run`
|
||||
|
||||
You now have a fully functioning install of Veles! 🎉 Access the web interface at http://127.0.0.1:8123!
|
||||
|
||||
### Building from Source
|
||||
|
||||
:::info
|
||||
|
||||
Experience with GoLang is beneficial for this!
|
||||
|
||||
:::
|
||||
|
||||
To build from source make sure you have the [latest version of GoLang](https://go.dev/dl/) installed.
|
||||
|
||||
1. Open a terminal and execute `go install github.com/Unkn0wnCat/matrix-veles@latest`
|
||||
2. After a few minutes the build should be complete
|
||||
3. Run `matrix-veles generateConfig` in the directory you want your configuration to reside in
|
||||
4. Edit the configuration in `./config.yaml` to reflect your setup
|
||||
5. Start Matrix-Veles using `matrix-veles run` in the same directory as your config
|
4
website/docs/tutorial-extras/_category_.json
Normal file
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"label": "Tutorial - Extras",
|
||||
"position": 3
|
||||
}
|
11
website/docs/tutorial-extras/prometheus.md
Normal file
|
@ -0,0 +1,11 @@
|
|||
---
|
||||
sidebar_position: 1
|
||||
---
|
||||
|
||||
# Using Prometheus with Veles
|
||||
|
||||
Using Prometheus with Veles is really easy as Veles exposes a compatible metrics endpoint by default.
|
||||
|
||||
To use the metrics simply add a scrape-job to Prometheus to pull the metrics from `http://[your-server-here]:8123/metrics`.
|
||||
|
||||
And that's it, you now have a few relevant metrics to monitor the health of your Veles! 🎉
|
142
website/docusaurus.config.js
Normal file
|
@ -0,0 +1,142 @@
|
|||
// @ts-check
|
||||
// Note: type annotations allow type checking and IDEs autocompletion
|
||||
|
||||
const lightCodeTheme = require('prism-react-renderer/themes/github');
|
||||
const darkCodeTheme = require('prism-react-renderer/themes/dracula');
|
||||
|
||||
/** @type {import('@docusaurus/types').Config} */
|
||||
const config = {
|
||||
title: 'Matrix-Veles',
|
||||
tagline: 'Protector of your Matrix-harvest!',
|
||||
url: 'https://veles.1in1.net',
|
||||
baseUrl: '/',
|
||||
onBrokenLinks: 'throw',
|
||||
onBrokenMarkdownLinks: 'warn',
|
||||
favicon: 'img/favicon.ico',
|
||||
organizationName: 'Unkn0wnCat',
|
||||
projectName: 'matrix-veles',
|
||||
i18n: {
|
||||
defaultLocale: "en",
|
||||
locales: ["en", "de"]
|
||||
},
|
||||
|
||||
presets: [
|
||||
[
|
||||
'classic',
|
||||
/** @type {import('@docusaurus/preset-classic').Options} */
|
||||
({
|
||||
docs: {
|
||||
sidebarPath: require.resolve('./sidebars.js'),
|
||||
editUrl: ({locale, versionDocsDirPath, docPath}) => {
|
||||
if (locale !== "en") {
|
||||
return `https://crowdin.com/project/matrix-veles/${locale}`;
|
||||
}
|
||||
return `https://github.com/Unkn0wnCat/matrix-veles/tree/main/website/${versionDocsDirPath}/${docPath}`;
|
||||
},
|
||||
},
|
||||
/*blog: {
|
||||
showReadingTime: true,
|
||||
editUrl:
|
||||
'https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/',
|
||||
},*/
|
||||
theme: {
|
||||
customCss: require.resolve('./src/css/custom.css'),
|
||||
},
|
||||
}),
|
||||
],
|
||||
],
|
||||
|
||||
themeConfig:
|
||||
/** @type {import('@docusaurus/preset-classic').ThemeConfig} */
|
||||
({
|
||||
navbar: {
|
||||
title: 'Matrix-Veles',
|
||||
logo: {
|
||||
alt: 'Matrix-Veles Logo',
|
||||
src: 'img/logo.svg',
|
||||
},
|
||||
items: [
|
||||
{
|
||||
type: 'doc',
|
||||
docId: 'intro',
|
||||
position: 'left',
|
||||
label: 'Documentation',
|
||||
},
|
||||
//{to: '/blog', label: 'Blog', position: 'left'},
|
||||
{
|
||||
type: 'localeDropdown',
|
||||
position: 'right',
|
||||
},
|
||||
{
|
||||
href: 'https://github.com/Unkn0wnCat/matrix-veles',
|
||||
label: 'GitHub',
|
||||
position: 'right',
|
||||
},
|
||||
{
|
||||
href: 'https://github.com/Unkn0wnCat/matrix-veles/releases/latest',
|
||||
label: 'Download',
|
||||
position: 'right',
|
||||
},
|
||||
],
|
||||
},
|
||||
footer: {
|
||||
style: 'dark',
|
||||
links: [
|
||||
{
|
||||
title: 'Docs',
|
||||
items: [
|
||||
{
|
||||
label: 'Tutorial',
|
||||
to: '/docs/intro',
|
||||
},
|
||||
],
|
||||
},
|
||||
/*{
|
||||
title: 'Community',
|
||||
items: [
|
||||
{
|
||||
label: 'Stack Overflow',
|
||||
href: 'https://stackoverflow.com/questions/tagged/docusaurus',
|
||||
},
|
||||
{
|
||||
label: 'Discord',
|
||||
href: 'https://discordapp.com/invite/docusaurus',
|
||||
},
|
||||
{
|
||||
label: 'Twitter',
|
||||
href: 'https://twitter.com/docusaurus',
|
||||
},
|
||||
],
|
||||
},*/
|
||||
{
|
||||
title: 'More',
|
||||
items: [
|
||||
/*{
|
||||
label: 'Blog',
|
||||
to: '/blog',
|
||||
},*/
|
||||
{
|
||||
label: 'Imprint',
|
||||
href: 'https://kevink.dev/legal/about',
|
||||
},
|
||||
{
|
||||
label: 'Disclaimer',
|
||||
href: 'https://github.com/legal/disclaimer',
|
||||
},
|
||||
{
|
||||
label: 'GitHub',
|
||||
href: 'https://github.com/facebook/docusaurus',
|
||||
},
|
||||
],
|
||||
},
|
||||
],
|
||||
copyright: `CC-BY-4.0 ${new Date().getFullYear()}, Matrix-Veles Contributors`,
|
||||
},
|
||||
prism: {
|
||||
theme: lightCodeTheme,
|
||||
darkTheme: darkCodeTheme,
|
||||
},
|
||||
}),
|
||||
};
|
||||
|
||||
module.exports = config;
|
260
website/i18n/de/code.json
Normal file
|
@ -0,0 +1,260 @@
|
|||
{
|
||||
"theme.ErrorPageContent.title": {
|
||||
"message": "Diese Seite ist abgestürzt.",
|
||||
"description": "The title of the fallback page when the page crashed"
|
||||
},
|
||||
"theme.ErrorPageContent.tryAgain": {
|
||||
"message": "Noch einmal versuchen",
|
||||
"description": "The label of the button to try again when the page crashed"
|
||||
},
|
||||
"theme.NotFound.title": {
|
||||
"message": "Seite nicht gefunden",
|
||||
"description": "The title of the 404 page"
|
||||
},
|
||||
"theme.NotFound.p1": {
|
||||
"message": "Wir konnten leider nicht finden, wonach du suchst.",
|
||||
"description": "The first paragraph of the 404 page"
|
||||
},
|
||||
"theme.NotFound.p2": {
|
||||
"message": "Bitte kontaktieren Sie den Besitzer der Seite, die Sie mit der ursprünglichen URL verlinkt hat, und teilen Sie ihm mit, dass der Link nicht mehr funktioniert.",
|
||||
"description": "The 2nd paragraph of the 404 page"
|
||||
},
|
||||
"theme.BackToTopButton.buttonAriaLabel": {
|
||||
"message": "Zurück nach oben",
|
||||
"description": "The ARIA label for the back to top button"
|
||||
},
|
||||
"theme.AnnouncementBar.closeButtonAriaLabel": {
|
||||
"message": "Schließen",
|
||||
"description": "The ARIA label for close button of announcement bar"
|
||||
},
|
||||
"theme.blog.archive.title": {
|
||||
"message": "Archiv",
|
||||
"description": "The page & hero title of the blog archive page"
|
||||
},
|
||||
"theme.blog.archive.description": {
|
||||
"message": "Archiv",
|
||||
"description": "The page & hero description of the blog archive page"
|
||||
},
|
||||
"theme.blog.paginator.navAriaLabel": {
|
||||
"message": "Navigation der Blog-Listenseite",
|
||||
"description": "The ARIA label for the blog pagination"
|
||||
},
|
||||
"theme.blog.paginator.newerEntries": {
|
||||
"message": "Neuere Einträge",
|
||||
"description": "The label used to navigate to the newer blog posts page (previous page)"
|
||||
},
|
||||
"theme.blog.paginator.olderEntries": {
|
||||
"message": "Ältere Einträge",
|
||||
"description": "The label used to navigate to the older blog posts page (next page)"
|
||||
},
|
||||
"theme.blog.post.readingTime.plurals": {
|
||||
"message": "Eine Min. Lesezeit|{readingTime} Min. Lesezeit",
|
||||
"description": "Pluralized label for \"{readingTime} min read\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
|
||||
},
|
||||
"theme.blog.post.readMoreLabel": {
|
||||
"message": "Erfahre mehr über {title}",
|
||||
"description": "The ARIA label for the link to full blog posts from excerpts"
|
||||
},
|
||||
"theme.blog.post.readMore": {
|
||||
"message": "Weiterlesen",
|
||||
"description": "The label used in blog post item excerpts to link to full blog posts"
|
||||
},
|
||||
"theme.blog.post.paginator.navAriaLabel": {
|
||||
"message": "Navigation der Blogpost Seite",
|
||||
"description": "The ARIA label for the blog posts pagination"
|
||||
},
|
||||
"theme.blog.post.paginator.newerPost": {
|
||||
"message": "Neuerer Beitrag",
|
||||
"description": "The blog post button label to navigate to the newer/previous post"
|
||||
},
|
||||
"theme.blog.post.paginator.olderPost": {
|
||||
"message": "Älterer Beitrag",
|
||||
"description": "The blog post button label to navigate to the older/next post"
|
||||
},
|
||||
"theme.blog.sidebar.navAriaLabel": {
|
||||
"message": "Aktuelle Blog-Beiträge Navigation",
|
||||
"description": "The ARIA label for recent posts in the blog sidebar"
|
||||
},
|
||||
"theme.blog.post.plurals": {
|
||||
"message": "Ein Beitrag|{count} Beiträge",
|
||||
"description": "Pluralized label for \"{count} posts\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
|
||||
},
|
||||
"theme.blog.tagTitle": {
|
||||
"message": "{nPosts} Markiert mit \"{tagName}\"",
|
||||
"description": "The title of the page for a blog tag"
|
||||
},
|
||||
"theme.tags.tagsPageLink": {
|
||||
"message": "Alle Tags anzeigen",
|
||||
"description": "The label of the link targeting the tag list page"
|
||||
},
|
||||
"theme.CodeBlock.copyButtonAriaLabel": {
|
||||
"message": "Code in Zwischenablage kopieren",
|
||||
"description": "The ARIA label for copy code blocks button"
|
||||
},
|
||||
"theme.CodeBlock.copied": {
|
||||
"message": "Kopiert",
|
||||
"description": "The copied button label on code blocks"
|
||||
},
|
||||
"theme.CodeBlock.copy": {
|
||||
"message": "Kopieren",
|
||||
"description": "The copy button label on code blocks"
|
||||
},
|
||||
"theme.docs.DocCard.categoryDescription": {
|
||||
"message": "{count} Elemente",
|
||||
"description": "The default description for a category card in the generated index about how many items this category includes"
|
||||
},
|
||||
"theme.docs.sidebar.expandButtonTitle": {
|
||||
"message": "Seitenleiste ausklappen",
|
||||
"description": "The ARIA label and title attribute for expand button of doc sidebar"
|
||||
},
|
||||
"theme.docs.sidebar.expandButtonAriaLabel": {
|
||||
"message": "Seitenleiste ausklappen",
|
||||
"description": "The ARIA label and title attribute for expand button of doc sidebar"
|
||||
},
|
||||
"theme.docs.paginator.navAriaLabel": {
|
||||
"message": "Navigation der Dokumentationsseiten",
|
||||
"description": "The ARIA label for the docs pagination"
|
||||
},
|
||||
"theme.docs.paginator.previous": {
|
||||
"message": "Vorheriges",
|
||||
"description": "The label used to navigate to the previous doc"
|
||||
},
|
||||
"theme.docs.paginator.next": {
|
||||
"message": "Als Nächstes",
|
||||
"description": "The label used to navigate to the next doc"
|
||||
},
|
||||
"theme.docs.sidebar.collapseButtonTitle": {
|
||||
"message": "Seitenleiste einklappen",
|
||||
"description": "The title attribute for collapse button of doc sidebar"
|
||||
},
|
||||
"theme.docs.sidebar.collapseButtonAriaLabel": {
|
||||
"message": "Seitenleiste einklappen",
|
||||
"description": "The title attribute for collapse button of doc sidebar"
|
||||
},
|
||||
"theme.DocSidebarItem.toggleCollapsedCategoryAriaLabel": {
|
||||
"message": "Einklappbare Seitenleistenkategorie \"{label}\" umschalten",
|
||||
"description": "The ARIA label to toggle the collapsible sidebar category"
|
||||
},
|
||||
"theme.docs.tagDocListPageTitle.nDocsTagged": {
|
||||
"message": "Ein Dokument markiert|{count} Dokumente markiert",
|
||||
"description": "Pluralized label for \"{count} docs tagged\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
|
||||
},
|
||||
"theme.docs.tagDocListPageTitle": {
|
||||
"message": "{nDocsTagged} Markiert mit \"{tagName}\"",
|
||||
"description": "The title of the page for a docs tag"
|
||||
},
|
||||
"theme.docs.versionBadge.label": {
|
||||
"message": "Version: {versionLabel}"
|
||||
},
|
||||
"theme.docs.versions.unreleasedVersionLabel": {
|
||||
"message": "Dies ist eine unveröffentlichte Dokumentation für die Version {siteTitle} {versionLabel}.",
|
||||
"description": "The label used to tell the user that he's browsing an unreleased doc version"
|
||||
},
|
||||
"theme.docs.versions.unmaintainedVersionLabel": {
|
||||
"message": "Dies ist eine Dokumentation für {siteTitle} {versionLabel}, die nicht mehr aktiv gepflegt wird.",
|
||||
"description": "The label used to tell the user that he's browsing an unmaintained doc version"
|
||||
},
|
||||
"theme.docs.versions.latestVersionSuggestionLabel": {
|
||||
"message": "Die aktuelle Dokumentation kann unter {latestVersionLink} ({versionLabel}) gefunden werden.",
|
||||
"description": "The label used to tell the user to check the latest version"
|
||||
},
|
||||
"theme.docs.versions.latestVersionLinkLabel": {
|
||||
"message": "Neuste Version",
|
||||
"description": "The label used for the latest version suggestion link label"
|
||||
},
|
||||
"theme.common.editThisPage": {
|
||||
"message": "Diese Seite bearbeiten",
|
||||
"description": "The link label to edit the current page"
|
||||
},
|
||||
"theme.common.headingLinkTitle": {
|
||||
"message": "Direkter Link zur Überschrift",
|
||||
"description": "Title for link to heading"
|
||||
},
|
||||
"theme.lastUpdated.atDate": {
|
||||
"message": " am {date}",
|
||||
"description": "The words used to describe on which date a page has been last updated"
|
||||
},
|
||||
"theme.lastUpdated.byUser": {
|
||||
"message": " von {user}",
|
||||
"description": "The words used to describe by who the page has been last updated"
|
||||
},
|
||||
"theme.lastUpdated.lastUpdatedAtBy": {
|
||||
"message": "Zuletzt aktualisiert{atDate}{byUser}",
|
||||
"description": "The sentence used to display when a page has been last updated, and by who"
|
||||
},
|
||||
"theme.navbar.mobileSidebarSecondaryMenu.backButtonLabel": {
|
||||
"message": "← Zurück zum Hauptmenü",
|
||||
"description": "The label of the back button to return to main menu, inside the mobile navbar sidebar secondary menu (notably used to display the docs sidebar)"
|
||||
},
|
||||
"theme.navbar.mobileVersionsDropdown.label": {
|
||||
"message": "Versionen",
|
||||
"description": "The label for the navbar versions dropdown on mobile view"
|
||||
},
|
||||
"theme.common.skipToMainContent": {
|
||||
"message": "Zum Hauptinhalt springen",
|
||||
"description": "The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation"
|
||||
},
|
||||
"theme.TOCCollapsible.toggleButtonLabel": {
|
||||
"message": "Auf dieser Seite",
|
||||
"description": "The label used by the button on the collapsible TOC component"
|
||||
},
|
||||
"theme.tags.tagsListLabel": {
|
||||
"message": "Schlagwörter:",
|
||||
"description": "The label alongside a tag list"
|
||||
},
|
||||
"theme.colorToggle.ariaLabel": {
|
||||
"message": "Zwischen Hell- und Dunkelmodus wechseln (derzeit {mode})",
|
||||
"description": "The ARIA label for the navbar color mode toggle"
|
||||
},
|
||||
"theme.colorToggle.ariaLabel.mode.dark": {
|
||||
"message": "Dunkler Modus",
|
||||
"description": "The name for the dark color mode"
|
||||
},
|
||||
"theme.colorToggle.ariaLabel.mode.light": {
|
||||
"message": "Heller Modus",
|
||||
"description": "The name for the light color mode"
|
||||
},
|
||||
"theme.navbar.mobileLanguageDropdown.label": {
|
||||
"message": "Sprachen",
|
||||
"description": "The label for the mobile language switcher dropdown"
|
||||
},
|
||||
"theme.tags.tagsPageTitle": {
|
||||
"message": "Schlagwörter",
|
||||
"description": "The title of the tag list page"
|
||||
},
|
||||
"Protector of your Matrix-harvest!": {
|
||||
"message": "Beschützer deiner Matrix-Ernte!"
|
||||
},
|
||||
"Quick Start Tutorial - 5min ⏱️": {
|
||||
"message": "Schnellstart-Anleitung - 5min ⏱️"
|
||||
},
|
||||
"Welcome": {
|
||||
"message": "Willkommen",
|
||||
"description": "Title of the homepage"
|
||||
},
|
||||
"Matrix-Veles is a next-gen bot for protecting Matrix-chat-rooms against spammers.": {
|
||||
"message": "Matrix-Veles ist ein moderner Bot, um Matrix-Chat-Räume gegen Spammer zu schützen.",
|
||||
"description": "Meta-Description of the homepage"
|
||||
},
|
||||
"Lightweight": {
|
||||
"message": "Ressourcenschonend"
|
||||
},
|
||||
"Veles is built to be light on storage, memory and CPU. Run it on your server, PC, Raspberry Pi or Smart Toaster!": {
|
||||
"message": "Veles ist so konstruiert, dass es geringe Festplattenspeicher, Arbeitsspeicher und CPU-Ressourcen braucht. Führe es auf deinem Server, PC, Raspberry Pi oder Smart Toaster aus!"
|
||||
},
|
||||
"Modern Codebase": {
|
||||
"message": "Moderne Codebase"
|
||||
},
|
||||
"Veles is built from the ground up to deliver you the best experience using GoLang - a next-gen language from Google.": {
|
||||
"message": "Veles ist von Grund auf gebaut, um die beste Erfahrung mit GoLang - einer modernen Sprache von Google - zu liefern."
|
||||
},
|
||||
"And the best thing It\\'s open source! Fork it, make a mod where all bad messages are replaced by cat images! You are free!": {
|
||||
"message": "Und das Beste: Es ist Quelloffen! Forke es, mache eine Mod wo alle bösen Nachrichten mit Katzenbildern ersetzt werden! Du bist frei!"
|
||||
},
|
||||
"Convenient Web Interface": {
|
||||
"message": "Bequeme Weboberfläche"
|
||||
},
|
||||
"Veles can be managed from any PC in the world. All you need to access the modern web interface is an internet connection and a web browser.": {
|
||||
"message": "Veles kann von jedem PC auf der Welt verwaltet werden. Alles, was du für den Zugriff auf die moderne Webschnittstelle benötigst, ist eine Internetverbindung und ein Webbrowser."
|
||||
}
|
||||
}
|
14
website/i18n/de/docusaurus-plugin-content-blog/options.json
Normal file
|
@ -0,0 +1,14 @@
|
|||
{
|
||||
"title": {
|
||||
"message": "Blog",
|
||||
"description": "The title for the blog used in SEO"
|
||||
},
|
||||
"description": {
|
||||
"message": "Blog",
|
||||
"description": "The description for the blog used in SEO"
|
||||
},
|
||||
"sidebar.title": {
|
||||
"message": "Neueste Beiträge",
|
||||
"description": "The label for the left sidebar"
|
||||
}
|
||||
}
|
14
website/i18n/de/docusaurus-plugin-content-docs/current.json
Normal file
|
@ -0,0 +1,14 @@
|
|||
{
|
||||
"version.label": {
|
||||
"message": "Nächste",
|
||||
"description": "The label for version current"
|
||||
},
|
||||
"sidebar.tutorialSidebar.category.Tutorial - Basics": {
|
||||
"message": "Einführung - Grundlagen",
|
||||
"description": "The label for category Tutorial - Basics in sidebar tutorialSidebar"
|
||||
},
|
||||
"sidebar.tutorialSidebar.category.Tutorial - Extras": {
|
||||
"message": "Einführung - Extras",
|
||||
"description": "The label for category Tutorial - Extras in sidebar tutorialSidebar"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,17 @@
|
|||
---
|
||||
sidebar_position: 1
|
||||
---
|
||||
|
||||
# Einleitung
|
||||
|
||||
:::caution
|
||||
|
||||
Diese Dokumentation ist für die Alpha-Version von Matrix-Veles. Veles könnte instabil und seltsam sein.
|
||||
|
||||
:::
|
||||
|
||||
Also bist du an Veles interessiert, das ist großartig! Und tatsächlich bist du genau an die richtige Stelle gekommen.
|
||||
|
||||
Dies ist die Dokumentation für Matrix-Veles. Sie enthält eine hilfreiche Schnellstart-Anleitung sowie detaillierte Referenzen für alles, was du brauchen könntest.
|
||||
|
||||
Wie wäre es mit [der Grundlageneinführung](tutorial-basics/install) zu beginnen?
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"label": "Einführung - Grundlagen",
|
||||
"position": 2
|
||||
}
|
|
@ -0,0 +1,65 @@
|
|||
---
|
||||
sidebar_position: 1
|
||||
---
|
||||
|
||||
# Veles Installation
|
||||
|
||||
:::caution
|
||||
|
||||
Diese Dokumentation ist für die Alpha-Version von Matrix-Veles. Veles könnte instabil und seltsam sein.
|
||||
|
||||
:::
|
||||
|
||||
:::info Software-Empfehlungen
|
||||
|
||||
Obwohl Veles unter Linux, Windows und macOS funktionieren sollte, **empfehlen wir Linux** zu verwenden, da Veles unter diesem entwickelt und getestet wurde! (Veles kann auf arm-basierten Minicomputern laufen)
|
||||
|
||||
:::
|
||||
|
||||
## Docker
|
||||
|
||||
:::tip TODO
|
||||
|
||||
Dieser Abschnitt wird in Kürze kommen.
|
||||
|
||||
:::
|
||||
|
||||
## Bare-Metal
|
||||
|
||||
:::info Vorab-Installationen
|
||||
|
||||
Veles verwendet *MongoDB* als Datenbank-Backend. Bitte [zuerst den MongoDB Community Server](https://www.mongodb.com/try/download/community) installieren.
|
||||
|
||||
:::
|
||||
|
||||
### Verwendung der Binärversion
|
||||
|
||||
Veles stellt fertige Binärdateien für die verbreitetsten Betriebssysteme und Architekturen bereit.
|
||||
|
||||
1. Gehe zur [neuesten Version auf GitHub](https://github.com/Unkn0wnCat/matrix-veles/releases/latest)
|
||||
2. Navigiere unten zu "*Assets*" und finde die richtige Datei für dein Betriebssystem und deine Architektur
|
||||
3. Lade die Datei herunter (Linux/macOS: .tar.gz, Windows: .zip)
|
||||
1. (Optional) Überprüfe die MD5-Summe der heruntergeladenen Datei mit der angegebenen MD5-Summe
|
||||
4. Entpacke die Datei (Dein Betriebssystem sollte Hilfsprogramme haben, um dies zu tun)
|
||||
5. Navigiere in deinem Terminal zum entpackten Verzeichnis
|
||||
6. Führe `./matrix-veles generateConfig` aus um eine Basiskonfiguration zu erstellen<br/>(Linux: Du musst vielleicht die Datei mit `chmod +x ./matrix-veles` ausführbar machen)
|
||||
7. Bearbeite die Konfiguration in `./config.yaml` um dein Setup widerzuspiegeln
|
||||
8. Starte Matrix-Veles mit `./matrix-veles run`
|
||||
|
||||
Du hast jetzt eine voll funktionsfähige Installation von Veles! 🎉 Greife auf das Web-Interface unter http://127.0.0.1:8123 zu!
|
||||
|
||||
### Aus dem Quellcode erstellen
|
||||
|
||||
:::info
|
||||
|
||||
Erfahrung mit GoLang ist hierfür hilfreich!
|
||||
|
||||
:::
|
||||
|
||||
Um aus dem Quellcode zu bauen, stelle sicher, dass du die [neueste Version von GoLang](https://go.dev/dl/) installiert hast.
|
||||
|
||||
1. Öffne ein Terminal und führe `go install github.com/Unkn0wnCat/matrix-veles@latest` aus
|
||||
2. Nach ein paar Minuten sollte das Build abgeschlossen sein
|
||||
3. Führe `matrix-veles generateConfig` in dem Ordner aus, in dem du die Konfiguration speichern möchtest
|
||||
4. Bearbeite die Konfiguration in `./config.yaml` um dein Setup widerzuspiegeln
|
||||
5. Starte Matrix-Veles mit `matrix-veles run` im selben Verzeichnis wie deine Konfiguration
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"label": "Einführung - Extras",
|
||||
"position": 3
|
||||
}
|
|
@ -0,0 +1,11 @@
|
|||
---
|
||||
sidebar_position: 1
|
||||
---
|
||||
|
||||
# Prometheus mit Veles verwenden
|
||||
|
||||
Die Verwendung von Prometheus mit Veles ist sehr einfach, da Veles standardmäßig einen kompatiblen Metrikendpunkt bereitstellt.
|
||||
|
||||
Um die Metriken zu verwenden, fügen Sie einfach einen Scrape-Job zu Prometheus hinzu, um die Metriken von `http://[dein-server-hier]:8123/metrics` zu ziehen.
|
||||
|
||||
Und das war's auch schon, du hast jetzt Zugriff auf ein paar relevante Metriken um die Gesundheit deines Veles zu überwachen! 🎉
|
30
website/i18n/de/docusaurus-theme-classic/footer.json
Normal file
|
@ -0,0 +1,30 @@
|
|||
{
|
||||
"link.title.Docs": {
|
||||
"message": "Dokumentation",
|
||||
"description": "The title of the footer links column with title=Docs in the footer"
|
||||
},
|
||||
"link.title.More": {
|
||||
"message": "Mehr",
|
||||
"description": "The title of the footer links column with title=More in the footer"
|
||||
},
|
||||
"link.item.label.Tutorial": {
|
||||
"message": "Einführung",
|
||||
"description": "The label of footer link with label=Tutorial linking to /docs/intro"
|
||||
},
|
||||
"link.item.label.Imprint": {
|
||||
"message": "Impressum",
|
||||
"description": "The label of footer link with label=Imprint linking to https://kevink.dev/legal/about"
|
||||
},
|
||||
"link.item.label.Disclaimer": {
|
||||
"message": "Disclaimer",
|
||||
"description": "The label of footer link with label=Disclaimer linking to https://github.com/legal/disclaimer"
|
||||
},
|
||||
"link.item.label.GitHub": {
|
||||
"message": "GitHub",
|
||||
"description": "The label of footer link with label=GitHub linking to https://github.com/facebook/docusaurus"
|
||||
},
|
||||
"copyright": {
|
||||
"message": "CC-BY-4.0 2022, Matrix-Veles-Mitwirkende",
|
||||
"description": "The footer copyright"
|
||||
}
|
||||
}
|
18
website/i18n/de/docusaurus-theme-classic/navbar.json
Normal file
|
@ -0,0 +1,18 @@
|
|||
{
|
||||
"title": {
|
||||
"message": "Matrix-Veles",
|
||||
"description": "The title in the navbar"
|
||||
},
|
||||
"item.label.Documentation": {
|
||||
"message": "Dokumentation",
|
||||
"description": "Navbar item with label Documentation"
|
||||
},
|
||||
"item.label.GitHub": {
|
||||
"message": "GitHub",
|
||||
"description": "Navbar item with label GitHub"
|
||||
},
|
||||
"item.label.Download": {
|
||||
"message": "Herunterladen",
|
||||
"description": "Navbar item with label Download"
|
||||
}
|
||||
}
|
260
website/i18n/en/code.json
Normal file
|
@ -0,0 +1,260 @@
|
|||
{
|
||||
"theme.ErrorPageContent.title": {
|
||||
"message": "This page crashed.",
|
||||
"description": "The title of the fallback page when the page crashed"
|
||||
},
|
||||
"theme.ErrorPageContent.tryAgain": {
|
||||
"message": "Try again",
|
||||
"description": "The label of the button to try again when the page crashed"
|
||||
},
|
||||
"theme.NotFound.title": {
|
||||
"message": "Page Not Found",
|
||||
"description": "The title of the 404 page"
|
||||
},
|
||||
"theme.NotFound.p1": {
|
||||
"message": "We could not find what you were looking for.",
|
||||
"description": "The first paragraph of the 404 page"
|
||||
},
|
||||
"theme.NotFound.p2": {
|
||||
"message": "Please contact the owner of the site that linked you to the original URL and let them know their link is broken.",
|
||||
"description": "The 2nd paragraph of the 404 page"
|
||||
},
|
||||
"theme.BackToTopButton.buttonAriaLabel": {
|
||||
"message": "Scroll back to top",
|
||||
"description": "The ARIA label for the back to top button"
|
||||
},
|
||||
"theme.AnnouncementBar.closeButtonAriaLabel": {
|
||||
"message": "Close",
|
||||
"description": "The ARIA label for close button of announcement bar"
|
||||
},
|
||||
"theme.blog.archive.title": {
|
||||
"message": "Archive",
|
||||
"description": "The page & hero title of the blog archive page"
|
||||
},
|
||||
"theme.blog.archive.description": {
|
||||
"message": "Archive",
|
||||
"description": "The page & hero description of the blog archive page"
|
||||
},
|
||||
"theme.blog.paginator.navAriaLabel": {
|
||||
"message": "Blog list page navigation",
|
||||
"description": "The ARIA label for the blog pagination"
|
||||
},
|
||||
"theme.blog.paginator.newerEntries": {
|
||||
"message": "Newer Entries",
|
||||
"description": "The label used to navigate to the newer blog posts page (previous page)"
|
||||
},
|
||||
"theme.blog.paginator.olderEntries": {
|
||||
"message": "Older Entries",
|
||||
"description": "The label used to navigate to the older blog posts page (next page)"
|
||||
},
|
||||
"theme.blog.post.readingTime.plurals": {
|
||||
"message": "One min read|{readingTime} min read",
|
||||
"description": "Pluralized label for \"{readingTime} min read\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
|
||||
},
|
||||
"theme.blog.post.readMoreLabel": {
|
||||
"message": "Read more about {title}",
|
||||
"description": "The ARIA label for the link to full blog posts from excerpts"
|
||||
},
|
||||
"theme.blog.post.readMore": {
|
||||
"message": "Read More",
|
||||
"description": "The label used in blog post item excerpts to link to full blog posts"
|
||||
},
|
||||
"theme.blog.post.paginator.navAriaLabel": {
|
||||
"message": "Blog post page navigation",
|
||||
"description": "The ARIA label for the blog posts pagination"
|
||||
},
|
||||
"theme.blog.post.paginator.newerPost": {
|
||||
"message": "Newer Post",
|
||||
"description": "The blog post button label to navigate to the newer/previous post"
|
||||
},
|
||||
"theme.blog.post.paginator.olderPost": {
|
||||
"message": "Older Post",
|
||||
"description": "The blog post button label to navigate to the older/next post"
|
||||
},
|
||||
"theme.blog.sidebar.navAriaLabel": {
|
||||
"message": "Blog recent posts navigation",
|
||||
"description": "The ARIA label for recent posts in the blog sidebar"
|
||||
},
|
||||
"theme.blog.post.plurals": {
|
||||
"message": "One post|{count} posts",
|
||||
"description": "Pluralized label for \"{count} posts\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
|
||||
},
|
||||
"theme.blog.tagTitle": {
|
||||
"message": "{nPosts} tagged with \"{tagName}\"",
|
||||
"description": "The title of the page for a blog tag"
|
||||
},
|
||||
"theme.tags.tagsPageLink": {
|
||||
"message": "View All Tags",
|
||||
"description": "The label of the link targeting the tag list page"
|
||||
},
|
||||
"theme.CodeBlock.copyButtonAriaLabel": {
|
||||
"message": "Copy code to clipboard",
|
||||
"description": "The ARIA label for copy code blocks button"
|
||||
},
|
||||
"theme.CodeBlock.copied": {
|
||||
"message": "Copied",
|
||||
"description": "The copied button label on code blocks"
|
||||
},
|
||||
"theme.CodeBlock.copy": {
|
||||
"message": "Copy",
|
||||
"description": "The copy button label on code blocks"
|
||||
},
|
||||
"theme.docs.DocCard.categoryDescription": {
|
||||
"message": "{count} items",
|
||||
"description": "The default description for a category card in the generated index about how many items this category includes"
|
||||
},
|
||||
"theme.docs.sidebar.expandButtonTitle": {
|
||||
"message": "Expand sidebar",
|
||||
"description": "The ARIA label and title attribute for expand button of doc sidebar"
|
||||
},
|
||||
"theme.docs.sidebar.expandButtonAriaLabel": {
|
||||
"message": "Expand sidebar",
|
||||
"description": "The ARIA label and title attribute for expand button of doc sidebar"
|
||||
},
|
||||
"theme.docs.paginator.navAriaLabel": {
|
||||
"message": "Docs pages navigation",
|
||||
"description": "The ARIA label for the docs pagination"
|
||||
},
|
||||
"theme.docs.paginator.previous": {
|
||||
"message": "Previous",
|
||||
"description": "The label used to navigate to the previous doc"
|
||||
},
|
||||
"theme.docs.paginator.next": {
|
||||
"message": "Next",
|
||||
"description": "The label used to navigate to the next doc"
|
||||
},
|
||||
"theme.docs.sidebar.collapseButtonTitle": {
|
||||
"message": "Collapse sidebar",
|
||||
"description": "The title attribute for collapse button of doc sidebar"
|
||||
},
|
||||
"theme.docs.sidebar.collapseButtonAriaLabel": {
|
||||
"message": "Collapse sidebar",
|
||||
"description": "The title attribute for collapse button of doc sidebar"
|
||||
},
|
||||
"theme.DocSidebarItem.toggleCollapsedCategoryAriaLabel": {
|
||||
"message": "Toggle the collapsible sidebar category '{label}'",
|
||||
"description": "The ARIA label to toggle the collapsible sidebar category"
|
||||
},
|
||||
"theme.docs.tagDocListPageTitle.nDocsTagged": {
|
||||
"message": "One doc tagged|{count} docs tagged",
|
||||
"description": "Pluralized label for \"{count} docs tagged\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
|
||||
},
|
||||
"theme.docs.tagDocListPageTitle": {
|
||||
"message": "{nDocsTagged} with \"{tagName}\"",
|
||||
"description": "The title of the page for a docs tag"
|
||||
},
|
||||
"theme.docs.versionBadge.label": {
|
||||
"message": "Version: {versionLabel}"
|
||||
},
|
||||
"theme.docs.versions.unreleasedVersionLabel": {
|
||||
"message": "This is unreleased documentation for {siteTitle} {versionLabel} version.",
|
||||
"description": "The label used to tell the user that he's browsing an unreleased doc version"
|
||||
},
|
||||
"theme.docs.versions.unmaintainedVersionLabel": {
|
||||
"message": "This is documentation for {siteTitle} {versionLabel}, which is no longer actively maintained.",
|
||||
"description": "The label used to tell the user that he's browsing an unmaintained doc version"
|
||||
},
|
||||
"theme.docs.versions.latestVersionSuggestionLabel": {
|
||||
"message": "For up-to-date documentation, see the {latestVersionLink} ({versionLabel}).",
|
||||
"description": "The label used to tell the user to check the latest version"
|
||||
},
|
||||
"theme.docs.versions.latestVersionLinkLabel": {
|
||||
"message": "latest version",
|
||||
"description": "The label used for the latest version suggestion link label"
|
||||
},
|
||||
"theme.common.editThisPage": {
|
||||
"message": "Edit this page",
|
||||
"description": "The link label to edit the current page"
|
||||
},
|
||||
"theme.common.headingLinkTitle": {
|
||||
"message": "Direct link to heading",
|
||||
"description": "Title for link to heading"
|
||||
},
|
||||
"theme.lastUpdated.atDate": {
|
||||
"message": " on {date}",
|
||||
"description": "The words used to describe on which date a page has been last updated"
|
||||
},
|
||||
"theme.lastUpdated.byUser": {
|
||||
"message": " by {user}",
|
||||
"description": "The words used to describe by who the page has been last updated"
|
||||
},
|
||||
"theme.lastUpdated.lastUpdatedAtBy": {
|
||||
"message": "Last updated{atDate}{byUser}",
|
||||
"description": "The sentence used to display when a page has been last updated, and by who"
|
||||
},
|
||||
"theme.navbar.mobileSidebarSecondaryMenu.backButtonLabel": {
|
||||
"message": "← Back to main menu",
|
||||
"description": "The label of the back button to return to main menu, inside the mobile navbar sidebar secondary menu (notably used to display the docs sidebar)"
|
||||
},
|
||||
"theme.navbar.mobileVersionsDropdown.label": {
|
||||
"message": "Versions",
|
||||
"description": "The label for the navbar versions dropdown on mobile view"
|
||||
},
|
||||
"theme.common.skipToMainContent": {
|
||||
"message": "Skip to main content",
|
||||
"description": "The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation"
|
||||
},
|
||||
"theme.TOCCollapsible.toggleButtonLabel": {
|
||||
"message": "On this page",
|
||||
"description": "The label used by the button on the collapsible TOC component"
|
||||
},
|
||||
"theme.tags.tagsListLabel": {
|
||||
"message": "Tags:",
|
||||
"description": "The label alongside a tag list"
|
||||
},
|
||||
"theme.colorToggle.ariaLabel": {
|
||||
"message": "Switch between dark and light mode (currently {mode})",
|
||||
"description": "The ARIA label for the navbar color mode toggle"
|
||||
},
|
||||
"theme.colorToggle.ariaLabel.mode.dark": {
|
||||
"message": "dark mode",
|
||||
"description": "The name for the dark color mode"
|
||||
},
|
||||
"theme.colorToggle.ariaLabel.mode.light": {
|
||||
"message": "light mode",
|
||||
"description": "The name for the light color mode"
|
||||
},
|
||||
"theme.navbar.mobileLanguageDropdown.label": {
|
||||
"message": "Languages",
|
||||
"description": "The label for the mobile language switcher dropdown"
|
||||
},
|
||||
"theme.tags.tagsPageTitle": {
|
||||
"message": "Tags",
|
||||
"description": "The title of the tag list page"
|
||||
},
|
||||
"Protector of your Matrix-harvest!": {
|
||||
"message": "Protector of your Matrix-harvest!"
|
||||
},
|
||||
"Quick Start Tutorial - 5min ⏱️": {
|
||||
"message": "Quick Start Tutorial - 5min ⏱️"
|
||||
},
|
||||
"Welcome": {
|
||||
"message": "Welcome",
|
||||
"description": "Title of the homepage"
|
||||
},
|
||||
"Matrix-Veles is a next-gen bot for protecting Matrix-chat-rooms against spammers.": {
|
||||
"message": "Matrix-Veles is a next-gen bot for protecting Matrix-chat-rooms against spammers.",
|
||||
"description": "Meta-Description of the homepage"
|
||||
},
|
||||
"Lightweight": {
|
||||
"message": "Lightweight"
|
||||
},
|
||||
"Veles is built to be light on storage, memory and CPU. Run it on your server, PC, Raspberry Pi or Smart Toaster!": {
|
||||
"message": "Veles is built to be light on storage, memory and CPU. Run it on your server, PC, Raspberry Pi or Smart Toaster!"
|
||||
},
|
||||
"Modern Codebase": {
|
||||
"message": "Modern Codebase"
|
||||
},
|
||||
"Veles is built from the ground up to deliver you the best experience using GoLang - a next-gen language from Google.": {
|
||||
"message": "Veles is built from the ground up to deliver you the best experience using GoLang - a next-gen language from Google."
|
||||
},
|
||||
"And the best thing It\\'s open source! Fork it, make a mod where all bad messages are replaced by cat images! You are free!": {
|
||||
"message": "And the best thing It\\'s open source! Fork it, make a mod where all bad messages are replaced by cat images! You are free!"
|
||||
},
|
||||
"Convenient Web Interface": {
|
||||
"message": "Convenient Web Interface"
|
||||
},
|
||||
"Veles can be managed from any PC in the world. All you need to access the modern web interface is an internet connection and a web browser.": {
|
||||
"message": "Veles can be managed from any PC in the world. All you need to access the modern web interface is an internet connection and a web browser."
|
||||
}
|
||||
}
|
14
website/i18n/en/docusaurus-plugin-content-blog/options.json
Normal file
|
@ -0,0 +1,14 @@
|
|||
{
|
||||
"title": {
|
||||
"message": "Blog",
|
||||
"description": "The title for the blog used in SEO"
|
||||
},
|
||||
"description": {
|
||||
"message": "Blog",
|
||||
"description": "The description for the blog used in SEO"
|
||||
},
|
||||
"sidebar.title": {
|
||||
"message": "Recent posts",
|
||||
"description": "The label for the left sidebar"
|
||||
}
|
||||
}
|
14
website/i18n/en/docusaurus-plugin-content-docs/current.json
Normal file
|
@ -0,0 +1,14 @@
|
|||
{
|
||||
"version.label": {
|
||||
"message": "Next",
|
||||
"description": "The label for version current"
|
||||
},
|
||||
"sidebar.tutorialSidebar.category.Tutorial - Basics": {
|
||||
"message": "Tutorial - Basics",
|
||||
"description": "The label for category Tutorial - Basics in sidebar tutorialSidebar"
|
||||
},
|
||||
"sidebar.tutorialSidebar.category.Tutorial - Extras": {
|
||||
"message": "Tutorial - Extras",
|
||||
"description": "The label for category Tutorial - Extras in sidebar tutorialSidebar"
|
||||
}
|
||||
}
|
30
website/i18n/en/docusaurus-theme-classic/footer.json
Normal file
|
@ -0,0 +1,30 @@
|
|||
{
|
||||
"link.title.Docs": {
|
||||
"message": "Docs",
|
||||
"description": "The title of the footer links column with title=Docs in the footer"
|
||||
},
|
||||
"link.title.More": {
|
||||
"message": "More",
|
||||
"description": "The title of the footer links column with title=More in the footer"
|
||||
},
|
||||
"link.item.label.Tutorial": {
|
||||
"message": "Tutorial",
|
||||
"description": "The label of footer link with label=Tutorial linking to /docs/intro"
|
||||
},
|
||||
"link.item.label.Imprint": {
|
||||
"message": "Imprint",
|
||||
"description": "The label of footer link with label=Imprint linking to https://kevink.dev/legal/about"
|
||||
},
|
||||
"link.item.label.Disclaimer": {
|
||||
"message": "Disclaimer",
|
||||
"description": "The label of footer link with label=Disclaimer linking to https://github.com/legal/disclaimer"
|
||||
},
|
||||
"link.item.label.GitHub": {
|
||||
"message": "GitHub",
|
||||
"description": "The label of footer link with label=GitHub linking to https://github.com/facebook/docusaurus"
|
||||
},
|
||||
"copyright": {
|
||||
"message": "CC-BY-4.0 2022, Matrix-Veles Contributors",
|
||||
"description": "The footer copyright"
|
||||
}
|
||||
}
|
18
website/i18n/en/docusaurus-theme-classic/navbar.json
Normal file
|
@ -0,0 +1,18 @@
|
|||
{
|
||||
"title": {
|
||||
"message": "Matrix-Veles",
|
||||
"description": "The title in the navbar"
|
||||
},
|
||||
"item.label.Documentation": {
|
||||
"message": "Documentation",
|
||||
"description": "Navbar item with label Documentation"
|
||||
},
|
||||
"item.label.GitHub": {
|
||||
"message": "GitHub",
|
||||
"description": "Navbar item with label GitHub"
|
||||
},
|
||||
"item.label.Download": {
|
||||
"message": "Download",
|
||||
"description": "Navbar item with label Download"
|
||||
}
|
||||
}
|
48
website/package.json
Normal file
|
@ -0,0 +1,48 @@
|
|||
{
|
||||
"name": "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",
|
||||
"crowdin": "crowdin",
|
||||
"update-translations": "docusaurus write-translations && crowdin upload",
|
||||
"download-translations": "crowdin download",
|
||||
"crowdin:sync": "docusaurus write-translations && crowdin upload && crowdin download"
|
||||
},
|
||||
"dependencies": {
|
||||
"@crowdin/cli": "3",
|
||||
"@docusaurus/core": "2.0.0-beta.16",
|
||||
"@docusaurus/preset-classic": "2.0.0-beta.16",
|
||||
"@mdx-js/react": "^1.6.22",
|
||||
"clsx": "^1.1.1",
|
||||
"prism-react-renderer": "^1.2.1",
|
||||
"react": "^17.0.1",
|
||||
"react-dom": "^17.0.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@docusaurus/module-type-aliases": "2.0.0-beta.16",
|
||||
"@tsconfig/docusaurus": "^1.0.4",
|
||||
"typescript": "^4.5.2"
|
||||
},
|
||||
"browserslist": {
|
||||
"production": [
|
||||
">0.5%",
|
||||
"not dead",
|
||||
"not op_mini all"
|
||||
],
|
||||
"development": [
|
||||
"last 1 chrome version",
|
||||
"last 1 firefox version",
|
||||
"last 1 safari version"
|
||||
]
|
||||
}
|
||||
}
|
31
website/sidebars.js
Normal file
|
@ -0,0 +1,31 @@
|
|||
/**
|
||||
* 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.
|
||||
*/
|
||||
|
||||
// @ts-check
|
||||
|
||||
/** @type {import('@docusaurus/plugin-content-docs').SidebarsConfig} */
|
||||
const sidebars = {
|
||||
// By default, Docusaurus generates a sidebar from the docs folder structure
|
||||
tutorialSidebar: [{type: 'autogenerated', dirName: '.'}],
|
||||
|
||||
// But you can create a sidebar manually
|
||||
/*
|
||||
tutorialSidebar: [
|
||||
{
|
||||
type: 'category',
|
||||
label: 'Tutorial',
|
||||
items: ['hello'],
|
||||
},
|
||||
],
|
||||
*/
|
||||
};
|
||||
|
||||
module.exports = sidebars;
|
79
website/src/components/HomepageFeatures/index.tsx
Normal file
|
@ -0,0 +1,79 @@
|
|||
import React from 'react';
|
||||
import clsx from 'clsx';
|
||||
import styles from './styles.module.css';
|
||||
|
||||
import Translate, {translate} from '@docusaurus/Translate';
|
||||
|
||||
type FeatureItem = {
|
||||
title: string;
|
||||
image: string;
|
||||
description: JSX.Element;
|
||||
};
|
||||
|
||||
const FeatureList: FeatureItem[] = [
|
||||
{
|
||||
title: translate({message:'Lightweight'}),
|
||||
image: null,
|
||||
description: (
|
||||
<Translate>
|
||||
Veles is built to be light on storage, memory and CPU. Run it
|
||||
on your server, PC, Raspberry Pi or Smart Toaster!
|
||||
</Translate>
|
||||
),
|
||||
},
|
||||
{
|
||||
title: translate({message:'Modern Codebase'}),
|
||||
image: null,
|
||||
description:
|
||||
<>
|
||||
<Translate>
|
||||
Veles is built from the ground up to deliver you the best
|
||||
experience using GoLang - a next-gen language from Google.</Translate>
|
||||
<br/>
|
||||
<Translate>
|
||||
And the best thing It\'s open source! Fork it, make a mod where
|
||||
all bad messages are replaced by cat images! You are free!
|
||||
</Translate>
|
||||
</>
|
||||
,
|
||||
},
|
||||
{
|
||||
title: translate({message:'Convenient Web Interface'}),
|
||||
image: null,
|
||||
description: (
|
||||
<Translate>
|
||||
Veles can be managed from any PC in the world. All you
|
||||
need to access the modern web interface is an internet
|
||||
connection and a web browser.
|
||||
</Translate>
|
||||
),
|
||||
},
|
||||
];
|
||||
|
||||
function Feature({title, image, description}: FeatureItem) {
|
||||
return (
|
||||
<div className={clsx('col col--4')}>
|
||||
{/*<div className="text--center">
|
||||
<img className={styles.featureSvg} alt={title} src={image} />
|
||||
</div>*/}
|
||||
<div className="text--center padding-horiz--md">
|
||||
<h3>{title}</h3>
|
||||
<p>{description}</p>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
export default function HomepageFeatures(): JSX.Element {
|
||||
return (
|
||||
<section className={styles.features}>
|
||||
<div className="container">
|
||||
<div className="row">
|
||||
{FeatureList.map((props, idx) => (
|
||||
<Feature key={idx} {...props} />
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
);
|
||||
}
|
11
website/src/components/HomepageFeatures/styles.module.css
Normal file
|
@ -0,0 +1,11 @@
|
|||
.features {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
padding: 2rem 0;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.featureSvg {
|
||||
height: 200px;
|
||||
width: 200px;
|
||||
}
|
40
website/src/css/custom.css
Normal file
|
@ -0,0 +1,40 @@
|
|||
/**
|
||||
* 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.
|
||||
*/
|
||||
|
||||
/* You can override the default Infima variables here. */
|
||||
:root {
|
||||
--ifm-color-primary: #007300;
|
||||
--ifm-color-primary-dark: #006500;
|
||||
--ifm-color-primary-darker: #005400;
|
||||
--ifm-color-primary-darkest: #003a00;
|
||||
--ifm-color-primary-light: #008100;
|
||||
--ifm-color-primary-lighter: #099f09;
|
||||
--ifm-color-primary-lightest: #16bb16;
|
||||
--ifm-code-font-size: 95%;
|
||||
}
|
||||
|
||||
/* For readability concerns, you should choose a lighter palette in dark mode. */
|
||||
[data-theme='dark'] {
|
||||
--ifm-color-primary: #008100;
|
||||
--ifm-color-primary-dark: #007300;
|
||||
--ifm-color-primary-darker: #006500;
|
||||
--ifm-color-primary-darkest: #005400;
|
||||
--ifm-color-primary-light: #099f09;
|
||||
--ifm-color-primary-lighter: #16bb16;
|
||||
--ifm-color-primary-lightest: #20cb20;
|
||||
--ifm-code-font-size: 95%;
|
||||
}
|
||||
|
||||
.docusaurus-highlight-code-line {
|
||||
background-color: rgba(0, 0, 0, 0.1);
|
||||
display: block;
|
||||
margin: 0 calc(-1 * var(--ifm-pre-padding));
|
||||
padding: 0 var(--ifm-pre-padding);
|
||||
}
|
||||
|
||||
[data-theme='dark'] .docusaurus-highlight-code-line {
|
||||
background-color: rgba(0, 0, 0, 0.3);
|
||||
}
|
23
website/src/pages/index.module.css
Normal file
|
@ -0,0 +1,23 @@
|
|||
/**
|
||||
* 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: 966px) {
|
||||
.heroBanner {
|
||||
padding: 2rem;
|
||||
}
|
||||
}
|
||||
|
||||
.buttons {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
44
website/src/pages/index.tsx
Normal file
|
@ -0,0 +1,44 @@
|
|||
import React from 'react';
|
||||
import clsx from 'clsx';
|
||||
import Layout from '@theme/Layout';
|
||||
import Link from '@docusaurus/Link';
|
||||
import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
|
||||
import styles from './index.module.css';
|
||||
import HomepageFeatures from '@site/src/components/HomepageFeatures';
|
||||
|
||||
import Translate, {translate} from '@docusaurus/Translate';
|
||||
|
||||
function HomepageHeader() {
|
||||
const {siteConfig} = useDocusaurusContext();
|
||||
return (
|
||||
<header className={clsx('hero hero--primary', styles.heroBanner)}>
|
||||
<div className="container">
|
||||
<h1 className="hero__title">{siteConfig.title}</h1>
|
||||
<p className="hero__subtitle"><Translate>Protector of your Matrix-harvest!</Translate></p>
|
||||
<div className={styles.buttons}>
|
||||
<Link
|
||||
className="button button--secondary button--lg"
|
||||
to="/docs/tutorial-basics/install">
|
||||
<Translate>
|
||||
{"Quick Start Tutorial - 5min ⏱️"}
|
||||
</Translate>
|
||||
</Link>
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
);
|
||||
}
|
||||
|
||||
export default function Home(): JSX.Element {
|
||||
const {siteConfig} = useDocusaurusContext();
|
||||
return (
|
||||
<Layout
|
||||
title={translate({message: `Welcome`, description: "Title of the homepage"})}
|
||||
description={translate({message: "Matrix-Veles is a next-gen bot for protecting Matrix-chat-rooms against spammers.", description: "Meta-Description of the homepage"})}>
|
||||
<HomepageHeader />
|
||||
<main>
|
||||
<HomepageFeatures />
|
||||
</main>
|
||||
</Layout>
|
||||
);
|
||||
}
|
0
website/static/.nojekyll
Normal file
BIN
website/static/img/android-chrome-192x192.png
Normal file
After Width: | Height: | Size: 13 KiB |
BIN
website/static/img/android-chrome-512x512.png
Normal file
After Width: | Height: | Size: 37 KiB |
BIN
website/static/img/apple-touch-icon.png
Normal file
After Width: | Height: | Size: 12 KiB |
BIN
website/static/img/favicon-16x16.png
Normal file
After Width: | Height: | Size: 549 B |
BIN
website/static/img/favicon-32x32.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
BIN
website/static/img/favicon.ico
Normal file
After Width: | Height: | Size: 15 KiB |
29
website/static/img/logo.svg
Normal file
|
@ -0,0 +1,29 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg width="120" height="120" version="1.1" viewBox="0 0 120 120" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<defs>
|
||||
<linearGradient id="linearGradient43644">
|
||||
<stop stop-color="#007300" offset="0"/>
|
||||
<stop stop-color="#007300" stop-opacity=".0072181" offset="1"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="linearGradient1301" x1="49.693" x2="69.839" y1="25.512" y2="25.512" gradientTransform="translate(4,8)" gradientUnits="userSpaceOnUse" xlink:href="#linearGradient43644"/>
|
||||
<linearGradient id="linearGradient1303" x1="49.777" x2="70.07" y1="81.546" y2="81.546" gradientTransform="translate(0,6)" gradientUnits="userSpaceOnUse" xlink:href="#linearGradient43644"/>
|
||||
<linearGradient id="linearGradient31669" x1="91.453" x2="72.905" y1="48.722" y2="48.722" gradientUnits="userSpaceOnUse" xlink:href="#linearGradient43644"/>
|
||||
</defs>
|
||||
<g transform="translate(-3.6704 12.24)" fill="url(#linearGradient31669)" style="shape-inside:url(#rect8261);white-space:pre" aria-label="101 011 110 100">
|
||||
<path d="m74.758 17.636h4.2969v-14.831l-4.6745 0.9375v-2.3958l4.6484-0.9375h2.6302v17.227h4.2969v2.2135h-11.198z"/>
|
||||
<path d="m96.894 2.1413q-2.0313 0-3.0599 2.0052-1.0156 1.9922-1.0156 6.0026 0 3.9974 1.0156 6.0026 1.0286 1.9922 3.0599 1.9922 2.0443 0 3.0599-1.9922 1.0286-2.0052 1.0286-6.0026 0-4.0104-1.0286-6.0026-1.0156-2.0052-3.0599-2.0052zm0-2.0833q3.2682 0 4.987 2.5911 1.7318 2.5781 1.7318 7.5 0 4.9089-1.7318 7.5-1.7188 2.5781-4.987 2.5781-3.2682 0-5-2.5781-1.7188-2.5911-1.7188-7.5 0-4.9219 1.7188-7.5 1.7318-2.5911 5-2.5911z"/>
|
||||
<path d="m108.69 17.636h4.2969v-14.831l-4.6745 0.9375v-2.3958l4.6484-0.9375h2.6302v17.227h4.2969v2.2135h-11.198z"/>
|
||||
<path d="m79.928 27.475q-2.0313 0-3.0599 2.0052-1.0156 1.9922-1.0156 6.0026 0 3.9974 1.0156 6.0026 1.0286 1.9922 3.0599 1.9922 2.0443 0 3.0599-1.9922 1.0286-2.0052 1.0286-6.0026 0-4.0104-1.0286-6.0026-1.0156-2.0052-3.0599-2.0052zm0-2.0833q3.2682 0 4.987 2.5911 1.7318 2.5781 1.7318 7.5 0 4.9089-1.7318 7.5-1.7188 2.5781-4.987 2.5781t-5-2.5781q-1.7188-2.5911-1.7188-7.5 0-4.9219 1.7188-7.5 1.7318-2.5911 5-2.5911z"/>
|
||||
<path d="m91.725 42.969h4.2969v-14.831l-4.6745 0.9375v-2.3958l4.6484-0.9375h2.6302v17.227h4.2969v2.2135h-11.198z"/>
|
||||
<path d="m108.69 42.969h4.2969v-14.831l-4.6745 0.9375v-2.3958l4.6484-0.9375h2.6302v17.227h4.2969v2.2135h-11.198z"/>
|
||||
<path d="m74.758 68.303h4.2969v-14.831l-4.6745 0.9375v-2.3958l4.6484-0.9375h2.6302v17.227h4.2969v2.2135h-11.198z"/>
|
||||
<path d="m91.725 68.303h4.2969v-14.831l-4.6745 0.9375v-2.3958l4.6484-0.9375h2.6302v17.227h4.2969v2.2135h-11.198z"/>
|
||||
<path d="m113.86 52.808q-2.0312 0-3.0599 2.0052-1.0156 1.9922-1.0156 6.0026 0 3.9974 1.0156 6.0026 1.0286 1.9922 3.0599 1.9922 2.0443 0 3.0599-1.9922 1.0286-2.0052 1.0286-6.0026 0-4.0104-1.0286-6.0026-1.0156-2.0052-3.0599-2.0052zm0-2.0833q3.2682 0 4.987 2.5911 1.7318 2.5781 1.7318 7.5 0 4.9089-1.7318 7.5-1.7188 2.5781-4.987 2.5781t-5-2.5781q-1.7188-2.5911-1.7188-7.5 0-4.9219 1.7188-7.5 1.7318-2.5911 5-2.5911z"/>
|
||||
<path d="m74.758 93.636h4.2969v-14.831l-4.6745 0.9375v-2.3958l4.6484-0.9375h2.6302v17.227h4.2969v2.2135h-11.198z"/>
|
||||
<path d="m96.894 78.141q-2.0313 0-3.0599 2.0052-1.0156 1.9922-1.0156 6.0026 0 3.9974 1.0156 6.0026 1.0286 1.9922 3.0599 1.9922 2.0443 0 3.0599-1.9922 1.0286-2.0052 1.0286-6.0026 0-4.0104-1.0286-6.0026-1.0156-2.0052-3.0599-2.0052zm0-2.0833q3.2682 0 4.987 2.5911 1.7318 2.5781 1.7318 7.5 0 4.9089-1.7318 7.5-1.7188 2.5781-4.987 2.5781-3.2682 0-5-2.5781-1.7188-2.5911-1.7188-7.5 0-4.9219 1.7188-7.5 1.7318-2.5911 5-2.5911z"/>
|
||||
<path d="m113.86 78.141q-2.0312 0-3.0599 2.0052-1.0156 1.9922-1.0156 6.0026 0 3.9974 1.0156 6.0026 1.0286 1.9922 3.0599 1.9922 2.0443 0 3.0599-1.9922 1.0286-2.0052 1.0286-6.0026 0-4.0104-1.0286-6.0026-1.0156-2.0052-3.0599-2.0052zm0-2.0833q3.2682 0 4.987 2.5911 1.7318 2.5781 1.7318 7.5 0 4.9089-1.7318 7.5-1.7188 2.5781-4.987 2.5781t-5-2.5781q-1.7188-2.5911-1.7188-7.5 0-4.9219 1.7188-7.5 1.7318-2.5911 5-2.5911z"/>
|
||||
</g>
|
||||
<path d="m4.0226 8.0649 30.026 50.894h59.933l30.009-50.864" fill="none" stroke="url(#linearGradient1301)" stroke-linecap="round" stroke-linejoin="round" stroke-width="4.048"/>
|
||||
<path d="m36.324 67.382h47.484l-23.793 40.329z" fill="none" stroke="url(#linearGradient1303)" stroke-linejoin="round" stroke-width="4.048"/>
|
||||
</svg>
|
After Width: | Height: | Size: 4.3 KiB |
BIN
website/static/src/logo.png
Normal file
After Width: | Height: | Size: 58 KiB |
119
website/static/src/logo_inkscape.svg
Normal file
|
@ -0,0 +1,119 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="120"
|
||||
height="120"
|
||||
viewBox="0 0 120 120"
|
||||
version="1.1"
|
||||
id="svg5"
|
||||
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
|
||||
sodipodi:docname="logo_inkscape.svg"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<sodipodi:namedview
|
||||
id="namedview7"
|
||||
pagecolor="#505050"
|
||||
bordercolor="#ffffff"
|
||||
borderopacity="1"
|
||||
inkscape:pageshadow="0"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pagecheckerboard="1"
|
||||
inkscape:document-units="px"
|
||||
showgrid="false"
|
||||
inkscape:zoom="2.5485307"
|
||||
inkscape:cx="49.440252"
|
||||
inkscape:cy="109.67104"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1088"
|
||||
inkscape:window-x="1920"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:current-layer="layer1" />
|
||||
<defs
|
||||
id="defs2">
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
id="linearGradient43644">
|
||||
<stop
|
||||
style="stop-color:#007300;stop-opacity:1"
|
||||
offset="0"
|
||||
id="stop43640" />
|
||||
<stop
|
||||
style="stop-color:#007300;stop-opacity:0.00721814"
|
||||
offset="1"
|
||||
id="stop43642" />
|
||||
</linearGradient>
|
||||
<rect
|
||||
x="71.451522"
|
||||
y="0.25602378"
|
||||
width="54.044402"
|
||||
height="109.18527"
|
||||
id="rect8261" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient43644"
|
||||
id="linearGradient1301"
|
||||
x1="49.692738"
|
||||
y1="25.511776"
|
||||
x2="69.838753"
|
||||
y2="25.511776"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(4,8)" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient43644"
|
||||
id="linearGradient1303"
|
||||
x1="49.777058"
|
||||
y1="81.546326"
|
||||
x2="70.070267"
|
||||
y2="81.546326"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(0,6)" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient43644"
|
||||
id="linearGradient31669"
|
||||
x1="91.452972"
|
||||
y1="48.721558"
|
||||
x2="72.90464"
|
||||
y2="48.721558"
|
||||
gradientUnits="userSpaceOnUse" />
|
||||
</defs>
|
||||
<g
|
||||
inkscape:label="Ebene 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1">
|
||||
<path
|
||||
style="fill:none;stroke:url(#linearGradient1301);stroke-width:4.048;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 4.0226246,8.0649358 34.04888,58.958616 H 93.982083 L 123.99093,8.0944342"
|
||||
id="path857" />
|
||||
<path
|
||||
style="fill:none;stroke:url(#linearGradient1303);stroke-width:4.048;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="M 36.324162,67.3819 H 83.808266 L 60.014934,107.71095 Z"
|
||||
id="path863" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
id="text8259"
|
||||
style="font-style:normal;font-weight:normal;font-size:26.6667px;line-height:0.95;font-family:sans-serif;white-space:pre;shape-inside:url(#rect8261);fill:url(#linearGradient31669);fill-opacity:1;stroke:none"
|
||||
transform="translate(-3.670396,12.239657)"><tspan
|
||||
x="71.451172"
|
||||
y="19.849634"
|
||||
id="tspan43900">101
|
||||
</tspan><tspan
|
||||
x="71.451172"
|
||||
y="45.182998"
|
||||
id="tspan43902">011
|
||||
</tspan><tspan
|
||||
x="71.451172"
|
||||
y="70.516363"
|
||||
id="tspan43904">110
|
||||
</tspan><tspan
|
||||
x="71.451172"
|
||||
y="95.849726"
|
||||
id="tspan43906">100</tspan></text>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 3.7 KiB |
16
website/static/src/logo_svg.svg
Normal file
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg width="120" height="120" version="1.1" viewBox="0 0 120 120" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<defs>
|
||||
<linearGradient id="linearGradient43644">
|
||||
<stop stop-color="#007300" offset="0"/>
|
||||
<stop stop-color="#007300" stop-opacity=".0072181" offset="1"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="linearGradient1301" x1="49.693" x2="69.839" y1="25.512" y2="25.512" gradientTransform="translate(4,8)" gradientUnits="userSpaceOnUse" xlink:href="#linearGradient43644"/>
|
||||
<linearGradient id="linearGradient1303" x1="49.777" x2="70.07" y1="81.546" y2="81.546" gradientTransform="translate(0,6)" gradientUnits="userSpaceOnUse" xlink:href="#linearGradient43644"/>
|
||||
<linearGradient id="linearGradient31669" x1="91.453" x2="72.905" y1="48.722" y2="48.722" gradientUnits="userSpaceOnUse" xlink:href="#linearGradient43644"/>
|
||||
</defs>
|
||||
<path d="m4.0226 8.0649 30.026 50.894h59.933l30.009-50.864" fill="none" stroke="url(#linearGradient1301)" stroke-linecap="round" stroke-linejoin="round" stroke-width="4.048"/>
|
||||
<path d="m36.324 67.382h47.484l-23.793 40.329z" fill="none" stroke="url(#linearGradient1303)" stroke-linejoin="round" stroke-width="4.048"/>
|
||||
<text transform="translate(-3.6704 12.24)" fill="url(#linearGradient31669)" font-family="sans-serif" font-size="26.667px" style="line-height:0.95;shape-inside:url(#rect8261);white-space:pre" xml:space="preserve"/>
|
||||
</svg>
|
After Width: | Height: | Size: 1.5 KiB |
29
website/static/src/logo_txtpth.svg
Normal file
|
@ -0,0 +1,29 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg width="120" height="120" version="1.1" viewBox="0 0 120 120" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<defs>
|
||||
<linearGradient id="linearGradient43644">
|
||||
<stop stop-color="#007300" offset="0"/>
|
||||
<stop stop-color="#007300" stop-opacity=".0072181" offset="1"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="linearGradient1301" x1="49.693" x2="69.839" y1="25.512" y2="25.512" gradientTransform="translate(4,8)" gradientUnits="userSpaceOnUse" xlink:href="#linearGradient43644"/>
|
||||
<linearGradient id="linearGradient1303" x1="49.777" x2="70.07" y1="81.546" y2="81.546" gradientTransform="translate(0,6)" gradientUnits="userSpaceOnUse" xlink:href="#linearGradient43644"/>
|
||||
<linearGradient id="linearGradient31669" x1="91.453" x2="72.905" y1="48.722" y2="48.722" gradientUnits="userSpaceOnUse" xlink:href="#linearGradient43644"/>
|
||||
</defs>
|
||||
<g transform="translate(-3.6704 12.24)" fill="url(#linearGradient31669)" style="shape-inside:url(#rect8261);white-space:pre" aria-label="101 011 110 100">
|
||||
<path d="m74.758 17.636h4.2969v-14.831l-4.6745 0.9375v-2.3958l4.6484-0.9375h2.6302v17.227h4.2969v2.2135h-11.198z"/>
|
||||
<path d="m96.894 2.1413q-2.0313 0-3.0599 2.0052-1.0156 1.9922-1.0156 6.0026 0 3.9974 1.0156 6.0026 1.0286 1.9922 3.0599 1.9922 2.0443 0 3.0599-1.9922 1.0286-2.0052 1.0286-6.0026 0-4.0104-1.0286-6.0026-1.0156-2.0052-3.0599-2.0052zm0-2.0833q3.2682 0 4.987 2.5911 1.7318 2.5781 1.7318 7.5 0 4.9089-1.7318 7.5-1.7188 2.5781-4.987 2.5781-3.2682 0-5-2.5781-1.7188-2.5911-1.7188-7.5 0-4.9219 1.7188-7.5 1.7318-2.5911 5-2.5911z"/>
|
||||
<path d="m108.69 17.636h4.2969v-14.831l-4.6745 0.9375v-2.3958l4.6484-0.9375h2.6302v17.227h4.2969v2.2135h-11.198z"/>
|
||||
<path d="m79.928 27.475q-2.0313 0-3.0599 2.0052-1.0156 1.9922-1.0156 6.0026 0 3.9974 1.0156 6.0026 1.0286 1.9922 3.0599 1.9922 2.0443 0 3.0599-1.9922 1.0286-2.0052 1.0286-6.0026 0-4.0104-1.0286-6.0026-1.0156-2.0052-3.0599-2.0052zm0-2.0833q3.2682 0 4.987 2.5911 1.7318 2.5781 1.7318 7.5 0 4.9089-1.7318 7.5-1.7188 2.5781-4.987 2.5781t-5-2.5781q-1.7188-2.5911-1.7188-7.5 0-4.9219 1.7188-7.5 1.7318-2.5911 5-2.5911z"/>
|
||||
<path d="m91.725 42.969h4.2969v-14.831l-4.6745 0.9375v-2.3958l4.6484-0.9375h2.6302v17.227h4.2969v2.2135h-11.198z"/>
|
||||
<path d="m108.69 42.969h4.2969v-14.831l-4.6745 0.9375v-2.3958l4.6484-0.9375h2.6302v17.227h4.2969v2.2135h-11.198z"/>
|
||||
<path d="m74.758 68.303h4.2969v-14.831l-4.6745 0.9375v-2.3958l4.6484-0.9375h2.6302v17.227h4.2969v2.2135h-11.198z"/>
|
||||
<path d="m91.725 68.303h4.2969v-14.831l-4.6745 0.9375v-2.3958l4.6484-0.9375h2.6302v17.227h4.2969v2.2135h-11.198z"/>
|
||||
<path d="m113.86 52.808q-2.0312 0-3.0599 2.0052-1.0156 1.9922-1.0156 6.0026 0 3.9974 1.0156 6.0026 1.0286 1.9922 3.0599 1.9922 2.0443 0 3.0599-1.9922 1.0286-2.0052 1.0286-6.0026 0-4.0104-1.0286-6.0026-1.0156-2.0052-3.0599-2.0052zm0-2.0833q3.2682 0 4.987 2.5911 1.7318 2.5781 1.7318 7.5 0 4.9089-1.7318 7.5-1.7188 2.5781-4.987 2.5781t-5-2.5781q-1.7188-2.5911-1.7188-7.5 0-4.9219 1.7188-7.5 1.7318-2.5911 5-2.5911z"/>
|
||||
<path d="m74.758 93.636h4.2969v-14.831l-4.6745 0.9375v-2.3958l4.6484-0.9375h2.6302v17.227h4.2969v2.2135h-11.198z"/>
|
||||
<path d="m96.894 78.141q-2.0313 0-3.0599 2.0052-1.0156 1.9922-1.0156 6.0026 0 3.9974 1.0156 6.0026 1.0286 1.9922 3.0599 1.9922 2.0443 0 3.0599-1.9922 1.0286-2.0052 1.0286-6.0026 0-4.0104-1.0286-6.0026-1.0156-2.0052-3.0599-2.0052zm0-2.0833q3.2682 0 4.987 2.5911 1.7318 2.5781 1.7318 7.5 0 4.9089-1.7318 7.5-1.7188 2.5781-4.987 2.5781-3.2682 0-5-2.5781-1.7188-2.5911-1.7188-7.5 0-4.9219 1.7188-7.5 1.7318-2.5911 5-2.5911z"/>
|
||||
<path d="m113.86 78.141q-2.0312 0-3.0599 2.0052-1.0156 1.9922-1.0156 6.0026 0 3.9974 1.0156 6.0026 1.0286 1.9922 3.0599 1.9922 2.0443 0 3.0599-1.9922 1.0286-2.0052 1.0286-6.0026 0-4.0104-1.0286-6.0026-1.0156-2.0052-3.0599-2.0052zm0-2.0833q3.2682 0 4.987 2.5911 1.7318 2.5781 1.7318 7.5 0 4.9089-1.7318 7.5-1.7188 2.5781-4.987 2.5781t-5-2.5781q-1.7188-2.5911-1.7188-7.5 0-4.9219 1.7188-7.5 1.7318-2.5911 5-2.5911z"/>
|
||||
</g>
|
||||
<path d="m4.0226 8.0649 30.026 50.894h59.933l30.009-50.864" fill="none" stroke="url(#linearGradient1301)" stroke-linecap="round" stroke-linejoin="round" stroke-width="4.048"/>
|
||||
<path d="m36.324 67.382h47.484l-23.793 40.329z" fill="none" stroke="url(#linearGradient1303)" stroke-linejoin="round" stroke-width="4.048"/>
|
||||
</svg>
|
After Width: | Height: | Size: 4.3 KiB |
7
website/tsconfig.json
Normal file
|
@ -0,0 +1,7 @@
|
|||
{
|
||||
// This file is not used in compilation. It is here just for a nice editor experience.
|
||||
"extends": "@tsconfig/docusaurus/tsconfig.json",
|
||||
"compilerOptions": {
|
||||
"baseUrl": "."
|
||||
}
|
||||
}
|