From fc530b8e09dc3eaf84fffba75eb4a00cad4fea2a Mon Sep 17 00:00:00 2001 From: aherman3 Date: Wed, 17 Apr 2024 14:30:40 +0800 Subject: [PATCH 1/9] add getting-started videos --- .../docs/getting-started-with-wechaty.mdx | 2 +- .../{overview.mdx => overview.md} | 14 ++++++++++---- docusaurus/docs/overview.mdx | 10 +++++----- docusaurus/docs/tutorials/overview.md | 4 ++-- .../img/getting-started-video-tutorials.webp | Bin 0 -> 37730 bytes package.json | 1 + 6 files changed, 19 insertions(+), 12 deletions(-) rename docusaurus/docs/getting-started/{overview.mdx => overview.md} (77%) create mode 100644 docusaurus/static/img/getting-started-video-tutorials.webp diff --git a/docusaurus/docs/getting-started-with-wechaty.mdx b/docusaurus/docs/getting-started-with-wechaty.mdx index 2fe660f13af..3d7a126962b 100644 --- a/docusaurus/docs/getting-started-with-wechaty.mdx +++ b/docusaurus/docs/getting-started-with-wechaty.mdx @@ -16,4 +16,4 @@ Google cloud shell is also an online development and operations environment whic ## Local development environment -You can also set up your own server for running the [getting-started repository](https://github.com/wechaty/wechaty-getting-started) on your machine instead of using the cloud-based IDE. There is a [beginner-friendly tutorial](getting-started/running-locally.mdx) in the [tutorials section](getting-started/overview.mdx) which will take you by the hand to help you run the getting-started repository on your local machine. +You can also set up your own server for running the [getting-started repository](https://github.com/wechaty/wechaty-getting-started) on your machine instead of using the cloud-based IDE. There is a [beginner-friendly tutorial](getting-started/running-locally.mdx) in the [tutorials section](getting-started/overview.md) which will take you by the hand to help you run the getting-started repository on your local machine. diff --git a/docusaurus/docs/getting-started/overview.mdx b/docusaurus/docs/getting-started/overview.md similarity index 77% rename from docusaurus/docs/getting-started/overview.mdx rename to docusaurus/docs/getting-started/overview.md index beee9bd4b7c..f1d3de8267e 100644 --- a/docusaurus/docs/getting-started/overview.mdx +++ b/docusaurus/docs/getting-started/overview.md @@ -21,13 +21,19 @@ You can run Wechaty on following platforms: Wechaty is a RPA (Robotic Process Automation) SDK for Chatbot Makers which can help you create a bot in 6 lines of [JavaScript](https://GitHub.com/Wechaty/wechaty), [Python](https://GitHub.com/Wechaty/python-wechaty/), [Go](https://GitHub.com/Wechaty/go-wechaty/), and [Java](https://GitHub.com/Wechaty/java-wechaty/), with cross-platform support including [Linux, Windows, MacOS](https://github.com/wechaty/wechaty/actions?query=workflow%3ANPM), and [Docker](https://github.com/wechaty/wechaty/actions?query=workflow%3ADocker). -You will learn the following fundamental features of Wechaty in the getting-started tutorials: +You can also watch the [video series](https://www.youtube.com/watch?v=cZd42xxaTcI&list=PLkLKftrhFi7vfaADtPrGyuutbpcA_ppxE) below to get an introduction and demonstration of some of the capabilities and applications using Wechaty's getting-started repository. -- Turn different instant messaging (IM) systems (such as WeChat, Wecom,Whatsapp, Lark,Gitter, and TikTok) account into chatbot. -- Use the chatbot to communicate or do anything on behalf of you. +[![Getting Started Video Tutorial Series](../../static/img/getting-started-video-tutorials.webp)](https://www.youtube.com/watch?v=cZd42xxaTcI&list=PLkLKftrhFi7vfaADtPrGyuutbpcA_ppxE) + +In the getting-started tutorials, you will learn the following fundamental features of Wechaty: + +- Turn different instant messaging (IM) systems (such as WeChat, WeCom,Whatsapp, Lark,Gitter, and TikTok) accounts into chatbots. - Work out of the box on Linux, Mac and Windows. -- Supports all [puppets](../puppet-services/overview.mdx) like Wechat, WhatsApp, WeCom, Lark and so on. +- Supports all [puppets](../puppet-services/overview.mdx) like WeChat, WhatsApp, WeCom, Lark and so on. - Reply with a `dong` message when it recieves a `ding` message. +- Receive and accept friendship requests. +- Create group chats and add/remove users. +- Send files, URLs, and contact cards. :::note RPA for Instant Messaging Software diff --git a/docusaurus/docs/overview.mdx b/docusaurus/docs/overview.mdx index 63b6a5c4ddd..e7e14d81259 100644 --- a/docusaurus/docs/overview.mdx +++ b/docusaurus/docs/overview.mdx @@ -15,7 +15,7 @@ This section is a high-level overview of how the Wechaty Documentation is struct The Wechaty Documentation covers everything you need to know about Wechaty. It comprises of five broad sections and these sections are: - [Introduction section](/overview.mdx) -- [Tutorials section](getting-started/overview.mdx) +- [Tutorials section](getting-started/overview.md) - [How to Guides section](howto/overview.mdx) - [References section](references/overview.mdx) - [Explanations section](explanations/overview.mdx) @@ -35,7 +35,7 @@ The Introduction section provides an in-depth introduction to Wechaty, Wechaty c - [Contributing to Wechaty](/contributing/overview.md) - [Changelog](/changelog.md) -## [Tutorials](getting-started/overview.mdx) +## [Tutorials](getting-started/overview.md) > Note: If you are an absolute beginner, we recommend you to start with the [Introduction](/overview.mdx) to familiarize yourself with Wechaty, Wechaty community, and the Wechaty ecosystem @@ -44,7 +44,7 @@ This is a learning-oriented section which consists of two levels of tutorials: - Beginner tutorials - Advanced tutorials -**[Beginner tutorials](getting-started/overview.mdx)** +**[Beginner tutorials](getting-started/overview.md)** The beginner tutorials will take you by the hand and teach you how to build a Chatbot application from scratch through a series of steps. Familiarity with [Wechaty](/) or Chatbot application development in general is not a prerequisite for you to complete the beginner tutorials. @@ -55,7 +55,7 @@ The advanced tutorials require you to have at least intermediate to advanced kno ## [How to Guides](howto/overview.mdx) -This section comprises of guides that will take you through series of steps involved in addressing key problems and use-cases in Wechaty. It requires intermediate to advanced knowledge of how Wechaty works. If you are an absolute beginner, it is recommended you start from the [Introduction](/overview.mdx) and [Tutorials](getting-started/overview.mdx) sections before going to the [How to Guides](howto/overview.mdx). +This section comprises of guides that will take you through series of steps involved in addressing key problems and use-cases in Wechaty. It requires intermediate to advanced knowledge of how Wechaty works. If you are an absolute beginner, it is recommended you start from the [Introduction](/overview.mdx) and [Tutorials](getting-started/overview.md) sections before going to the [How to Guides](howto/overview.mdx). ## [Reference Guides](references/overview.mdx) @@ -65,4 +65,4 @@ The Reference Guide contains technical references for Wechaty APIs and other asp ## [Explanations](explanations/overview.mdx) -The Explanation section discusses key topics and concepts at a fairly high level and provides useful explanations to expand your knowledge of Wechaty. It requires atleast basic to intermediate knowledge of Wechaty or Chatbot application development in general. If you are an absolute beginner, we recommend you start from the [Introduction](/overview.mdx) and [Tutorials](getting-started/overview.mdx) sections of the documentation. +The Explanation section discusses key topics and concepts at a fairly high level and provides useful explanations to expand your knowledge of Wechaty. It requires atleast basic to intermediate knowledge of Wechaty or Chatbot application development in general. If you are an absolute beginner, we recommend you start from the [Introduction](/overview.mdx) and [Tutorials](getting-started/overview.md) sections of the documentation. diff --git a/docusaurus/docs/tutorials/overview.md b/docusaurus/docs/tutorials/overview.md index 926073196db..a43eee1384c 100644 --- a/docusaurus/docs/tutorials/overview.md +++ b/docusaurus/docs/tutorials/overview.md @@ -10,14 +10,14 @@ These tutorials take you by the hand through a series of steps to create a chatb ## Build your first chatbot with wechaty -If you are a total beginner to Wechaty or chatbot application development in general, we recommend you to start from the [Getting started](getting-started/overview.mdx) tutorials. In these tutorials you'll be building a **ding-dong bot** which replies with a `dong` message when it recieves a `ding` message. +If you are a total beginner to Wechaty or chatbot application development in general, we recommend you to start from the [Getting started](getting-started/overview.md) tutorials. In these tutorials you'll be building a **ding-dong bot** which replies with a `dong` message when it recieves a `ding` message. The fastest way to get started with Wechaty is to use a Cloud based IDE for **running the bot**. To understand how it works, You can either use: - [Gitpod](quick-start/running-on-gitpod.md) - [Google Cloud Shell](quick-start/running-on-google-cloud-shell.md) -If you are a total begginer then we recommend using [Gitpod](https://gitpod.io/#https://github.com/wechaty/wechaty-getting-started). +If you are a total beginner then we recommend using [Gitpod](https://gitpod.io/#https://github.com/wechaty/wechaty-getting-started). Once you get basic idea of ding-dong bot, you can try out building it from scratch by following our [Running Locally](getting-started/running-locally.mdx) tutorial. diff --git a/docusaurus/static/img/getting-started-video-tutorials.webp b/docusaurus/static/img/getting-started-video-tutorials.webp new file mode 100644 index 0000000000000000000000000000000000000000..c8ac4b2732ed356c5f03070fdb9f88849867b5b8 GIT binary patch literal 37730 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�P8kW@ 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 literal 0 HcmV?d00001 diff --git a/package.json b/package.json index cf5907342f5..f3fe1c854fd 100644 --- a/package.json +++ b/package.json @@ -64,6 +64,7 @@ "npm-run-all": "^4.1.5", "probe-image-size": "^7.2.3", "tls": "^0.0.1", + "ts-node": "^10.9.2", "tstest": "^1.2.8", "typescript": "^4.6.3", "uuid": "^8.3.2", From 729445a469f466c4b87e26d83fa75d9d1e7d1e51 Mon Sep 17 00:00:00 2001 From: aherman3 Date: Wed, 17 Apr 2024 14:32:04 +0800 Subject: [PATCH 2/9] add getting-started videos --- docusaurus/docs/getting-started/overview.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docusaurus/docs/getting-started/overview.md b/docusaurus/docs/getting-started/overview.md index f1d3de8267e..3c4e1a78221 100644 --- a/docusaurus/docs/getting-started/overview.md +++ b/docusaurus/docs/getting-started/overview.md @@ -11,7 +11,7 @@ import ServiceBadges from '../puppet-services/transclusions/badges.mdx' -If you are a total beginner to Wechaty, start from this section. +If you are a total beginner to Wechaty, start from this section. You can run Wechaty on following platforms: From 948bff9a6e28ba88c6facc029d55b741fc320b84 Mon Sep 17 00:00:00 2001 From: aherman3 Date: Wed, 17 Apr 2024 14:32:13 +0800 Subject: [PATCH 3/9] 0.11.8 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index f3fe1c854fd..f5c08f2de30 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "wechaty-docusaurus", - "version": "0.11.7", + "version": "0.11.8", "description": "Wechaty Official Website for Documentations", "private": true, "type": "module", From d82aa722b343a448f3f15053e43f14fb84ec2afe Mon Sep 17 00:00:00 2001 From: Annie Hermann <55369934+aherman3@users.noreply.github.com> Date: Tue, 23 Apr 2024 10:59:58 +0800 Subject: [PATCH 4/9] Update package.json --- package.json | 1 - 1 file changed, 1 deletion(-) diff --git a/package.json b/package.json index f5c08f2de30..209b3780f44 100644 --- a/package.json +++ b/package.json @@ -64,7 +64,6 @@ "npm-run-all": "^4.1.5", "probe-image-size": "^7.2.3", "tls": "^0.0.1", - "ts-node": "^10.9.2", "tstest": "^1.2.8", "typescript": "^4.6.3", "uuid": "^8.3.2", From 7227c794346741045548aefd575c8b3ae9703eaa Mon Sep 17 00:00:00 2001 From: aherman3 Date: Tue, 23 Apr 2024 11:17:26 +0800 Subject: [PATCH 5/9] revert .md to .mdx --- docusaurus/docs/getting-started-with-wechaty.mdx | 2 +- .../docs/getting-started/{overview.md => overview.mdx} | 2 +- docusaurus/docs/overview.mdx | 10 +++++----- docusaurus/docs/tutorials/overview.md | 2 +- 4 files changed, 8 insertions(+), 8 deletions(-) rename docusaurus/docs/getting-started/{overview.md => overview.mdx} (97%) diff --git a/docusaurus/docs/getting-started-with-wechaty.mdx b/docusaurus/docs/getting-started-with-wechaty.mdx index 3d7a126962b..2fe660f13af 100644 --- a/docusaurus/docs/getting-started-with-wechaty.mdx +++ b/docusaurus/docs/getting-started-with-wechaty.mdx @@ -16,4 +16,4 @@ Google cloud shell is also an online development and operations environment whic ## Local development environment -You can also set up your own server for running the [getting-started repository](https://github.com/wechaty/wechaty-getting-started) on your machine instead of using the cloud-based IDE. There is a [beginner-friendly tutorial](getting-started/running-locally.mdx) in the [tutorials section](getting-started/overview.md) which will take you by the hand to help you run the getting-started repository on your local machine. +You can also set up your own server for running the [getting-started repository](https://github.com/wechaty/wechaty-getting-started) on your machine instead of using the cloud-based IDE. There is a [beginner-friendly tutorial](getting-started/running-locally.mdx) in the [tutorials section](getting-started/overview.mdx) which will take you by the hand to help you run the getting-started repository on your local machine. diff --git a/docusaurus/docs/getting-started/overview.md b/docusaurus/docs/getting-started/overview.mdx similarity index 97% rename from docusaurus/docs/getting-started/overview.md rename to docusaurus/docs/getting-started/overview.mdx index 3c4e1a78221..a29dc9484c2 100644 --- a/docusaurus/docs/getting-started/overview.md +++ b/docusaurus/docs/getting-started/overview.mdx @@ -27,7 +27,7 @@ You can also watch the [video series](https://www.youtube.com/watch?v=cZd42xxaTc In the getting-started tutorials, you will learn the following fundamental features of Wechaty: -- Turn different instant messaging (IM) systems (such as WeChat, WeCom,Whatsapp, Lark,Gitter, and TikTok) accounts into chatbots. +- Turn different instant messaging (IM) systems (such as WeChat, WeCom, Whatsapp, Lark, Gitter, and TikTok) accounts into chatbots. - Work out of the box on Linux, Mac and Windows. - Supports all [puppets](../puppet-services/overview.mdx) like WeChat, WhatsApp, WeCom, Lark and so on. - Reply with a `dong` message when it recieves a `ding` message. diff --git a/docusaurus/docs/overview.mdx b/docusaurus/docs/overview.mdx index e7e14d81259..63b6a5c4ddd 100644 --- a/docusaurus/docs/overview.mdx +++ b/docusaurus/docs/overview.mdx @@ -15,7 +15,7 @@ This section is a high-level overview of how the Wechaty Documentation is struct The Wechaty Documentation covers everything you need to know about Wechaty. It comprises of five broad sections and these sections are: - [Introduction section](/overview.mdx) -- [Tutorials section](getting-started/overview.md) +- [Tutorials section](getting-started/overview.mdx) - [How to Guides section](howto/overview.mdx) - [References section](references/overview.mdx) - [Explanations section](explanations/overview.mdx) @@ -35,7 +35,7 @@ The Introduction section provides an in-depth introduction to Wechaty, Wechaty c - [Contributing to Wechaty](/contributing/overview.md) - [Changelog](/changelog.md) -## [Tutorials](getting-started/overview.md) +## [Tutorials](getting-started/overview.mdx) > Note: If you are an absolute beginner, we recommend you to start with the [Introduction](/overview.mdx) to familiarize yourself with Wechaty, Wechaty community, and the Wechaty ecosystem @@ -44,7 +44,7 @@ This is a learning-oriented section which consists of two levels of tutorials: - Beginner tutorials - Advanced tutorials -**[Beginner tutorials](getting-started/overview.md)** +**[Beginner tutorials](getting-started/overview.mdx)** The beginner tutorials will take you by the hand and teach you how to build a Chatbot application from scratch through a series of steps. Familiarity with [Wechaty](/) or Chatbot application development in general is not a prerequisite for you to complete the beginner tutorials. @@ -55,7 +55,7 @@ The advanced tutorials require you to have at least intermediate to advanced kno ## [How to Guides](howto/overview.mdx) -This section comprises of guides that will take you through series of steps involved in addressing key problems and use-cases in Wechaty. It requires intermediate to advanced knowledge of how Wechaty works. If you are an absolute beginner, it is recommended you start from the [Introduction](/overview.mdx) and [Tutorials](getting-started/overview.md) sections before going to the [How to Guides](howto/overview.mdx). +This section comprises of guides that will take you through series of steps involved in addressing key problems and use-cases in Wechaty. It requires intermediate to advanced knowledge of how Wechaty works. If you are an absolute beginner, it is recommended you start from the [Introduction](/overview.mdx) and [Tutorials](getting-started/overview.mdx) sections before going to the [How to Guides](howto/overview.mdx). ## [Reference Guides](references/overview.mdx) @@ -65,4 +65,4 @@ The Reference Guide contains technical references for Wechaty APIs and other asp ## [Explanations](explanations/overview.mdx) -The Explanation section discusses key topics and concepts at a fairly high level and provides useful explanations to expand your knowledge of Wechaty. It requires atleast basic to intermediate knowledge of Wechaty or Chatbot application development in general. If you are an absolute beginner, we recommend you start from the [Introduction](/overview.mdx) and [Tutorials](getting-started/overview.md) sections of the documentation. +The Explanation section discusses key topics and concepts at a fairly high level and provides useful explanations to expand your knowledge of Wechaty. It requires atleast basic to intermediate knowledge of Wechaty or Chatbot application development in general. If you are an absolute beginner, we recommend you start from the [Introduction](/overview.mdx) and [Tutorials](getting-started/overview.mdx) sections of the documentation. diff --git a/docusaurus/docs/tutorials/overview.md b/docusaurus/docs/tutorials/overview.md index a43eee1384c..1dce93fcdc1 100644 --- a/docusaurus/docs/tutorials/overview.md +++ b/docusaurus/docs/tutorials/overview.md @@ -10,7 +10,7 @@ These tutorials take you by the hand through a series of steps to create a chatb ## Build your first chatbot with wechaty -If you are a total beginner to Wechaty or chatbot application development in general, we recommend you to start from the [Getting started](getting-started/overview.md) tutorials. In these tutorials you'll be building a **ding-dong bot** which replies with a `dong` message when it recieves a `ding` message. +If you are a total beginner to Wechaty or chatbot application development in general, we recommend you to start from the [Getting started](getting-started/overview.mdx) tutorials. In these tutorials you'll be building a **ding-dong bot** which replies with a `dong` message when it recieves a `ding` message. The fastest way to get started with Wechaty is to use a Cloud based IDE for **running the bot**. To understand how it works, You can either use: From bf72d451f783c5f00c591dc12740987f0ee85b2d Mon Sep 17 00:00:00 2001 From: aherman3 Date: Tue, 23 Apr 2024 11:17:38 +0800 Subject: [PATCH 6/9] 0.11.9 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index f5c08f2de30..4de6487117e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "wechaty-docusaurus", - "version": "0.11.8", + "version": "0.11.9", "description": "Wechaty Official Website for Documentations", "private": true, "type": "module", From 4536d2a83dcb4cffe0882d5e0f7f2784c37e2c9a Mon Sep 17 00:00:00 2001 From: aherman3 Date: Tue, 23 Apr 2024 11:18:50 +0800 Subject: [PATCH 7/9] 0.11.10 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 59bc0d3ba1a..1f885fd7a82 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "wechaty-docusaurus", - "version": "0.11.9", + "version": "0.11.10", "description": "Wechaty Official Website for Documentations", "private": true, "type": "module", From 9fce52d50e6d3a5119e109c51708ec0ddf588320 Mon Sep 17 00:00:00 2001 From: Annie Hermann <55369934+aherman3@users.noreply.github.com> Date: Tue, 23 Apr 2024 11:24:29 +0800 Subject: [PATCH 8/9] Update docusaurus/docs/getting-started/overview.mdx Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --- docusaurus/docs/getting-started/overview.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docusaurus/docs/getting-started/overview.mdx b/docusaurus/docs/getting-started/overview.mdx index a29dc9484c2..5075ed11c16 100644 --- a/docusaurus/docs/getting-started/overview.mdx +++ b/docusaurus/docs/getting-started/overview.mdx @@ -30,7 +30,7 @@ In the getting-started tutorials, you will learn the following fundamental featu - Turn different instant messaging (IM) systems (such as WeChat, WeCom, Whatsapp, Lark, Gitter, and TikTok) accounts into chatbots. - Work out of the box on Linux, Mac and Windows. - Supports all [puppets](../puppet-services/overview.mdx) like WeChat, WhatsApp, WeCom, Lark and so on. -- Reply with a `dong` message when it recieves a `ding` message. +- Reply with a `dong` message when it receives a `ding` message. - Receive and accept friendship requests. - Create group chats and add/remove users. - Send files, URLs, and contact cards. From 5f23a1590536655969fe204c9ee1ace6ddfbd560 Mon Sep 17 00:00:00 2001 From: Annie Hermann <55369934+aherman3@users.noreply.github.com> Date: Tue, 23 Apr 2024 11:25:08 +0800 Subject: [PATCH 9/9] Update docusaurus/docs/tutorials/overview.md Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --- docusaurus/docs/tutorials/overview.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docusaurus/docs/tutorials/overview.md b/docusaurus/docs/tutorials/overview.md index 1dce93fcdc1..4a49cba274e 100644 --- a/docusaurus/docs/tutorials/overview.md +++ b/docusaurus/docs/tutorials/overview.md @@ -19,7 +19,7 @@ The fastest way to get started with Wechaty is to use a Cloud based IDE for **ru If you are a total beginner then we recommend using [Gitpod](https://gitpod.io/#https://github.com/wechaty/wechaty-getting-started). -Once you get basic idea of ding-dong bot, you can try out building it from scratch by following our [Running Locally](getting-started/running-locally.mdx) tutorial. +Once you get a basic idea of ding-dong bot, you can try out building it from scratch by following our [Running Locally](getting-started/running-locally.mdx) tutorial.