docs: update website document
This commit is contained in:
parent
0eedd7d088
commit
0076a3bed7
@ -22,7 +22,7 @@ type ReportData struct {
|
||||
}
|
||||
|
||||
var (
|
||||
Mode = flag.String("mode", "http", "The send mode of report data, you can select: `http` or `udp`, default is `http`")
|
||||
Mode = flag.String("mode", "http", "The send mode of report data, you can select: 'http' or 'udp', default is 'http'")
|
||||
Url = flag.String("url", "", "The http url of tianji, for example: https://tianji.msgbyte.com")
|
||||
WorkspaceId = flag.String("workspace", "", "The workspace id for tianji, this should be a uuid")
|
||||
Name = flag.String("name", "", "The identification name for this machine")
|
||||
|
@ -1,35 +0,0 @@
|
||||
---
|
||||
sidebar_position: 1
|
||||
---
|
||||
|
||||
# Deploy Tianji with Docker Compose
|
||||
|
||||
docker compose is most fast way to deploy `tianji`
|
||||
|
||||
You only need a few steps to complete the deployment
|
||||
|
||||
## Steps
|
||||
|
||||
download docker compose config:
|
||||
|
||||
```
|
||||
wget https://raw.githubusercontent.com/msgbyte/tianji/master/docker-compose.yml
|
||||
```
|
||||
|
||||
and change some env
|
||||
|
||||
```
|
||||
vim docker-compose.yml
|
||||
```
|
||||
|
||||
you should change `JWT_SECRET` to make your token safe.
|
||||
|
||||
Then, run it!
|
||||
|
||||
```
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
its will start a postgresql and write init struct in database. if everything is ok, you can visit it in `http://127.0.0.1:12345`
|
||||
|
||||
and default account is `admin`/`admin`, dont forget change password!
|
13
website/docs/environment.md
Normal file
13
website/docs/environment.md
Normal file
@ -0,0 +1,13 @@
|
||||
---
|
||||
sidebar_position: 2
|
||||
---
|
||||
|
||||
# Environment
|
||||
|
||||
Here is enviroment which you can config in docker
|
||||
|
||||
| Name | Default Value | Description |
|
||||
| ---- | ---- | ----- |
|
||||
| ALLOW_REGISTER | false | whether allow user can register account |
|
||||
| ALLOW_OPENAPI | false | whether allow openapi which can fetch or post data just like you with ui |
|
||||
| SANDBOX_MEMORY_LIMIT | 16 | custom script monitor sandbox memory limit, which can control which monitor script not use too many memory (unit MB, the minimum value is 8) |
|
@ -2,46 +2,35 @@
|
||||
sidebar_position: 1
|
||||
---
|
||||
|
||||
# Tutorial Intro
|
||||
# Introduction
|
||||
|
||||
Let's discover **Docusaurus in less than 5 minutes**.
|
||||
## What is Tianji
|
||||
|
||||
## Getting Started
|
||||
One sentence to summarize:
|
||||
|
||||
Get started by **creating a new site**.
|
||||
**Tianji** = **Website Analytics** + **Uptime Monitor** + **Server Status**
|
||||
|
||||
Or **try Docusaurus immediately** with **[docusaurus.new](https://docusaurus.new)**.
|
||||
### Why is it called Tianji?
|
||||
|
||||
### What you'll need
|
||||
Tianji(天机, pronunciation Tiān Jī) in chinese which means **Heavenly Opportunity** or **Strategy**
|
||||
|
||||
- [Node.js](https://nodejs.org/en/download/) version 16.14 or above:
|
||||
- When installing Node.js, you are recommended to check all checkboxes related to dependencies.
|
||||
The characters 天 (Tiān) and 机 (Jī) can be translated as "heaven" and "machine" or "mechanism" respectively. When combined, it might refer to a strategic or opportunistic plan or opportunity that seems to be orchestrated by a higher power or a celestial force.
|
||||
|
||||
## Generate a new site
|
||||
## Installation
|
||||
|
||||
Generate a new Docusaurus site using the **classic template**.
|
||||
Install Tianji with Docker is very simple. just make sure you have been install docker and docker-compose plugin
|
||||
|
||||
The classic template will automatically be added to your project after you run the command:
|
||||
and then, run those command in anywhere:
|
||||
|
||||
```bash
|
||||
npm init docusaurus@latest my-website classic
|
||||
wget https://raw.githubusercontent.com/msgbyte/tianji/master/docker-compose.yml
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
You can type this command into Command Prompt, Powershell, Terminal, or any other integrated terminal of your code editor.
|
||||
## Community
|
||||
|
||||
The command also installs all necessary dependencies you need to run Docusaurus.
|
||||
Join our thriving community to connect with fellow users, share experiences, and stay updated on the latest features and developments. Collaborate, ask questions, and contribute to the growth of the Tianji community.
|
||||
|
||||
## Start your site
|
||||
|
||||
Run the development server:
|
||||
|
||||
```bash
|
||||
cd my-website
|
||||
npm run start
|
||||
```
|
||||
|
||||
The `cd` command changes the directory you're working with. In order to work with your newly created Docusaurus site, you'll need to navigate the terminal there.
|
||||
|
||||
The `npm run start` command builds your website locally and serves it through a development server, ready for you to view at http://localhost:3000/.
|
||||
|
||||
Open `docs/intro.md` (this page) and edit some lines: the site **reloads automatically** and displays your changes.
|
||||
- [GitHub](https://github.com/msgbyte/tianji)
|
||||
- [Discord](https://discord.gg/8Vv47wAEej)
|
||||
- [Stack Overflow](https://stackoverflow.com/questions/tagged/tianji)
|
||||
|
4
website/docs/monitor/_category_.json
Normal file
4
website/docs/monitor/_category_.json
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"label": "Monitor",
|
||||
"position": 3
|
||||
}
|
40
website/docs/monitor/custom-script.md
Normal file
40
website/docs/monitor/custom-script.md
Normal file
@ -0,0 +1,40 @@
|
||||
---
|
||||
sidebar_position: 1
|
||||
---
|
||||
|
||||
# Custom Script
|
||||
|
||||
Compared with traditional monitoring services, **Tianji** supports custom scripts to support more customized scenarios.
|
||||
|
||||
Here is some example
|
||||
|
||||
## Examples
|
||||
|
||||
### get available service number from health endpoint
|
||||
|
||||
```js
|
||||
const res = await request({
|
||||
url: 'https://<tailchat-server-api>/health'
|
||||
})
|
||||
|
||||
if(!res || !res.data || !res.data.services) {
|
||||
return -1
|
||||
}
|
||||
|
||||
return res.data.services.length
|
||||
```
|
||||
|
||||
### get github star count
|
||||
|
||||
```js
|
||||
const res = await request({
|
||||
url: 'https://api.github.com/repos/msgbyte/tianji'
|
||||
})
|
||||
|
||||
return res.data.stargazers_count ?? -1
|
||||
```
|
||||
|
||||
|
||||
### or more
|
||||
|
||||
Very very welcome to submit your script in this page. Tianji is driven by open source community.
|
4
website/docs/server-status/_category_.json
Normal file
4
website/docs/server-status/_category_.json
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"label": "Server Status",
|
||||
"position": 4
|
||||
}
|
31
website/docs/server-status/server-status-reporter.md
Normal file
31
website/docs/server-status/server-status-reporter.md
Normal file
@ -0,0 +1,31 @@
|
||||
---
|
||||
sidebar_position: 1
|
||||
---
|
||||
|
||||
# Server Status Reporter
|
||||
|
||||
you can report your server status easily with tianji reporter
|
||||
|
||||
you can download from [https://github.com/msgbyte/tianji/releases](https://github.com/msgbyte/tianji/releases)
|
||||
|
||||
## Usage
|
||||
|
||||
```
|
||||
Usage of tianji-reporter:
|
||||
--interval int
|
||||
Input the INTERVAL, seconed (default 5)
|
||||
--mode http
|
||||
The send mode of report data, you can select: `http` or `udp`, default is `http` (default "http")
|
||||
--name string
|
||||
The identification name for this machine
|
||||
--url string
|
||||
The http url of tianji, for example: https://tianji.msgbyte.com
|
||||
--vnstat
|
||||
Use vnstat for traffic statistics, linux only
|
||||
--workspace string
|
||||
The workspace id for tianji, this should be a uuid
|
||||
```
|
||||
|
||||
the **url** and **workspace** is required, its means you will report your service to which host and which workspace.
|
||||
|
||||
default a server node name will be same with hostname, so you can custom your name with `--name` which can help you identify server.
|
14
website/docs/special-thanks.md
Normal file
14
website/docs/special-thanks.md
Normal file
@ -0,0 +1,14 @@
|
||||
---
|
||||
sidebar_position: 99
|
||||
---
|
||||
|
||||
# Special thanks
|
||||
|
||||
## Open source project
|
||||
|
||||
Tianji is very inspired by those project, thanks for your contributions to the open source community.
|
||||
|
||||
I also loves those project. Salute to these excellent projects!
|
||||
|
||||
- [umami](https://github.com/umami-software/umami)
|
||||
- [uptime kuma](https://github.com/louislam/uptime-kuma)
|
@ -1,8 +0,0 @@
|
||||
{
|
||||
"label": "Tutorial - Basics",
|
||||
"position": 2,
|
||||
"link": {
|
||||
"type": "generated-index",
|
||||
"description": "5 minutes to learn the most important Docusaurus concepts."
|
||||
}
|
||||
}
|
@ -1,23 +0,0 @@
|
||||
---
|
||||
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/)
|
||||
- Modify your site configuration with [`docusaurus.config.js`](https://docusaurus.io/docs/api/docusaurus-config)
|
||||
- Add navbar and footer items with [`themeConfig`](https://docusaurus.io/docs/api/themes/configuration)
|
||||
- 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)
|
@ -1,34 +0,0 @@
|
||||
---
|
||||
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](http://localhost:3000/blog/greetings).
|
@ -1,57 +0,0 @@
|
||||
---
|
||||
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](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`:
|
||||
|
||||
```js title="sidebars.js"
|
||||
module.exports = {
|
||||
tutorialSidebar: [
|
||||
'intro',
|
||||
// highlight-next-line
|
||||
'hello',
|
||||
{
|
||||
type: 'category',
|
||||
label: 'Tutorial',
|
||||
items: ['tutorial-basics/create-a-document'],
|
||||
},
|
||||
],
|
||||
};
|
||||
```
|
@ -1,43 +0,0 @@
|
||||
---
|
||||
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](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](http://localhost:3000/my-markdown-page).
|
@ -1,31 +0,0 @@
|
||||
---
|
||||
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/](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)**).
|
@ -1,150 +0,0 @@
|
||||
---
|
||||
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.
|
||||
|
||||
You can use absolute paths to reference images in the static directory (`static/img/docusaurus.png`):
|
||||
|
||||
```md
|
||||
![Docusaurus logo](/img/docusaurus.png)
|
||||
```
|
||||
|
||||
![Docusaurus logo](/img/docusaurus.png)
|
||||
|
||||
You can reference images relative to the current file as well. This is particularly useful to colocate images close to the Markdown files using them:
|
||||
|
||||
```md
|
||||
![Docusaurus logo](./img/docusaurus.png)
|
||||
```
|
||||
|
||||
## 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> !
|
@ -1,7 +0,0 @@
|
||||
{
|
||||
"label": "Tutorial - Extras",
|
||||
"position": 3,
|
||||
"link": {
|
||||
"type": "generated-index"
|
||||
}
|
||||
}
|
Binary file not shown.
Before Width: | Height: | Size: 25 KiB |
Binary file not shown.
Before Width: | Height: | Size: 27 KiB |
@ -1,55 +0,0 @@
|
||||
---
|
||||
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:
|
||||
|
||||
![Docs Version Dropdown](./img/docsVersionDropdown.png)
|
||||
|
||||
## 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`
|
@ -1,88 +0,0 @@
|
||||
---
|
||||
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/](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:
|
||||
|
||||
![Locale Dropdown](./img/localeDropdown.png)
|
||||
|
||||
## 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
website/docs/website/_category_.json
Normal file
4
website/docs/website/_category_.json
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"label": "Website",
|
||||
"position": 2
|
||||
}
|
33
website/docs/website/track-script.md
Normal file
33
website/docs/website/track-script.md
Normal file
@ -0,0 +1,33 @@
|
||||
---
|
||||
sidebar_position: 1
|
||||
---
|
||||
|
||||
# Track Script
|
||||
|
||||
## Install
|
||||
|
||||
To track website events, you just need inject a simple script(<2kb) into your website.
|
||||
|
||||
the script look like below:
|
||||
|
||||
```html
|
||||
<script async defer src="https://<your-self-hosted-domain>/tracker.js" data-website-id="xxxxxxxxxxxxx"></script>
|
||||
```
|
||||
|
||||
you can get this script code from your tianji website list
|
||||
|
||||
## Report Event
|
||||
|
||||
Tianji provide a simple way to report user click event, its easy to help you track which action user like and often to use.
|
||||
|
||||
This is a very common method in website analysis. You can use it quickly get it by using tianji.
|
||||
|
||||
After you inject script code into your website, you just need add a `data-tianji-event` in dom attribute.
|
||||
|
||||
for example:
|
||||
|
||||
```html
|
||||
<button data-tianji-event="submit-login-form">Login</button>
|
||||
```
|
||||
|
||||
Now, when user click this button, your dashboard will receive new event
|
@ -8,7 +8,7 @@ const darkCodeTheme = require('prism-react-renderer/themes/dracula');
|
||||
const config = {
|
||||
title: 'Tianji',
|
||||
tagline:
|
||||
'Insight into everything. Brings all your commonly used tools together in one place',
|
||||
'All-in-One Insight Hub',
|
||||
favicon: 'img/favicon.ico',
|
||||
|
||||
// Set the production url of your site here
|
||||
@ -44,7 +44,7 @@ const config = {
|
||||
},
|
||||
docs: {
|
||||
sidebarPath: require.resolve('./sidebars.js'),
|
||||
routeBasePath: '/',
|
||||
routeBasePath: '/docs',
|
||||
editUrl: 'https://github.com/msgbyte/tianji/tree/main/website/',
|
||||
},
|
||||
theme: {
|
||||
@ -79,12 +79,12 @@ const config = {
|
||||
src: 'img/logo.svg',
|
||||
},
|
||||
items: [
|
||||
// {
|
||||
// type: 'docSidebar',
|
||||
// sidebarId: 'tutorialSidebar',
|
||||
// position: 'left',
|
||||
// label: 'Tutorial',
|
||||
// },
|
||||
{
|
||||
type: 'docSidebar',
|
||||
sidebarId: 'tutorialSidebar',
|
||||
position: 'left',
|
||||
label: 'Docs',
|
||||
},
|
||||
{ to: '/changelog', label: 'Changelog', position: 'left' },
|
||||
{ to: '/api', label: 'API', position: 'left' },
|
||||
{
|
||||
@ -107,15 +107,15 @@ const config = {
|
||||
footer: {
|
||||
style: 'dark',
|
||||
links: [
|
||||
// {
|
||||
// title: 'Docs',
|
||||
// items: [
|
||||
// {
|
||||
// label: 'Tutorial',
|
||||
// to: '/docs/intro',
|
||||
// },
|
||||
// ],
|
||||
// },
|
||||
{
|
||||
title: 'Docs',
|
||||
items: [
|
||||
{
|
||||
label: 'Tutorial',
|
||||
to: '/docs/intro',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
title: 'Community',
|
||||
items: [
|
||||
|
Loading…
Reference in New Issue
Block a user