Docs say: hello ^^
20
.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
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
babel.config.js
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
module.exports = {
|
||||||
|
presets: [require.resolve('@docusaurus/core/lib/babel/preset')],
|
||||||
|
};
|
||||||
21
back/tutorial-basics/congratulations.md
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 6
|
||||||
|
---
|
||||||
|
|
||||||
|
# Congratulations!
|
||||||
|
|
||||||
|
You have just learned the **basics of Docusaurus** and made some changes to the **initial template**.
|
||||||
|
|
||||||
|
Docusaurus has **much more to offer**!
|
||||||
|
|
||||||
|
Have **5 more minutes**? Take a look at **[versioning](../tutorial-extras/manage-docs-versions.md)** and **[i18n](../tutorial-extras/translate-your-site.md)**.
|
||||||
|
|
||||||
|
Anything **unclear** or **buggy** in this tutorial? [Please report it!](https://github.com/facebook/docusaurus/discussions/4610)
|
||||||
|
|
||||||
|
## What's next?
|
||||||
|
|
||||||
|
- Read the [official documentation](https://docusaurus.io/).
|
||||||
|
- Add a custom [Design and Layout](https://docusaurus.io/docs/styling-layout)
|
||||||
|
- Add a [search bar](https://docusaurus.io/docs/search)
|
||||||
|
- Find inspirations in the [Docusaurus showcase](https://docusaurus.io/showcase)
|
||||||
|
- Get involved in the [Docusaurus Community](https://docusaurus.io/community/support)
|
||||||
34
back/tutorial-basics/create-a-blog-post.md
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 3
|
||||||
|
---
|
||||||
|
|
||||||
|
# Create a Blog Post
|
||||||
|
|
||||||
|
Docusaurus creates a **page for each blog post**, but also a **blog index page**, a **tag system**, an **RSS** feed...
|
||||||
|
|
||||||
|
## Create your first Post
|
||||||
|
|
||||||
|
Create a file at `blog/2021-02-28-greetings.md`:
|
||||||
|
|
||||||
|
```md title="blog/2021-02-28-greetings.md"
|
||||||
|
---
|
||||||
|
slug: greetings
|
||||||
|
title: Greetings!
|
||||||
|
authors:
|
||||||
|
- name: Joel Marcey
|
||||||
|
title: Co-creator of Docusaurus 1
|
||||||
|
url: https://github.com/JoelMarcey
|
||||||
|
image_url: https://github.com/JoelMarcey.png
|
||||||
|
- name: Sébastien Lorber
|
||||||
|
title: Docusaurus maintainer
|
||||||
|
url: https://sebastienlorber.com
|
||||||
|
image_url: https://github.com/slorber.png
|
||||||
|
tags: [greetings]
|
||||||
|
---
|
||||||
|
|
||||||
|
Congratulations, you have made your first post!
|
||||||
|
|
||||||
|
Feel free to play around and edit this post as much you like.
|
||||||
|
```
|
||||||
|
|
||||||
|
A new blog post is now available at `http://localhost:3000/blog/greetings`.
|
||||||
55
back/tutorial-basics/create-a-document.md
Normal file
@@ -0,0 +1,55 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 2
|
||||||
|
---
|
||||||
|
|
||||||
|
# Create a Document
|
||||||
|
|
||||||
|
Documents are **groups of pages** connected through:
|
||||||
|
|
||||||
|
- a **sidebar**
|
||||||
|
- **previous/next navigation**
|
||||||
|
- **versioning**
|
||||||
|
|
||||||
|
## Create your first Doc
|
||||||
|
|
||||||
|
Create a markdown file at `docs/hello.md`:
|
||||||
|
|
||||||
|
```md title="docs/hello.md"
|
||||||
|
# Hello
|
||||||
|
|
||||||
|
This is my **first Docusaurus document**!
|
||||||
|
```
|
||||||
|
|
||||||
|
A new document is now available at `http://localhost:3000/docs/hello`.
|
||||||
|
|
||||||
|
## Configure the Sidebar
|
||||||
|
|
||||||
|
Docusaurus automatically **creates a sidebar** from the `docs` folder.
|
||||||
|
|
||||||
|
Add metadata to customize the sidebar label and position:
|
||||||
|
|
||||||
|
```md title="docs/hello.md" {1-4}
|
||||||
|
---
|
||||||
|
sidebar_label: 'Hi!'
|
||||||
|
sidebar_position: 3
|
||||||
|
---
|
||||||
|
|
||||||
|
# Hello
|
||||||
|
|
||||||
|
This is my **first Docusaurus document**!
|
||||||
|
```
|
||||||
|
|
||||||
|
It is also possible to create your sidebar explicitly in `sidebars.js`:
|
||||||
|
|
||||||
|
```diff title="sidebars.js"
|
||||||
|
module.exports = {
|
||||||
|
tutorialSidebar: [
|
||||||
|
{
|
||||||
|
type: 'category',
|
||||||
|
label: 'Tutorial',
|
||||||
|
- items: [...],
|
||||||
|
+ items: ['hello'],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
};
|
||||||
|
```
|
||||||
43
back/tutorial-basics/create-a-page.md
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 1
|
||||||
|
---
|
||||||
|
|
||||||
|
# Create a Page
|
||||||
|
|
||||||
|
Add **Markdown or React** files to `src/pages` to create a **standalone page**:
|
||||||
|
|
||||||
|
- `src/pages/index.js` -> `localhost:3000/`
|
||||||
|
- `src/pages/foo.md` -> `localhost:3000/foo`
|
||||||
|
- `src/pages/foo/bar.js` -> `localhost:3000/foo/bar`
|
||||||
|
|
||||||
|
## Create your first React Page
|
||||||
|
|
||||||
|
Create a file at `src/pages/my-react-page.js`:
|
||||||
|
|
||||||
|
```jsx title="src/pages/my-react-page.js"
|
||||||
|
import React from 'react';
|
||||||
|
import Layout from '@theme/Layout';
|
||||||
|
|
||||||
|
export default function MyReactPage() {
|
||||||
|
return (
|
||||||
|
<Layout>
|
||||||
|
<h1>My React page</h1>
|
||||||
|
<p>This is a React page</p>
|
||||||
|
</Layout>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
A new page is now available at `http://localhost:3000/my-react-page`.
|
||||||
|
|
||||||
|
## Create your first Markdown Page
|
||||||
|
|
||||||
|
Create a file at `src/pages/my-markdown-page.md`:
|
||||||
|
|
||||||
|
```mdx title="src/pages/my-markdown-page.md"
|
||||||
|
# My Markdown page
|
||||||
|
|
||||||
|
This is a Markdown page
|
||||||
|
```
|
||||||
|
|
||||||
|
A new page is now available at `http://localhost:3000/my-markdown-page`.
|
||||||
31
back/tutorial-basics/deploy-your-site.md
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 5
|
||||||
|
---
|
||||||
|
|
||||||
|
# Deploy your site
|
||||||
|
|
||||||
|
Docusaurus is a **static-site-generator** (also called **[Jamstack](https://jamstack.org/)**).
|
||||||
|
|
||||||
|
It builds your site as simple **static HTML, JavaScript and CSS files**.
|
||||||
|
|
||||||
|
## Build your site
|
||||||
|
|
||||||
|
Build your site **for production**:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npm run build
|
||||||
|
```
|
||||||
|
|
||||||
|
The static files are generated in the `build` folder.
|
||||||
|
|
||||||
|
## Deploy your site
|
||||||
|
|
||||||
|
Test your production build locally:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npm run serve
|
||||||
|
```
|
||||||
|
|
||||||
|
The `build` folder is now served at `http://localhost:3000/`.
|
||||||
|
|
||||||
|
You can now deploy the `build` folder **almost anywhere** easily, **for free** or very small cost (read the **[Deployment Guide](https://docusaurus.io/docs/deployment)**).
|
||||||
144
back/tutorial-basics/markdown-features.mdx
Normal file
@@ -0,0 +1,144 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 4
|
||||||
|
---
|
||||||
|
|
||||||
|
# Markdown Features
|
||||||
|
|
||||||
|
Docusaurus supports **[Markdown](https://daringfireball.net/projects/markdown/syntax)** and a few **additional features**.
|
||||||
|
|
||||||
|
## Front Matter
|
||||||
|
|
||||||
|
Markdown documents have metadata at the top called [Front Matter](https://jekyllrb.com/docs/front-matter/):
|
||||||
|
|
||||||
|
```text title="my-doc.md"
|
||||||
|
// highlight-start
|
||||||
|
---
|
||||||
|
id: my-doc-id
|
||||||
|
title: My document title
|
||||||
|
description: My document description
|
||||||
|
slug: /my-custom-url
|
||||||
|
---
|
||||||
|
// highlight-end
|
||||||
|
|
||||||
|
## Markdown heading
|
||||||
|
|
||||||
|
Markdown text with [links](./hello.md)
|
||||||
|
```
|
||||||
|
|
||||||
|
## Links
|
||||||
|
|
||||||
|
Regular Markdown links are supported, using url paths or relative file paths.
|
||||||
|
|
||||||
|
```md
|
||||||
|
Let's see how to [Create a page](/create-a-page).
|
||||||
|
```
|
||||||
|
|
||||||
|
```md
|
||||||
|
Let's see how to [Create a page](./create-a-page.md).
|
||||||
|
```
|
||||||
|
|
||||||
|
**Result:** Let's see how to [Create a page](./create-a-page.md).
|
||||||
|
|
||||||
|
## Images
|
||||||
|
|
||||||
|
Regular Markdown images are supported.
|
||||||
|
|
||||||
|
Add an image at `static/img/docusaurus.png` and display it in Markdown:
|
||||||
|
|
||||||
|
```md
|
||||||
|

|
||||||
|
```
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## Code Blocks
|
||||||
|
|
||||||
|
Markdown code blocks are supported with Syntax highlighting.
|
||||||
|
|
||||||
|
```jsx title="src/components/HelloDocusaurus.js"
|
||||||
|
function HelloDocusaurus() {
|
||||||
|
return (
|
||||||
|
<h1>Hello, Docusaurus!</h1>
|
||||||
|
)
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
```jsx title="src/components/HelloDocusaurus.js"
|
||||||
|
function HelloDocusaurus() {
|
||||||
|
return <h1>Hello, Docusaurus!</h1>;
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
## Admonitions
|
||||||
|
|
||||||
|
Docusaurus has a special syntax to create admonitions and callouts:
|
||||||
|
|
||||||
|
:::tip My tip
|
||||||
|
|
||||||
|
Use this awesome feature option
|
||||||
|
|
||||||
|
:::
|
||||||
|
|
||||||
|
:::danger Take care
|
||||||
|
|
||||||
|
This action is dangerous
|
||||||
|
|
||||||
|
:::
|
||||||
|
|
||||||
|
:::tip My tip
|
||||||
|
|
||||||
|
Use this awesome feature option
|
||||||
|
|
||||||
|
:::
|
||||||
|
|
||||||
|
:::danger Take care
|
||||||
|
|
||||||
|
This action is dangerous
|
||||||
|
|
||||||
|
:::
|
||||||
|
|
||||||
|
## MDX and React Components
|
||||||
|
|
||||||
|
[MDX](https://mdxjs.com/) can make your documentation more **interactive** and allows using any **React components inside Markdown**:
|
||||||
|
|
||||||
|
```jsx
|
||||||
|
export const Highlight = ({children, color}) => (
|
||||||
|
<span
|
||||||
|
style={{
|
||||||
|
backgroundColor: color,
|
||||||
|
borderRadius: '20px',
|
||||||
|
color: '#fff',
|
||||||
|
padding: '10px',
|
||||||
|
cursor: 'pointer',
|
||||||
|
}}
|
||||||
|
onClick={() => {
|
||||||
|
alert(`You clicked the color ${color} with label ${children}`)
|
||||||
|
}}>
|
||||||
|
{children}
|
||||||
|
</span>
|
||||||
|
);
|
||||||
|
|
||||||
|
This is <Highlight color="#25c2a0">Docusaurus green</Highlight> !
|
||||||
|
|
||||||
|
This is <Highlight color="#1877F2">Facebook blue</Highlight> !
|
||||||
|
```
|
||||||
|
|
||||||
|
export const Highlight = ({children, color}) => (
|
||||||
|
<span
|
||||||
|
style={{
|
||||||
|
backgroundColor: color,
|
||||||
|
borderRadius: '20px',
|
||||||
|
color: '#fff',
|
||||||
|
padding: '10px',
|
||||||
|
cursor: 'pointer',
|
||||||
|
}}
|
||||||
|
onClick={() => {
|
||||||
|
alert(`You clicked the color ${color} with label ${children}`);
|
||||||
|
}}>
|
||||||
|
{children}
|
||||||
|
</span>
|
||||||
|
);
|
||||||
|
|
||||||
|
This is <Highlight color="#25c2a0">Docusaurus green</Highlight> !
|
||||||
|
|
||||||
|
This is <Highlight color="#1877F2">Facebook blue</Highlight> !
|
||||||
55
back/tutorial-extras/manage-docs-versions.md
Normal file
@@ -0,0 +1,55 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 1
|
||||||
|
---
|
||||||
|
|
||||||
|
# Manage Docs Versions
|
||||||
|
|
||||||
|
Docusaurus can manage multiple versions of your docs.
|
||||||
|
|
||||||
|
## Create a docs version
|
||||||
|
|
||||||
|
Release a version 1.0 of your project:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npm run docusaurus docs:version 1.0
|
||||||
|
```
|
||||||
|
|
||||||
|
The `docs` folder is copied into `versioned_docs/version-1.0` and `versions.json` is created.
|
||||||
|
|
||||||
|
Your docs now have 2 versions:
|
||||||
|
|
||||||
|
- `1.0` at `http://localhost:3000/docs/` for the version 1.0 docs
|
||||||
|
- `current` at `http://localhost:3000/docs/next/` for the **upcoming, unreleased docs**
|
||||||
|
|
||||||
|
## Add a Version Dropdown
|
||||||
|
|
||||||
|
To navigate seamlessly across versions, add a version dropdown.
|
||||||
|
|
||||||
|
Modify the `docusaurus.config.js` file:
|
||||||
|
|
||||||
|
```js title="docusaurus.config.js"
|
||||||
|
module.exports = {
|
||||||
|
themeConfig: {
|
||||||
|
navbar: {
|
||||||
|
items: [
|
||||||
|
// highlight-start
|
||||||
|
{
|
||||||
|
type: 'docsVersionDropdown',
|
||||||
|
},
|
||||||
|
// highlight-end
|
||||||
|
],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
|
```
|
||||||
|
|
||||||
|
The docs version dropdown appears in your navbar:
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## Update an existing version
|
||||||
|
|
||||||
|
It is possible to edit versioned docs in their respective folder:
|
||||||
|
|
||||||
|
- `versioned_docs/version-1.0/hello.md` updates `http://localhost:3000/docs/hello`
|
||||||
|
- `docs/hello.md` updates `http://localhost:3000/docs/next/hello`
|
||||||
88
back/tutorial-extras/translate-your-site.md
Normal file
@@ -0,0 +1,88 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 2
|
||||||
|
---
|
||||||
|
|
||||||
|
# Translate your site
|
||||||
|
|
||||||
|
Let's translate `docs/intro.md` to French.
|
||||||
|
|
||||||
|
## Configure i18n
|
||||||
|
|
||||||
|
Modify `docusaurus.config.js` to add support for the `fr` locale:
|
||||||
|
|
||||||
|
```js title="docusaurus.config.js"
|
||||||
|
module.exports = {
|
||||||
|
i18n: {
|
||||||
|
defaultLocale: 'en',
|
||||||
|
locales: ['en', 'fr'],
|
||||||
|
},
|
||||||
|
};
|
||||||
|
```
|
||||||
|
|
||||||
|
## Translate a doc
|
||||||
|
|
||||||
|
Copy the `docs/intro.md` file to the `i18n/fr` folder:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mkdir -p i18n/fr/docusaurus-plugin-content-docs/current/
|
||||||
|
|
||||||
|
cp docs/intro.md i18n/fr/docusaurus-plugin-content-docs/current/intro.md
|
||||||
|
```
|
||||||
|
|
||||||
|
Translate `i18n/fr/docusaurus-plugin-content-docs/current/intro.md` in French.
|
||||||
|
|
||||||
|
## Start your localized site
|
||||||
|
|
||||||
|
Start your site on the French locale:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npm run start -- --locale fr
|
||||||
|
```
|
||||||
|
|
||||||
|
Your localized site is accessible at `http://localhost:3000/fr/` and the `Getting Started` page is translated.
|
||||||
|
|
||||||
|
:::caution
|
||||||
|
|
||||||
|
In development, you can only use one locale at a same time.
|
||||||
|
|
||||||
|
:::
|
||||||
|
|
||||||
|
## Add a Locale Dropdown
|
||||||
|
|
||||||
|
To navigate seamlessly across languages, add a locale dropdown.
|
||||||
|
|
||||||
|
Modify the `docusaurus.config.js` file:
|
||||||
|
|
||||||
|
```js title="docusaurus.config.js"
|
||||||
|
module.exports = {
|
||||||
|
themeConfig: {
|
||||||
|
navbar: {
|
||||||
|
items: [
|
||||||
|
// highlight-start
|
||||||
|
{
|
||||||
|
type: 'localeDropdown',
|
||||||
|
},
|
||||||
|
// highlight-end
|
||||||
|
],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
|
```
|
||||||
|
|
||||||
|
The locale dropdown now appears in your navbar:
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## Build your localized site
|
||||||
|
|
||||||
|
Build your site for a specific locale:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npm run build -- --locale fr
|
||||||
|
```
|
||||||
|
|
||||||
|
Or build your site to include all the locales at once:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npm run build
|
||||||
|
```
|
||||||
4
docs/developers/_category_.json
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
{
|
||||||
|
"label": "For developers",
|
||||||
|
"position": 3
|
||||||
|
}
|
||||||
0
docs/developers/developing-app.md
Normal file
61
docs/installation.md
Normal file
@@ -0,0 +1,61 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 1
|
||||||
|
---
|
||||||
|
|
||||||
|
# Installation
|
||||||
|
|
||||||
|
So, first lets install **horsy in one minute**.
|
||||||
|
|
||||||
|
## Installer
|
||||||
|
|
||||||
|
First you need to download **installer**.
|
||||||
|
|
||||||
|
It's availible **[here](https://horsy.ml/download)**.
|
||||||
|
|
||||||
|
### What you'll need
|
||||||
|
|
||||||
|
- Windows
|
||||||
|
- Hard drive or SSD
|
||||||
|
- Keyboard and mouse
|
||||||
|
- THATS ALL!
|
||||||
|
|
||||||
|
## Using
|
||||||
|
|
||||||
|
Now, launch installer-horsy-win.exe
|
||||||
|
|
||||||
|
Windows can block our file - we aren't trusted developers with signature. If you are **scared** with our file - download sources and build it by yourself!
|
||||||
|
|
||||||
|
So, press "More" and "Launch anyways"
|
||||||
|
|
||||||
|
If nothing happens - start app once more, it can be blocked or stopped with other process.
|
||||||
|
|
||||||
|
You will see installer GUI
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
Press ```Choose path``` button and choose folder where horsy and its apps will be installed. We will create ```horsy``` folder in folder that you have chosen
|
||||||
|
|
||||||
|
You can install horsy and horsygui or horsy only. We recomend you install both tools, but you can install GUI whenever you want
|
||||||
|
|
||||||
|
If writing in this folder needs Administrator privilegies, horsy will evaluate itself.
|
||||||
|
:::danger Installing in Administrator folder
|
||||||
|
Yes, we now that you like installing apps in ```Program Files``` folder more than your life, but... don't install horsy there.
|
||||||
|
Some apps won't be installed properly in privileged folder, better leave default folder or ensure that folder you have chosen is availible for regular users.
|
||||||
|
:::
|
||||||
|
|
||||||
|
We will automatically create desktop link for horsygui and add everything to PATH
|
||||||
|
|
||||||
|
```
|
||||||
|
Troubleshooting:
|
||||||
|
If installer doesn't work, you can do all stuff manually.
|
||||||
|
First, download horsy and horsygui (use curl, iwr, wget or just browser)
|
||||||
|
https://github.com/horsy-ml/horsy/blob/master/bin/horsy.exe
|
||||||
|
https://github.com/horsy-ml/horsy/blob/master/bin/horsygui.exe
|
||||||
|
Copy this files in new folder
|
||||||
|
Create 'apps' folder near exes
|
||||||
|
Add folder with horsy binaries to PATH
|
||||||
|
Add 'apps' folder to PATH
|
||||||
|
Configure new HORSYPATH system variable and add binaries (main) folder as value
|
||||||
|
```
|
||||||
|
|
||||||
|
# You all done!
|
||||||
4
docs/more/_category_.json
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
{
|
||||||
|
"label": "More",
|
||||||
|
"position": 4
|
||||||
|
}
|
||||||
0
docs/more/verification.md
Normal file
0
docs/more/virustotal.md
Normal file
4
docs/users/_category_.json
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
{
|
||||||
|
"label": "For users",
|
||||||
|
"position": 2
|
||||||
|
}
|
||||||
40
docs/users/app-info.md
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 4
|
||||||
|
---
|
||||||
|
|
||||||
|
# Getting information
|
||||||
|
|
||||||
|
You found interesting app, but you don't know anything about it?
|
||||||
|
|
||||||
|
It's great idea to get information about it.
|
||||||
|
|
||||||
|
## CLI
|
||||||
|
```
|
||||||
|
horsy info <app>
|
||||||
|
```
|
||||||
|
|
||||||
|
## TUI
|
||||||
|
```
|
||||||
|
horsy
|
||||||
|
6
|
||||||
|
<app>
|
||||||
|
```
|
||||||
|
|
||||||
|
## GUI
|
||||||
|
Search for app in `Browse` tab
|
||||||
|
|
||||||
|
Select needed app
|
||||||
|
|
||||||
|
Click `Info` button
|
||||||
|
|
||||||
|
## What happens
|
||||||
|
You will see popup window (if you are using gui) or text (if CLI/TUI) with app information
|
||||||
|
|
||||||
|
It seems to be something like this:
|
||||||
|
```
|
||||||
|
<app name><✅ if app verified else nothing> by <developer>
|
||||||
|
<Descriprion>
|
||||||
|
👍<likes> | 👎<dislikes>
|
||||||
|
```
|
||||||
|
|
||||||
|
More about verified apps you can see **[here](/docs/more/verification)**
|
||||||
43
docs/users/first-gui-launch.md
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 2
|
||||||
|
---
|
||||||
|
|
||||||
|
# First GUI launch
|
||||||
|
|
||||||
|
So, you installd GUI. You can see desktop shortcut for ```horsy GUI```, also you can use terminal to launch it, type
|
||||||
|
```
|
||||||
|
horsygui
|
||||||
|
```
|
||||||
|
|
||||||
|
Whis will run ```horsygui.exe``` with console, and if you have default terminal, it will hide terminal window. If you have custom terminal, something like ```Windows Terminal``` (default on Windows 11), horsy won't hide it.
|
||||||
|
|
||||||
|
If you launch it first time, you will empty installed window, something like this:
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
If you see strange laggs - don't worry. If noone uses server, it stops itself, so now it loads, it will take several seconds.
|
||||||
|
|
||||||
|
So let's install some apps!
|
||||||
|
|
||||||
|
We installed ```drawhorse``` in CLI guide, so let's install ```kotogamescam``` - free open-source memory scanner/debugger
|
||||||
|
|
||||||
|
Click ```Browse``` tab.
|
||||||
|
|
||||||
|
In search box, type app name. We use `Algolia` for searching, so you can type two-three letters, search by description and even dependencies.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
Press `Search` button.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
Now, select `kotogamescam` app and press `Install` button
|
||||||
|
|
||||||
|
You will see logs box and it will say you all about downloading and installing process.
|
||||||
|
|
||||||
|
Now you see
|
||||||
|
```
|
||||||
|
All done!
|
||||||
|
You can run your app by entering kotogamescam in terminal
|
||||||
|
```
|
||||||
|
It means that everything is OK and you now cat run kotogamescam just entering `kotogamescam` in terminal!
|
||||||
42
docs/users/first-launch.md
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 1
|
||||||
|
---
|
||||||
|
|
||||||
|
# First launch
|
||||||
|
|
||||||
|
We are sure that you are eager to run horsy and initialize your first app installation. So let's start!
|
||||||
|
|
||||||
|
First, open your Terminal. If you can't stand CLI apps, skip this tutorial and read next ```First GUI launch```.
|
||||||
|
|
||||||
|
horsy is very user-friendly app, so you have choise at every step of using The Best Package Manager!
|
||||||
|
|
||||||
|
Now type this in your terminal:
|
||||||
|
```
|
||||||
|
horsy
|
||||||
|
```
|
||||||
|
Yes. Just ```horsy```. You will see beautifull ASCII horsy logo and TextUI (TUI), where you can choose number option.
|
||||||
|
|
||||||
|
Another way to use horsy is CLI. It works like
|
||||||
|
```
|
||||||
|
horsy [command] <app>
|
||||||
|
```
|
||||||
|
For example:
|
||||||
|
```
|
||||||
|
horsy install drawhorse
|
||||||
|
```
|
||||||
|
or
|
||||||
|
```
|
||||||
|
horsy i drawhorse
|
||||||
|
```
|
||||||
|
|
||||||
|
If you prefer using TUI, type ```0``` (option for install app) and type, for example ```drawhorse```
|
||||||
|
|
||||||
|
horsy will install the newest version of app
|
||||||
|
|
||||||
|
VirusTotal configuring is availible **[here](/docs/more/virustotal)**.
|
||||||
|
|
||||||
|
If everything is OK, you will see
|
||||||
|
```
|
||||||
|
[OK] All done!
|
||||||
|
You can run your app by entering drawhorse in terminal
|
||||||
|
```
|
||||||
31
docs/users/like-dislike.md
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 5
|
||||||
|
---
|
||||||
|
|
||||||
|
# Likes and dislikes
|
||||||
|
|
||||||
|
You express your opinion by liking and disliking any app.
|
||||||
|
|
||||||
|
Users will see likes and dislikes in information.
|
||||||
|
|
||||||
|
## CLI
|
||||||
|
```
|
||||||
|
horsy like <app>
|
||||||
|
horsy dislike <app>
|
||||||
|
```
|
||||||
|
|
||||||
|
## TUI
|
||||||
|
Not availible
|
||||||
|
|
||||||
|
## GUI
|
||||||
|
Search for app in `Browse` tab
|
||||||
|
|
||||||
|
Select needed app
|
||||||
|
|
||||||
|
Click `👍` or `👎` button
|
||||||
|
|
||||||
|
## What happens
|
||||||
|
horsy sends like or dislike request.
|
||||||
|
|
||||||
|
If you already liked or disliked this app, horsy will say you about it.
|
||||||
|
You CAN like and dislike same package at the same time!
|
||||||
31
docs/users/sources.md
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 3
|
||||||
|
---
|
||||||
|
|
||||||
|
# Getting sources
|
||||||
|
|
||||||
|
The best thing about horsy - open-source. We encourage developers adding sources of their apps, so you can get them!
|
||||||
|
|
||||||
|
## CLI
|
||||||
|
```
|
||||||
|
horsy source <app>
|
||||||
|
```
|
||||||
|
|
||||||
|
## TUI
|
||||||
|
```
|
||||||
|
horsy
|
||||||
|
2
|
||||||
|
<app>
|
||||||
|
```
|
||||||
|
|
||||||
|
## GUI
|
||||||
|
Search for app in `Browse` tab
|
||||||
|
|
||||||
|
Select needed app
|
||||||
|
|
||||||
|
Click `Get source` button
|
||||||
|
|
||||||
|
## What happens
|
||||||
|
If developer provided app sources, you will see browser with sources link
|
||||||
|
|
||||||
|
If not, horsy will notify you
|
||||||
36
docs/users/uninstalling.md
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 6
|
||||||
|
---
|
||||||
|
|
||||||
|
# Uninstalling app
|
||||||
|
|
||||||
|
So, for some reasons, you decided to uninstall package.
|
||||||
|
|
||||||
|
We provide you this option.
|
||||||
|
|
||||||
|
## CLI
|
||||||
|
```
|
||||||
|
horsy uninstall <app>
|
||||||
|
```
|
||||||
|
or
|
||||||
|
```
|
||||||
|
horsy un <app>
|
||||||
|
```
|
||||||
|
|
||||||
|
## TUI
|
||||||
|
```
|
||||||
|
horsy
|
||||||
|
1
|
||||||
|
<app>
|
||||||
|
```
|
||||||
|
|
||||||
|
## GUI
|
||||||
|
Select app in `Installed` tab
|
||||||
|
|
||||||
|
Select needed app
|
||||||
|
|
||||||
|
Click `Uninstall` button
|
||||||
|
|
||||||
|
## What happens
|
||||||
|
Horsy will delete app folder from `apps` folder and remove it from `installed` list.
|
||||||
|
Also it will remove launch script.
|
||||||
7
docs/users/updating.md
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 7
|
||||||
|
---
|
||||||
|
|
||||||
|
# Updating app
|
||||||
|
|
||||||
|
|
||||||
93
docusaurus.config.js
Normal file
@@ -0,0 +1,93 @@
|
|||||||
|
// @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: 'horsy',
|
||||||
|
tagline: 'Share your apps with world',
|
||||||
|
url: 'https://docs.horsy.ml/',
|
||||||
|
baseUrl: '/',
|
||||||
|
onBrokenLinks: 'throw',
|
||||||
|
onBrokenMarkdownLinks: 'warn',
|
||||||
|
favicon: 'img/favicon.ico',
|
||||||
|
organizationName: 'horsy-ml', // Usually your GitHub org/user name.
|
||||||
|
projectName: 'horsy', // Usually your repo name.
|
||||||
|
|
||||||
|
presets: [
|
||||||
|
[
|
||||||
|
'classic',
|
||||||
|
/** @type {import('@docusaurus/preset-classic').Options} */
|
||||||
|
({
|
||||||
|
docs: {
|
||||||
|
sidebarPath: require.resolve('./sidebars.js'),
|
||||||
|
// Please change this to your repo.
|
||||||
|
},
|
||||||
|
theme: {
|
||||||
|
customCss: require.resolve('./src/css/custom.css'),
|
||||||
|
},
|
||||||
|
}),
|
||||||
|
],
|
||||||
|
],
|
||||||
|
|
||||||
|
themeConfig:
|
||||||
|
/** @type {import('@docusaurus/preset-classic').ThemeConfig} */
|
||||||
|
({
|
||||||
|
navbar: {
|
||||||
|
title: 'horsy',
|
||||||
|
logo: {
|
||||||
|
alt: 'horsy Logo',
|
||||||
|
src: 'img/logo.png',
|
||||||
|
},
|
||||||
|
items: [
|
||||||
|
{
|
||||||
|
type: 'doc',
|
||||||
|
docId: 'installation',
|
||||||
|
position: 'left',
|
||||||
|
label: 'Installation',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
footer: {
|
||||||
|
style: 'dark',
|
||||||
|
links: [
|
||||||
|
{
|
||||||
|
title: 'Docs',
|
||||||
|
items: [
|
||||||
|
{
|
||||||
|
label: 'Installation',
|
||||||
|
to: '/docs/installation',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: 'Community',
|
||||||
|
items: [
|
||||||
|
{
|
||||||
|
label: 'Developers',
|
||||||
|
href: '/developers',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: 'More',
|
||||||
|
items: [
|
||||||
|
{
|
||||||
|
label: 'GitHub',
|
||||||
|
href: 'https://github.com/horsy-ml',
|
||||||
|
}
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
copyright: `Copyright © ${new Date().getFullYear()} horsy. Docs built with Docusaurus.`,
|
||||||
|
},
|
||||||
|
prism: {
|
||||||
|
theme: darkCodeTheme,
|
||||||
|
darkTheme: darkCodeTheme,
|
||||||
|
},
|
||||||
|
}),
|
||||||
|
};
|
||||||
|
|
||||||
|
module.exports = config;
|
||||||
22178
package-lock.json
generated
Normal file
43
package.json
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
{
|
||||||
|
"name": "horsy-docs",
|
||||||
|
"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": "2.0.0-beta.15",
|
||||||
|
"@docusaurus/preset-classic": "2.0.0-beta.15",
|
||||||
|
"@mdx-js/react": "^1.6.21",
|
||||||
|
"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.15",
|
||||||
|
"@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
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;
|
||||||
11
src/components/HomepageFeatures.module.css
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
.features {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
padding: 2rem 0;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.featureSvg {
|
||||||
|
height: 200px;
|
||||||
|
width: 200px;
|
||||||
|
}
|
||||||
75
src/components/HomepageFeatures.tsx
Normal file
@@ -0,0 +1,75 @@
|
|||||||
|
import useBaseUrl from '@docusaurus/useBaseUrl';
|
||||||
|
import React from 'react';
|
||||||
|
import clsx from 'clsx';
|
||||||
|
import styles from './HomepageFeatures.module.css';
|
||||||
|
|
||||||
|
type FeatureItem = {
|
||||||
|
title: string;
|
||||||
|
image: string;
|
||||||
|
description: JSX.Element;
|
||||||
|
};
|
||||||
|
|
||||||
|
const FeatureList: FeatureItem[] = [
|
||||||
|
{
|
||||||
|
title: 'Easy to Use',
|
||||||
|
image: '/img/app.png',
|
||||||
|
description: (
|
||||||
|
<>
|
||||||
|
We designed the app to be easy to use and intuitive. You can use powerfull CLI
|
||||||
|
or beautiful GUI - only you decide.
|
||||||
|
</>
|
||||||
|
),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: 'Download and start',
|
||||||
|
image: '/img/working.png',
|
||||||
|
description: (
|
||||||
|
<>
|
||||||
|
All steps are fully documented. You can just download the app and use it,
|
||||||
|
while we do all of the hard work.
|
||||||
|
</>
|
||||||
|
),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: 'Powered by Python',
|
||||||
|
image: '/img/python.png',
|
||||||
|
description: (
|
||||||
|
<>
|
||||||
|
All source code availible on GitHub. You can use it to build your own
|
||||||
|
version of the app with custom features!
|
||||||
|
</>
|
||||||
|
),
|
||||||
|
},
|
||||||
|
];
|
||||||
|
|
||||||
|
function Feature({title, image, description}: FeatureItem) {
|
||||||
|
return (
|
||||||
|
<div className={clsx('col col--4')}>
|
||||||
|
<div className="text--center">
|
||||||
|
<img
|
||||||
|
className={styles.featureSvg}
|
||||||
|
alt={title}
|
||||||
|
src={useBaseUrl(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>
|
||||||
|
);
|
||||||
|
}
|
||||||
39
src/css/custom.css
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
/**
|
||||||
|
* 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: #2e8555;
|
||||||
|
--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%;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* For readability concerns, you should choose a lighter palette in dark mode. */
|
||||||
|
html[data-theme='dark'] {
|
||||||
|
--ifm-color-primary: #25c2a0;
|
||||||
|
--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;
|
||||||
|
}
|
||||||
|
|
||||||
|
.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);
|
||||||
|
}
|
||||||
|
|
||||||
|
html[data-theme='dark'] .docusaurus-highlight-code-line {
|
||||||
|
background-color: rgba(0, 0, 0, 0.3);
|
||||||
|
}
|
||||||
6
src/pages/developers.md
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
# Our team
|
||||||
|
|
||||||
|
| BarsTiger | Cactus-0 |
|
||||||
|
| ------------------------------------------------------------ | ------------------------------------------------------------ |
|
||||||
|
| Andrii Meshko | Viktor Pasternak |
|
||||||
|
| Python developer, creator of Windows app and docs, web design editor | JavaScript developer, creator of backend, horsy.ml site and all web logic |
|
||||||
23
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;
|
||||||
|
}
|
||||||
40
src/pages/index.tsx
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
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 '../components/HomepageFeatures';
|
||||||
|
|
||||||
|
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">{siteConfig.tagline}</p>
|
||||||
|
<div className={styles.buttons}>
|
||||||
|
<Link
|
||||||
|
className="button button--secondary button--lg"
|
||||||
|
to="/docs/installation">
|
||||||
|
horsy installation - 1min ⏱️
|
||||||
|
</Link>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</header>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
export default function Home(): JSX.Element {
|
||||||
|
const {siteConfig} = useDocusaurusContext();
|
||||||
|
return (
|
||||||
|
<Layout
|
||||||
|
title={`Docs`}
|
||||||
|
description="Share your apps with world">
|
||||||
|
<HomepageHeader />
|
||||||
|
<main>
|
||||||
|
<HomepageFeatures />
|
||||||
|
</main>
|
||||||
|
</Layout>
|
||||||
|
);
|
||||||
|
}
|
||||||
0
static/.nojekyll
Normal file
BIN
static/img/app.png
Normal file
|
After Width: | Height: | Size: 13 KiB |
BIN
static/img/docusaurus.png
Normal file
|
After Width: | Height: | Size: 65 KiB |
BIN
static/img/favicon.ico
Normal file
|
After Width: | Height: | Size: 21 KiB |
BIN
static/img/for-users/first-gui-launch/empty-installed.png
Normal file
|
After Width: | Height: | Size: 27 KiB |
BIN
static/img/for-users/first-gui-launch/found.png
Normal file
|
After Width: | Height: | Size: 52 KiB |
BIN
static/img/for-users/first-gui-launch/kotosearch.png
Normal file
|
After Width: | Height: | Size: 4.7 KiB |
BIN
static/img/installation/installer.png
Normal file
|
After Width: | Height: | Size: 80 KiB |
BIN
static/img/logo.png
Normal file
|
After Width: | Height: | Size: 65 KiB |
BIN
static/img/logo_black.png
Normal file
|
After Width: | Height: | Size: 86 KiB |
BIN
static/img/python.png
Normal file
|
After Width: | Height: | Size: 80 KiB |
BIN
static/img/tutorial/docsVersionDropdown.png
Normal file
|
After Width: | Height: | Size: 24 KiB |
BIN
static/img/tutorial/localeDropdown.png
Normal file
|
After Width: | Height: | Size: 29 KiB |
BIN
static/img/working.png
Normal file
|
After Width: | Height: | Size: 73 KiB |
7
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": "."
|
||||||
|
}
|
||||||
|
}
|
||||||