zengen 0.2.6 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.zen/meta.json +24 -7
- package/.zen/src/ar-SA/50bf41ac6fd8ec8cd6481fd1114aaf00abed0461fc8e8c81cc0373d38ffa835c.md +121 -0
- package/.zen/src/ar-SA/6e7ca196ba51235db30218cf9b28f92d35937b09a22411062be088a0086b29ed.md +70 -0
- package/.zen/src/ar-SA/98a9dd72146a69d155030cb7286ea2d10e0521451de9754cbdfcde46c46f2c71.md +71 -0
- package/.zen/src/da-DK/50bf41ac6fd8ec8cd6481fd1114aaf00abed0461fc8e8c81cc0373d38ffa835c.md +121 -0
- package/.zen/src/da-DK/6e7ca196ba51235db30218cf9b28f92d35937b09a22411062be088a0086b29ed.md +70 -0
- package/.zen/src/da-DK/98a9dd72146a69d155030cb7286ea2d10e0521451de9754cbdfcde46c46f2c71.md +71 -0
- package/.zen/src/de-DE/50bf41ac6fd8ec8cd6481fd1114aaf00abed0461fc8e8c81cc0373d38ffa835c.md +121 -0
- package/.zen/src/de-DE/6e7ca196ba51235db30218cf9b28f92d35937b09a22411062be088a0086b29ed.md +70 -0
- package/.zen/src/de-DE/98a9dd72146a69d155030cb7286ea2d10e0521451de9754cbdfcde46c46f2c71.md +71 -0
- package/.zen/src/en-US/50bf41ac6fd8ec8cd6481fd1114aaf00abed0461fc8e8c81cc0373d38ffa835c.md +121 -0
- package/.zen/src/en-US/6e7ca196ba51235db30218cf9b28f92d35937b09a22411062be088a0086b29ed.md +70 -0
- package/.zen/src/en-US/98a9dd72146a69d155030cb7286ea2d10e0521451de9754cbdfcde46c46f2c71.md +71 -0
- package/.zen/src/es-ES/50bf41ac6fd8ec8cd6481fd1114aaf00abed0461fc8e8c81cc0373d38ffa835c.md +121 -0
- package/.zen/src/es-ES/6e7ca196ba51235db30218cf9b28f92d35937b09a22411062be088a0086b29ed.md +70 -0
- package/.zen/src/es-ES/98a9dd72146a69d155030cb7286ea2d10e0521451de9754cbdfcde46c46f2c71.md +71 -0
- package/.zen/src/es-MX/50bf41ac6fd8ec8cd6481fd1114aaf00abed0461fc8e8c81cc0373d38ffa835c.md +121 -0
- package/.zen/src/es-MX/6e7ca196ba51235db30218cf9b28f92d35937b09a22411062be088a0086b29ed.md +70 -0
- package/.zen/src/es-MX/98a9dd72146a69d155030cb7286ea2d10e0521451de9754cbdfcde46c46f2c71.md +71 -0
- package/.zen/src/fi-FI/50bf41ac6fd8ec8cd6481fd1114aaf00abed0461fc8e8c81cc0373d38ffa835c.md +121 -0
- package/.zen/src/fi-FI/6e7ca196ba51235db30218cf9b28f92d35937b09a22411062be088a0086b29ed.md +70 -0
- package/.zen/src/fi-FI/98a9dd72146a69d155030cb7286ea2d10e0521451de9754cbdfcde46c46f2c71.md +71 -0
- package/.zen/src/fr-FR/50bf41ac6fd8ec8cd6481fd1114aaf00abed0461fc8e8c81cc0373d38ffa835c.md +121 -0
- package/.zen/src/fr-FR/6e7ca196ba51235db30218cf9b28f92d35937b09a22411062be088a0086b29ed.md +70 -0
- package/.zen/src/fr-FR/98a9dd72146a69d155030cb7286ea2d10e0521451de9754cbdfcde46c46f2c71.md +71 -0
- package/.zen/src/hi-IN/50bf41ac6fd8ec8cd6481fd1114aaf00abed0461fc8e8c81cc0373d38ffa835c.md +121 -0
- package/.zen/src/hi-IN/6e7ca196ba51235db30218cf9b28f92d35937b09a22411062be088a0086b29ed.md +70 -0
- package/.zen/src/hi-IN/98a9dd72146a69d155030cb7286ea2d10e0521451de9754cbdfcde46c46f2c71.md +71 -0
- package/.zen/src/id-ID/50bf41ac6fd8ec8cd6481fd1114aaf00abed0461fc8e8c81cc0373d38ffa835c.md +121 -0
- package/.zen/src/id-ID/6e7ca196ba51235db30218cf9b28f92d35937b09a22411062be088a0086b29ed.md +70 -0
- package/.zen/src/id-ID/98a9dd72146a69d155030cb7286ea2d10e0521451de9754cbdfcde46c46f2c71.md +71 -0
- package/.zen/src/it-IT/50bf41ac6fd8ec8cd6481fd1114aaf00abed0461fc8e8c81cc0373d38ffa835c.md +121 -0
- package/.zen/src/it-IT/6e7ca196ba51235db30218cf9b28f92d35937b09a22411062be088a0086b29ed.md +70 -0
- package/.zen/src/it-IT/98a9dd72146a69d155030cb7286ea2d10e0521451de9754cbdfcde46c46f2c71.md +71 -0
- package/.zen/src/ja-JP/50bf41ac6fd8ec8cd6481fd1114aaf00abed0461fc8e8c81cc0373d38ffa835c.md +121 -0
- package/.zen/src/ja-JP/6e7ca196ba51235db30218cf9b28f92d35937b09a22411062be088a0086b29ed.md +70 -0
- package/.zen/src/ja-JP/98a9dd72146a69d155030cb7286ea2d10e0521451de9754cbdfcde46c46f2c71.md +71 -0
- package/.zen/src/ko-KR/50bf41ac6fd8ec8cd6481fd1114aaf00abed0461fc8e8c81cc0373d38ffa835c.md +121 -0
- package/.zen/src/ko-KR/6e7ca196ba51235db30218cf9b28f92d35937b09a22411062be088a0086b29ed.md +70 -0
- package/.zen/src/ko-KR/98a9dd72146a69d155030cb7286ea2d10e0521451de9754cbdfcde46c46f2c71.md +71 -0
- package/.zen/src/nl-NL/50bf41ac6fd8ec8cd6481fd1114aaf00abed0461fc8e8c81cc0373d38ffa835c.md +121 -0
- package/.zen/src/nl-NL/6e7ca196ba51235db30218cf9b28f92d35937b09a22411062be088a0086b29ed.md +70 -0
- package/.zen/src/nl-NL/98a9dd72146a69d155030cb7286ea2d10e0521451de9754cbdfcde46c46f2c71.md +71 -0
- package/.zen/src/no-NO/50bf41ac6fd8ec8cd6481fd1114aaf00abed0461fc8e8c81cc0373d38ffa835c.md +121 -0
- package/.zen/src/no-NO/6e7ca196ba51235db30218cf9b28f92d35937b09a22411062be088a0086b29ed.md +70 -0
- package/.zen/src/no-NO/98a9dd72146a69d155030cb7286ea2d10e0521451de9754cbdfcde46c46f2c71.md +71 -0
- package/.zen/src/pl-PL/50bf41ac6fd8ec8cd6481fd1114aaf00abed0461fc8e8c81cc0373d38ffa835c.md +121 -0
- package/.zen/src/pl-PL/6e7ca196ba51235db30218cf9b28f92d35937b09a22411062be088a0086b29ed.md +70 -0
- package/.zen/src/pl-PL/98a9dd72146a69d155030cb7286ea2d10e0521451de9754cbdfcde46c46f2c71.md +71 -0
- package/.zen/src/pt-BR/50bf41ac6fd8ec8cd6481fd1114aaf00abed0461fc8e8c81cc0373d38ffa835c.md +121 -0
- package/.zen/src/pt-BR/6e7ca196ba51235db30218cf9b28f92d35937b09a22411062be088a0086b29ed.md +70 -0
- package/.zen/src/pt-BR/98a9dd72146a69d155030cb7286ea2d10e0521451de9754cbdfcde46c46f2c71.md +71 -0
- package/.zen/src/pt-PT/50bf41ac6fd8ec8cd6481fd1114aaf00abed0461fc8e8c81cc0373d38ffa835c.md +121 -0
- package/.zen/src/pt-PT/6e7ca196ba51235db30218cf9b28f92d35937b09a22411062be088a0086b29ed.md +70 -0
- package/.zen/src/pt-PT/98a9dd72146a69d155030cb7286ea2d10e0521451de9754cbdfcde46c46f2c71.md +71 -0
- package/.zen/src/ru-RU/50bf41ac6fd8ec8cd6481fd1114aaf00abed0461fc8e8c81cc0373d38ffa835c.md +121 -0
- package/.zen/src/ru-RU/6e7ca196ba51235db30218cf9b28f92d35937b09a22411062be088a0086b29ed.md +70 -0
- package/.zen/src/ru-RU/98a9dd72146a69d155030cb7286ea2d10e0521451de9754cbdfcde46c46f2c71.md +71 -0
- package/.zen/src/sv-SE/50bf41ac6fd8ec8cd6481fd1114aaf00abed0461fc8e8c81cc0373d38ffa835c.md +121 -0
- package/.zen/src/sv-SE/6e7ca196ba51235db30218cf9b28f92d35937b09a22411062be088a0086b29ed.md +70 -0
- package/.zen/src/sv-SE/98a9dd72146a69d155030cb7286ea2d10e0521451de9754cbdfcde46c46f2c71.md +71 -0
- package/.zen/src/th-TH/50bf41ac6fd8ec8cd6481fd1114aaf00abed0461fc8e8c81cc0373d38ffa835c.md +121 -0
- package/.zen/src/th-TH/6e7ca196ba51235db30218cf9b28f92d35937b09a22411062be088a0086b29ed.md +70 -0
- package/.zen/src/th-TH/98a9dd72146a69d155030cb7286ea2d10e0521451de9754cbdfcde46c46f2c71.md +71 -0
- package/.zen/src/tr-TR/50bf41ac6fd8ec8cd6481fd1114aaf00abed0461fc8e8c81cc0373d38ffa835c.md +121 -0
- package/.zen/src/tr-TR/6e7ca196ba51235db30218cf9b28f92d35937b09a22411062be088a0086b29ed.md +70 -0
- package/.zen/src/tr-TR/98a9dd72146a69d155030cb7286ea2d10e0521451de9754cbdfcde46c46f2c71.md +71 -0
- package/.zen/src/uk-UA/50bf41ac6fd8ec8cd6481fd1114aaf00abed0461fc8e8c81cc0373d38ffa835c.md +121 -0
- package/.zen/src/uk-UA/6e7ca196ba51235db30218cf9b28f92d35937b09a22411062be088a0086b29ed.md +70 -0
- package/.zen/src/uk-UA/98a9dd72146a69d155030cb7286ea2d10e0521451de9754cbdfcde46c46f2c71.md +71 -0
- package/.zen/src/vi-VN/50bf41ac6fd8ec8cd6481fd1114aaf00abed0461fc8e8c81cc0373d38ffa835c.md +121 -0
- package/.zen/src/vi-VN/6e7ca196ba51235db30218cf9b28f92d35937b09a22411062be088a0086b29ed.md +70 -0
- package/.zen/src/vi-VN/98a9dd72146a69d155030cb7286ea2d10e0521451de9754cbdfcde46c46f2c71.md +71 -0
- package/.zen/src/zh-Hans/50bf41ac6fd8ec8cd6481fd1114aaf00abed0461fc8e8c81cc0373d38ffa835c.md +123 -0
- package/.zen/src/zh-Hans/6e7ca196ba51235db30218cf9b28f92d35937b09a22411062be088a0086b29ed.md +74 -0
- package/.zen/src/zh-Hans/98a9dd72146a69d155030cb7286ea2d10e0521451de9754cbdfcde46c46f2c71.md +75 -0
- package/.zen/src/zh-Hant/50bf41ac6fd8ec8cd6481fd1114aaf00abed0461fc8e8c81cc0373d38ffa835c.md +123 -0
- package/.zen/src/zh-Hant/6e7ca196ba51235db30218cf9b28f92d35937b09a22411062be088a0086b29ed.md +70 -0
- package/.zen/src/zh-Hant/98a9dd72146a69d155030cb7286ea2d10e0521451de9754cbdfcde46c46f2c71.md +71 -0
- package/README.md +1 -2
- package/assets/templates/default/layout.html +82 -0
- package/dist/build/pipeline.d.ts.map +1 -1
- package/dist/build/pipeline.js +0 -1
- package/dist/build/pipeline.js.map +1 -1
- package/dist/cli.js +0 -2
- package/dist/cli.js.map +1 -1
- package/dist/process/template.d.ts.map +1 -1
- package/dist/process/template.js +3 -4
- package/dist/process/template.js.map +1 -1
- package/dist/types.d.ts +0 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/convertMarkdownToHtml.d.ts.map +1 -1
- package/dist/utils/convertMarkdownToHtml.js +75 -22
- package/dist/utils/convertMarkdownToHtml.js.map +1 -1
- package/docs/test-mermaid.md +105 -0
- package/package.json +2 -2
- package/src/build/pipeline.ts +0 -1
- package/src/cli.ts +0 -2
- package/src/process/template.ts +3 -9
- package/src/types.ts +0 -1
- package/src/utils/convertMarkdownToHtml.ts +80 -21
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
---
|
|
2
|
+
'title': 'ZEN - เครื่องสร้างเว็บไซต์แบบสแตติกสุดมินิมอลสำหรับ Markdown + AI'
|
|
3
|
+
'summary': 'ZEN เป็นเครื่องสร้างเว็บไซต์แบบสแตติกที่ผสานความสามารถของ AI ออกแบบมาสำหรับเอกสาร Markdown โดยเฉพาะ ช่วยให้ผู้ใช้สามารถแปลงโฟลเดอร์ Git ที่มีไฟล์ Markdown ไปเป็นเว็บไซต์ HTML แบบสแตติกได้โดยไม่ต้องตั้งค่าซับซ้อน การตั้งค่าทั้งหมดถูกซ่อนไว้ในไดเรกทอรี .zen ฟีเจอร์หลักประกอบด้วยการนำทางแบบจัดหมวดหมู่อัจฉริยะ (ใช้ AI วิเคราะห์เนื้อหาเพื่อสร้างแผนที่เว็บไซต์) การแปลแบบเพิ่มเติมอัตโนมัติ (รองรับหลายภาษา ผู้ใช้สามารถเขียนด้วยภาษาหลักได้ โดยให้ AI จัดการแปล) และประสบการณ์การเขียนที่รบกวนผู้ใช้น้อยที่สุด คู่มือเริ่มต้นเร็วกำหนดให้ต้องติดตั้ง Node.js, รับ OpenAI API Key และ Git จากนั้นสร้างเว็บไซต์ผ่าน command line โดยรองรับการระบุภาษาและ URL ฐาน'
|
|
4
|
+
'tags':
|
|
5
|
+
- 'เครื่องสร้างเว็บไซต์แบบสแตติก'
|
|
6
|
+
- 'Markdown'
|
|
7
|
+
- 'AI'
|
|
8
|
+
- 'การแปลหลายภาษา'
|
|
9
|
+
- 'มินิมอลลิสต์'
|
|
10
|
+
- 'เครื่องมือเอกสาร'
|
|
11
|
+
- 'Git'
|
|
12
|
+
'inferred_lang': 'zh-Hans'
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
# ZEN - เครื่องสร้างเว็บไซต์แบบสแตติกสุดมินิมอลสำหรับ Markdown + AI
|
|
16
|
+
|
|
17
|
+
[> ตัวอย่างเว็บไซต์](https://zen.zccz14.com/)
|
|
18
|
+
|
|
19
|
+
## ฟังก์ชันพื้นฐาน
|
|
20
|
+
|
|
21
|
+
1. 📃 **การสร้างเว็บไซต์แบบสแตติก**: แปลงโฟลเดอร์ git ใดๆ ที่มี Markdown ไปเป็นเว็บไซต์ HTML แบบสแตติก
|
|
22
|
+
2. 🧭 **การนำทางแบบจัดหมวดหมู่อัจฉริยะ**: ใช้ AI วิเคราะห์เนื้อหาเพื่อสร้างแผนที่เว็บไซต์และการนำทาง โดยไม่ขึ้นกับตำแหน่งของไฟล์ต้นฉบับ
|
|
23
|
+
3. 🌍 **การแปลแบบเพิ่มเติมอัตโนมัติ**: ใช้ AI ทำการแปลแบบเพิ่มเติม ทำให้ผู้ใช้สามารถเขียน Markdown ด้วยภาษาหลักของตน แต่ผู้ใช้สามารถเข้าถึงเนื้อหาได้หลายภาษา
|
|
24
|
+
|
|
25
|
+
ทำไมถึงต้องสร้างเครื่องสร้างเว็บไซต์แบบสแตติกสำหรับ Markdown ขึ้นมาอีก? ผมได้ทบทวนใหม่ว่าในยุคของ AI เครื่องมือเอกสารสามารถบริการผู้เขียนได้ดีขึ้นอย่างไร:
|
|
26
|
+
|
|
27
|
+
- กลับสู่เนื้อหา: รบกวนน้อยที่สุด มุ่งเน้นที่การเขียน
|
|
28
|
+
|
|
29
|
+
ทำให้เอกสารกลับสู่แก่นแท้ ทำให้การเขียนกลับสู่ความสงบ
|
|
30
|
+
|
|
31
|
+
ประการแรก ผมไม่อยากเป็นบรรณารักษ์ บางครั้งผมอยากเขียนอะไรบางอย่าง แต่ผมอาจยังไม่ได้คิดชื่อเรื่องให้ดี หรือยังไม่ได้จัดระเบียบเป็นพิเศษ ผมหวังว่า LLM จะช่วยสร้างชื่อเรื่อง สรุปเนื้อหา จัดหมวดหมู่ สร้างการนำทาง และงานจัดระเบียบอื่นๆ ให้โดยอัตโนมัติ
|
|
32
|
+
|
|
33
|
+
ประการที่สอง ห้องทำงานของผมต้องสะอาดเรียบร้อย ผมไม่ต้องการเครื่องมือสร้างที่ต้องตั้งค่าซับซ้อน ยุ่งยากกับการตั้งค่าเอกสารที่ซับซ้อน ไม่ชอบโครงสร้างที่วุ่นวาย ทุกครั้งที่เห็นไฟล์การตั้งค่าและโครงสร้างโปรเจกต์ของเครื่องมืออย่าง Docusaurus, VuePress, Astro ผมก็ปวดหัว ตอนนี้ ZEN เลือกที่จะซ่อนการตั้งค่าทั้งหมดไว้ในไดเรกทอรี .zen ซ่อนไว้ในมุมห้อง ผู้ใช้เพียงแค่ต้องโฟกัสที่การเขียนเนื้อหา ส่วนที่เหลือให้ ZEN จัดการ ไดเรกทอรีอื่นๆ ทั้งหมดคือพื้นที่การเขียนของคุณ คุณสามารถจัดระเบียบไฟล์ Markdown ของคุณได้ตามต้องการ
|
|
34
|
+
|
|
35
|
+
- กลับสู่ภาษาหลัก: เขียนด้วยภาษาหลัก สร้างเวอร์ชันหลายภาษาได้อย่างลื่นไหล
|
|
36
|
+
|
|
37
|
+
ชีวิตสั้นนัก ผมขี้เกียจแปล เวลาที่คนใช้ภาษาหลักของตน นั่นคือเวลาที่สามารถดึงเอาความลึกซึ้งของการคิดออกมาได้มากที่สุด แต่ในขณะเดียวกัน การเชื่อมต่อกับโลกก็เป็นสิ่งจำเป็น ผมไม่อยากเสียโอกาสในการสื่อสารหลายภาษา ดังนั้นผมจึงหวังว่าจะมีเครื่องมือที่ทำให้ผมเขียนด้วยภาษาหลักได้ ในขณะเดียวกันก็ทำให้คนอื่นๆ ได้เห็นเนื้อหาของผมมากขึ้น ปัจจุบัน i18n นั้นนอกจากต้องแปลเองแล้ว ยังต้องดูแลการอัปเดตเนื้อหาด้วยตัวเองอีก ซึ่งยุ่งยากมาก ผมเลือกใช้ LLM ช่วยแปล ประหยัดเวลาไปได้มาก และสามารถแปลเป็นหลายภาษาได้ด้วยคลิกเดียว
|
|
38
|
+
|
|
39
|
+
## เริ่มต้นเร็ว
|
|
40
|
+
|
|
41
|
+
ข้อกำหนดเบื้องต้น:
|
|
42
|
+
|
|
43
|
+
- ติดตั้ง [Node.js](https://nodejs.org/) แล้ว (แนะนำเวอร์ชัน 18 ขึ้นไป ต้องมีคำสั่ง npx)
|
|
44
|
+
- ได้รับ [OpenAI API Key](https://platform.openai.com/account/api-keys) แล้ว หรือ OPENAI compatible API Key
|
|
45
|
+
- ติดตั้ง Git แล้ว (ใช้สำหรับแสดงรายการไฟล์ Markdown จาก Git และไม่รวมไฟล์ที่ถูกกรองโดยกฎ .gitignore)
|
|
46
|
+
|
|
47
|
+
ขั้นแรก ทำงานในโฟลเดอร์ที่ถูกจัดการโดย git อยู่แล้ว:
|
|
48
|
+
|
|
49
|
+
ตั้งค่าตัวแปรสภาพแวดล้อม
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
export OPENAI_API_KEY="sk-xxxxxx" # จำเป็น: โปรดแทนที่ด้วย OpenAI API Key ของคุณ
|
|
53
|
+
export OPENAI_BASE_URL="https://api.openai.com/v1" # ไม่บังคับ ค่าเริ่มต้นใช้ OpenAI official API
|
|
54
|
+
export OPENAI_MODEL="gpt-3.5-turbo" # ไม่บังคับ ค่าเริ่มต้นใช้โมเดล gpt-3.5-turbo
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
สร้างเว็บไซต์ รองรับการแปลหลายภาษา ใช้ไดเรกทอรีปัจจุบันเป็นไดเรกทอรีต้นทาง และส่งออกไปยังไดเรกทอรี `.zen/dist`
|
|
58
|
+
|
|
59
|
+
- สามารถระบุเวอร์ชันภาษาที่ต้องการสร้างได้โดยใช้พารามิเตอร์ `--lang` หลายครั้ง (เช่น `--lang zh-Hans --lang en-US`)
|
|
60
|
+
- สามารถระบุ URL ฐานของเว็บไซต์ได้โดยใช้พารามิเตอร์ `--base-url` (เช่น ชื่อรีพอสิทอรีบน GitHub Pages)
|
|
61
|
+
- ไม่จำเป็นต้องตั้งค่าภาษาต้นทาง ZEN จะตรวจจับโดยอัตโนมัติ
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
npx zengen@latest build --lang zh-Hans --lang en-US
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
**ดูพารามิเตอร์เพิ่มเติมหรือความช่วยเหลือ**:
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
npx zengen@latest
|
|
71
|
+
```
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
---
|
|
2
|
+
'title': 'Mermaid Diyagram Test Dokümanı'
|
|
3
|
+
'summary': "Bu doküman, ZEN'deki Mermaid diyagram oluşturma işlevini doğrulamak için kullanılan bir test dosyasıdır. Akış şeması, sıralama diyagramı, Gantt şeması, sınıf diyagramı, durum diyagramı ve pasta grafik gibi çeşitli Mermaid diyagram türlerinin örneklerini içerir ve hata mesajı görüntülemesini kontrol etmek için hatalı bir sözdizimi testi de bulunur. Doküman, Mermaid entegrasyonunun ZEN'de düzgün çalıştığını göstermeyi amaçlamaktadır."
|
|
4
|
+
'tags':
|
|
5
|
+
- 'Mermaid'
|
|
6
|
+
- 'Diyagram Testi'
|
|
7
|
+
- 'ZEN'
|
|
8
|
+
- 'Akış Şeması'
|
|
9
|
+
- 'Sıralama Diyagramı'
|
|
10
|
+
- 'Gantt Şeması'
|
|
11
|
+
- 'Sınıf Diyagramı'
|
|
12
|
+
- 'Durum Diyagramı'
|
|
13
|
+
'inferred_date': '2024-01-01'
|
|
14
|
+
'inferred_lang': 'tr-TR'
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
# Mermaid Diyagram Testi
|
|
18
|
+
|
|
19
|
+
Bu, ZEN'deki Mermaid diyagram oluşturma işlevini doğrulamak için kullanılan bir test dosyasıdır.
|
|
20
|
+
|
|
21
|
+
## Akış Şeması Örneği
|
|
22
|
+
|
|
23
|
+
```mermaid
|
|
24
|
+
graph TD
|
|
25
|
+
A[Başla] --> B{Devam edilsin mi?}
|
|
26
|
+
B -->|Evet| C[İşlemi gerçekleştir]
|
|
27
|
+
B -->|Hayır| D[Son]
|
|
28
|
+
C --> E[Sonucu kontrol et]
|
|
29
|
+
E --> F{Başarılı mı?}
|
|
30
|
+
F -->|Evet| G[Tamamlandı]
|
|
31
|
+
F -->|Hayır| H[Yeniden dene]
|
|
32
|
+
H --> C
|
|
33
|
+
G --> D
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
## Sıralama Diyagramı Örneği
|
|
37
|
+
|
|
38
|
+
```mermaid
|
|
39
|
+
sequenceDiagram
|
|
40
|
+
participant Kullanıcı
|
|
41
|
+
participant Sistem
|
|
42
|
+
participant Veritabanı
|
|
43
|
+
|
|
44
|
+
Kullanıcı->>Sistem: İstek gönder
|
|
45
|
+
Sistem->>Veritabanı: Veri sorgula
|
|
46
|
+
Veritabanı-->>Sistem: Sonuçları döndür
|
|
47
|
+
Sistem-->>Kullanıcı: Sonuçları göster
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
## Gantt Şeması Örneği
|
|
51
|
+
|
|
52
|
+
```mermaid
|
|
53
|
+
gantt
|
|
54
|
+
title Proje Zaman Çizelgesi
|
|
55
|
+
dateFormat YYYY-MM-DD
|
|
56
|
+
section Tasarım
|
|
57
|
+
Gereksinim Analizi :done, des1, 2024-01-01, 7d
|
|
58
|
+
Prototip Tasarımı :active, des2, 2024-01-08, 5d
|
|
59
|
+
Detaylı Tasarım : des3, after des2, 5d
|
|
60
|
+
section Geliştirme
|
|
61
|
+
Ön Yüz Geliştirme : dev1, after des3, 10d
|
|
62
|
+
Arka Yüz Geliştirme : dev2, after des3, 15d
|
|
63
|
+
section Test
|
|
64
|
+
Birim Testleri : test1, after dev1, 5d
|
|
65
|
+
Entegrasyon Testleri : test2, after dev2, 5d
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
## Sınıf Diyagramı Örneği
|
|
69
|
+
|
|
70
|
+
```mermaid
|
|
71
|
+
classDiagram
|
|
72
|
+
class Hayvan {
|
|
73
|
+
+String ad
|
|
74
|
+
+int yaş
|
|
75
|
+
+void ye()
|
|
76
|
+
+void uyu()
|
|
77
|
+
}
|
|
78
|
+
class Köpek {
|
|
79
|
+
+void havla()
|
|
80
|
+
}
|
|
81
|
+
class Kedi {
|
|
82
|
+
+void miyavla()
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
Hayvan <|-- Köpek
|
|
86
|
+
Hayvan <|-- Kedi
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
## Durum Diyagramı Örneği
|
|
90
|
+
|
|
91
|
+
```mermaid
|
|
92
|
+
stateDiagram-v2
|
|
93
|
+
[*] --> Boşta
|
|
94
|
+
Boşta --> İşleniyor : İşlemi başlat
|
|
95
|
+
İşleniyor --> Başarılı : İşlem başarılı
|
|
96
|
+
İşleniyor --> Hata : İşlem başarısız
|
|
97
|
+
Başarılı --> [*]
|
|
98
|
+
Hata --> [*]
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
## Pasta Grafik Örneği
|
|
102
|
+
|
|
103
|
+
```mermaid
|
|
104
|
+
pie title Tarayıcı Kullanım Oranları
|
|
105
|
+
"Chrome" : 65.2
|
|
106
|
+
"Firefox" : 15.3
|
|
107
|
+
"Safari" : 12.5
|
|
108
|
+
"Edge" : 5.2
|
|
109
|
+
"Diğer" : 1.8
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
## Hatalı Sözdizimi Testi (hata mesajı göstermeli)
|
|
113
|
+
|
|
114
|
+
```mermaid
|
|
115
|
+
graph TD
|
|
116
|
+
A --> B
|
|
117
|
+
// Burada ok tanımı eksik
|
|
118
|
+
C --> D
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
Bu test dosyası, ZEN'deki Mermaid entegrasyonunun düzgün çalışıp çalışmadığını doğrulamak için çeşitli Mermaid diyagram türlerini içermektedir.
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
---
|
|
2
|
+
'title': 'ZEN - Minimalist Markdown + AI Statik Site Oluşturucu'
|
|
3
|
+
'summary': "ZEN, AI entegreli bir statik site oluşturucudur ve belge yazımı ile site inşa sürecini basitleştirmeye odaklanır. Kullanıcıların, git ile yönetilen bir klasörde Markdown kullanarak karmaşık yapılandırmaya gerek kalmadan statik HTML siteler oluşturmasına olanak tanır; tüm ayarlar .zen dizini altında gizlidir. Temel özellikleri arasında akıllı kategorilendirme ve navigasyon (AI ile içerik analizi yaparak site haritası oluşturur), otomatik artımlı çeviri (çok dilli versiyonları destekler, kullanıcılar ana dillerinde yazabilir, AI çeviriyi halleder) ve en az rahatsızlık veren bir yazım deneyimi bulunur. Araç, Node.js, OpenAI API Anahtarı ve Git'e bağımlıdır; komut satırı üzerinden hızlıca inşa edilebilir ve zh-Hans, en-US gibi dil parametrelerini belirlemeyi destekler."
|
|
4
|
+
'tags':
|
|
5
|
+
- 'Statik Site Oluşturucu'
|
|
6
|
+
- 'Markdown'
|
|
7
|
+
- 'AI'
|
|
8
|
+
- 'Çok Dilli Çeviri'
|
|
9
|
+
- 'Minimalizm'
|
|
10
|
+
- 'Belge Aracı'
|
|
11
|
+
- 'ZEN'
|
|
12
|
+
'inferred_lang': 'zh-Hans'
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
# ZEN - Minimalist Markdown + AI Statik Site Oluşturucu
|
|
16
|
+
|
|
17
|
+
[> Website Demo](https://zen.zccz14.com/)
|
|
18
|
+
|
|
19
|
+
## Temel Özellikler
|
|
20
|
+
|
|
21
|
+
1. 📃 **Statik Site Oluşturma**: Markdown içeren herhangi bir git klasörünü statik bir HTML sitesine dönüştürür.
|
|
22
|
+
2. 🧭 **Akıllı Kategorilendirme ve Navigasyon**: AI kullanarak içerik analizi yapar, site haritası ve navigasyon oluşturur; kaynak dosyaların konumu önemli değildir.
|
|
23
|
+
3. 🌍 **Otomatik Artımlı Çeviri**: AI ile artımlı çeviri yapar, kullanıcıların ana dillerinde Markdown yazmasına izin verir, ancak kullanıcılar çok dilli olabilir.
|
|
24
|
+
|
|
25
|
+
Neden bir Markdown statik site oluşturucusu daha yapıldı? AI çağında, belge araçlarının yazarlara nasıl daha iyi hizmet edebileceğini yeniden düşündüm:
|
|
26
|
+
|
|
27
|
+
- İçeriğe Dönüş: Minimum rahatsızlık, yazmaya odaklanma
|
|
28
|
+
|
|
29
|
+
Belgeleri özüne döndürmek, yazmayı huzura kavuşturmak.
|
|
30
|
+
|
|
31
|
+
Birincisi, kütüphaneci olmak istemiyorum. Bazen bir şeyler yazmak isterim ama henüz başlığını düşünmemiş, özel bir organizasyon oluşturmamış olabilirim. LLM'nin başlık oluşturma, özet çıkarma, kategorilendirme, navigasyon gibi düzenleme işlerini otomatik yapmasını umuyorum.
|
|
32
|
+
|
|
33
|
+
İkincisi, çalışma odam temiz olmalı. Karmaşık yapılandırmalı inşa araçları, karmaşık belge ayarlarıyla uğraşmak, karmaşık yapılar istemiyorum. Docusaurus, VuePress, Astro gibi araçların yapılandırma dosyalarını ve proje yapılarını her gördüğümde başım ağrıyor. Şimdi, ZEN tüm ayarları .zen dizini altına gizlemeyi, köşeye süpürmeyi seçiyor; kullanıcı sadece yazım içeriğine odaklanıyor, gerisini ZEN halleder. Diğer dizinler sizin yazım alanınızdır, Markdown dosyalarınızı istediğiniz gibi düzenleyebilirsiniz.
|
|
34
|
+
|
|
35
|
+
- Ana Dile Dönüş: Ana dilde yazın, akıcı çok dilli versiyonlar oluşturun
|
|
36
|
+
|
|
37
|
+
Hayat kısa, çeviri yapmaya üşeniyorum. İnsanlar ana dillerini kullanırken düşünme derinliklerini en iyi şekilde ortaya koyabilir. Ancak aynı zamanda dünyayla bağlantıda kalmak gereklidir, çok dilli iletişimden vazgeçmek istemiyorum. Bu yüzden, ana dilimde yazmama izin veren, aynı zamanda içeriğimi daha fazla kişinin görmesini sağlayan bir araç istiyorum. Mevcut i18n, kendi çevirinizi yapmanızı gerektiriyor, üstelik içerik güncellemelerini de kendiniz yönetmelisiniz, çok zahmetli. Çeviriyi yapmak için LLM'yi kullanmayı seçiyorum, bu bana çok zaman kazandırıyor ve tek tıkla çoklu dil çevirisi yapılabiliyor.
|
|
38
|
+
|
|
39
|
+
## Hızlı Başlangıç
|
|
40
|
+
|
|
41
|
+
Önkoşullar:
|
|
42
|
+
|
|
43
|
+
- [Node.js](https://nodejs.org/) kurulu olmalı (tercihen sürüm 18 ve üzeri, npx komutu gereklidir)
|
|
44
|
+
- [OpenAI API Anahtarı](https://platform.openai.com/account/api-keys) alınmış olmalı veya OPENAI uyumlu bir API Anahtarı
|
|
45
|
+
- Git kurulu olmalı (Git'ten Markdown dosyalarını listelemek, .gitignore kurallarıyla filtrelenen dosyaları yok saymak için)
|
|
46
|
+
|
|
47
|
+
Öncelikle, git ile yönetilen bir klasörde çalışın:
|
|
48
|
+
|
|
49
|
+
Ortam değişkenlerini yapılandırın
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
export OPENAI_API_KEY="sk-xxxxxx" # Zorunlu: Lütfen kendi OpenAI API Anahtarınızla değiştirin
|
|
53
|
+
export OPENAI_BASE_URL="https://api.openai.com/v1" # İsteğe bağlı, varsayılan olarak OpenAI resmi API'si kullanılır
|
|
54
|
+
export OPENAI_MODEL="gpt-3.5-turbo" # İsteğe bağlı, varsayılan olarak gpt-3.5-turbo modeli kullanılır
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Siteyi inşa edin, çok dilli çeviriyi destekler. Mevcut dizini kaynak dizin olarak kullanır, `.zen/dist` dizinine çıktı verir.
|
|
58
|
+
|
|
59
|
+
- `--lang` parametresini birden fazla kez kullanarak oluşturulacak dil versiyonlarını belirtebilirsiniz (örneğin `--lang zh-Hans --lang en-US`).
|
|
60
|
+
- Kaynak dili yapılandırmaya gerek yoktur, ZEN otomatik algılar.
|
|
61
|
+
|
|
62
|
+
```bash
|
|
63
|
+
npx zengen@latest build --lang zh-Hans --lang en-US
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
**Daha fazla parametre veya yardım görüntüleyin**:
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
npx zengen@latest
|
|
70
|
+
```
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
---
|
|
2
|
+
'title': 'ZEN - Minimalist Markdown + AI Statik Site Oluşturucu'
|
|
3
|
+
'summary': 'ZEN, Markdown belgeleri için tasarlanmış, AI özellikleriyle birleştirilmiş bir statik site oluşturucudur. Kullanıcıların Markdown dosyaları içeren bir Git klasörünü, karmaşık yapılandırmaya gerek kalmadan statik bir HTML sitesine dönüştürmesine olanak tanır; tüm ayarlar .zen dizininde gizlidir. Temel özellikler arasında akıllı kategorilendirme ve navigasyon (AI kullanarak içerik analizi yaparak site haritası oluşturma), otomatik artımlı çeviri (çok dilli sürümleri destekler, kullanıcılar ana dillerinde yazabilir, AI çeviriyi işler) ve en az rahatsızlık veren bir yazma deneyimi bulunur. Hızlı başlangıç kılavuzu, Node.js kurulumu, OpenAI API Anahtarı ve Git edinimi gerektirir; komut satırı üzerinden site oluşturmayı destekler ve dil ile temel URL belirtmeye izin verir.'
|
|
4
|
+
'tags':
|
|
5
|
+
- 'Statik Site Oluşturucu'
|
|
6
|
+
- 'Markdown'
|
|
7
|
+
- 'AI'
|
|
8
|
+
- 'Çok Dilli Çeviri'
|
|
9
|
+
- 'Minimalizm'
|
|
10
|
+
- 'Belge Aracı'
|
|
11
|
+
- 'Git'
|
|
12
|
+
'inferred_lang': 'zh-Hans'
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
# ZEN - Minimalist Markdown + AI Statik Site Oluşturucu
|
|
16
|
+
|
|
17
|
+
[> Website Demo](https://zen.zccz14.com/)
|
|
18
|
+
|
|
19
|
+
## Temel Özellikler
|
|
20
|
+
|
|
21
|
+
1. 📃 **Statik Site Oluşturma**: Markdown içeren herhangi bir git klasörünü statik bir HTML sitesine dönüştürür.
|
|
22
|
+
2. 🧭 **Akıllı Kategorilendirme ve Navigasyon**: AI kullanarak içerik analizi yapar, site haritası ve navigasyon oluşturur; kaynak dosyaların konumu önemli değildir.
|
|
23
|
+
3. 🌍 **Otomatik Artımlı Çeviri**: AI kullanarak artımlı çeviri yapar, kullanıcıların ana dillerinde Markdown yazmasına olanak tanır, ancak kullanıcılar çok dilli olabilir.
|
|
24
|
+
|
|
25
|
+
Neden bir Markdown statik site oluşturucusu daha yapıldı? AI çağında, belge araçlarının yazarlara nasıl daha iyi hizmet edebileceğini yeniden düşündüm:
|
|
26
|
+
|
|
27
|
+
- İçeriğe Dönüş: En az rahatsızlık, yazmaya odaklanma
|
|
28
|
+
|
|
29
|
+
Belgeleri özüne döndürmek, yazmayı huzura kavuşturmak.
|
|
30
|
+
|
|
31
|
+
Birincisi, kütüphaneci olmak istemiyorum. Bazen bir şeyler yazmak isterim, ancak henüz başlığını düşünmemiş, özel bir organizasyon oluşturmamış olabilirim. LLM'nin başlık oluşturma, özet çıkarma, kategorilendirme, navigasyon gibi düzenleme işlerini otomatik olarak yapmasını umuyorum.
|
|
32
|
+
|
|
33
|
+
İkincisi, çalışma odam temiz olmalı. Karmaşık yapılandırmalı derleme araçları, karmaşık belge ayarlarıyla uğraşmak, karmaşık yapıları sevmiyorum. Docusaurus, VuePress, Astro gibi araçların yapılandırma dosyalarını ve proje yapılarını her gördüğümde başım ağrıyor. Şimdi, ZEN tüm yapılandırmaları .zen dizinine gizlemeyi seçiyor, köşeye süpürüyor; kullanıcılar sadece yazma içeriğine odaklanıyor, gerisini ZEN hallediyor. Diğer dizinler sizin yazma alanınızdır, Markdown dosyalarınızı istediğiniz gibi düzenleyebilirsiniz.
|
|
34
|
+
|
|
35
|
+
- Ana Dile Dönüş: Ana dilde yazma, akıcı çok dilli sürüm oluşturma
|
|
36
|
+
|
|
37
|
+
Hayat kısa, çeviri yapmaya üşeniyorum. İnsanlar ana dillerini kullanırken düşünme derinliklerini en iyi şekilde ortaya koyabilirler. Ancak aynı zamanda dünyayla bağlantıda kalmak gereklidir, çok dilli iletişimi bırakmak istemiyorum. Bu yüzden, ana dilimde yazmama izin veren, aynı zamanda içeriğimi daha fazla kişinin görmesini sağlayan bir araç istiyorum. Mevcut i18n, kendi çevirinizi yapmanızı gerektiriyor, ayrıca içerik güncellemelerini de kendiniz yönetmelisiniz, çok zahmetli. Çeviriyi yapmak için LLM'yi kullanmayı seçiyorum, bu bana çok zaman kazandırıyor ve tek tıkla çoklu dil çevirisi yapılabiliyor.
|
|
38
|
+
|
|
39
|
+
## Hızlı Başlangıç
|
|
40
|
+
|
|
41
|
+
Önkoşullar:
|
|
42
|
+
|
|
43
|
+
- [Node.js](https://nodejs.org/) kurulu (18 ve üzeri sürüm önerilir, npx komutu gereklidir)
|
|
44
|
+
- [OpenAI API Anahtarı](https://platform.openai.com/account/api-keys) edinilmiş veya OPENAI uyumlu bir API Anahtarı
|
|
45
|
+
- Git kurulu (Git'ten Markdown dosyalarını listelemek ve .gitignore kurallarıyla filtrelenen dosyaları yok saymak için)
|
|
46
|
+
|
|
47
|
+
Öncelikle, zaten git tarafından yönetilen bir klasörde çalışın:
|
|
48
|
+
|
|
49
|
+
Ortam değişkenlerini yapılandırın
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
export OPENAI_API_KEY="sk-xxxxxx" # Zorunlu: Lütfen kendi OpenAI API Anahtarınızla değiştirin
|
|
53
|
+
export OPENAI_BASE_URL="https://api.openai.com/v1" # İsteğe bağlı, varsayılan olarak OpenAI resmi API'si kullanılır
|
|
54
|
+
export OPENAI_MODEL="gpt-3.5-turbo" # İsteğe bağlı, varsayılan olarak gpt-3.5-turbo modeli kullanılır
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Siteyi oluşturun, çok dilli çeviriyi destekler. Kaynak dizin olarak mevcut dizini kullanır, çıktıyı `.zen/dist` dizinine verir.
|
|
58
|
+
|
|
59
|
+
- `--lang` parametresini birden fazla kez kullanarak oluşturulacak dil sürümlerini belirtebilirsiniz (örneğin `--lang zh-Hans --lang en-US`).
|
|
60
|
+
- `--base-url` parametresiyle sitenin temel URL önekini belirtebilirsiniz (örneğin GitHub Pages'teki depo adı).
|
|
61
|
+
- Kaynak dili yapılandırmaya gerek yoktur, ZEN otomatik olarak algılar.
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
npx zengen@latest build --lang zh-Hans --lang en-US
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
**Daha fazla parametre veya yardım görüntüleyin**:
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
npx zengen@latest
|
|
71
|
+
```
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
---
|
|
2
|
+
'title': 'Тестовий документ для діаграм Mermaid'
|
|
3
|
+
'summary': 'Цей документ є тестовим файлом для перевірки функціоналу відображення діаграм Mermaid у ZEN. Він містить приклади різних типів діаграм Mermaid, таких як блок-схеми, діаграми послідовності, діаграми Ганта, діаграми класів, діаграми станів та кругові діаграми, а також включає тест з помилковою синтаксичною конструкцією для перевірки відображення повідомлень про помилки. Документ призначений для демонстрації коректної роботи інтеграції Mermaid у ZEN.'
|
|
4
|
+
'tags':
|
|
5
|
+
- 'Mermaid'
|
|
6
|
+
- 'Тестування діаграм'
|
|
7
|
+
- 'ZEN'
|
|
8
|
+
- 'Блок-схеми'
|
|
9
|
+
- 'Діаграми послідовності'
|
|
10
|
+
- 'Діаграми Ганта'
|
|
11
|
+
- 'Діаграми класів'
|
|
12
|
+
- 'Діаграми станів'
|
|
13
|
+
'inferred_date': '2024-01-01'
|
|
14
|
+
'inferred_lang': 'uk-UA'
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
# Тестування діаграм Mermaid
|
|
18
|
+
|
|
19
|
+
Це тестовий файл для перевірки функціоналу відображення діаграм Mermaid у ZEN.
|
|
20
|
+
|
|
21
|
+
## Приклад блок-схеми
|
|
22
|
+
|
|
23
|
+
```mermaid
|
|
24
|
+
graph TD
|
|
25
|
+
A[Початок] --> B{Продовжити?}
|
|
26
|
+
B -->|Так| C[Виконати дію]
|
|
27
|
+
B -->|Ні| D[Кінець]
|
|
28
|
+
C --> E[Перевірити результат]
|
|
29
|
+
E --> F{Успішно?}
|
|
30
|
+
F -->|Так| G[Завершено]
|
|
31
|
+
F -->|Ні| H[Повторити]
|
|
32
|
+
H --> C
|
|
33
|
+
G --> D
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
## Приклад діаграми послідовності
|
|
37
|
+
|
|
38
|
+
```mermaid
|
|
39
|
+
sequenceDiagram
|
|
40
|
+
participant Користувач
|
|
41
|
+
participant Система
|
|
42
|
+
participant БазаДаних
|
|
43
|
+
|
|
44
|
+
Користувач->>Система: Надіслати запит
|
|
45
|
+
Система->>БазаДаних: Запит даних
|
|
46
|
+
БазаДаних-->>Система: Повернути результат
|
|
47
|
+
Система-->>Користувач: Показати результат
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
## Приклад діаграми Ганта
|
|
51
|
+
|
|
52
|
+
```mermaid
|
|
53
|
+
gantt
|
|
54
|
+
title Розклад проекту
|
|
55
|
+
dateFormat YYYY-MM-DD
|
|
56
|
+
section Дизайн
|
|
57
|
+
Аналіз вимог :done, des1, 2024-01-01, 7d
|
|
58
|
+
Проектування прототипу :active, des2, 2024-01-08, 5d
|
|
59
|
+
Детальне проектування : des3, after des2, 5d
|
|
60
|
+
section Розробка
|
|
61
|
+
Фронтенд-розробка : dev1, after des3, 10d
|
|
62
|
+
Бекенд-розробка : dev2, after des3, 15d
|
|
63
|
+
section Тестування
|
|
64
|
+
Модульне тестування : test1, after dev1, 5d
|
|
65
|
+
Інтеграційне тестування : test2, after dev2, 5d
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
## Приклад діаграми класів
|
|
69
|
+
|
|
70
|
+
```mermaid
|
|
71
|
+
classDiagram
|
|
72
|
+
class Тварина {
|
|
73
|
+
+String ім'я
|
|
74
|
+
+int вік
|
|
75
|
+
+void їсти()
|
|
76
|
+
+void спати()
|
|
77
|
+
}
|
|
78
|
+
class Собака {
|
|
79
|
+
+void гавкати()
|
|
80
|
+
}
|
|
81
|
+
class Кіт {
|
|
82
|
+
+void нявкати()
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
Тварина <|-- Собака
|
|
86
|
+
Тварина <|-- Кіт
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
## Приклад діаграми станів
|
|
90
|
+
|
|
91
|
+
```mermaid
|
|
92
|
+
stateDiagram-v2
|
|
93
|
+
[*] --> Очікування
|
|
94
|
+
Очікування --> Обробка : Почати обробку
|
|
95
|
+
Обробка --> Успіх : Обробка успішна
|
|
96
|
+
Обробка --> Помилка : Обробка невдала
|
|
97
|
+
Успіх --> [*]
|
|
98
|
+
Помилка --> [*]
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
## Приклад кругової діаграми
|
|
102
|
+
|
|
103
|
+
```mermaid
|
|
104
|
+
pie title Частка використання браузерів
|
|
105
|
+
"Chrome" : 65.2
|
|
106
|
+
"Firefox" : 15.3
|
|
107
|
+
"Safari" : 12.5
|
|
108
|
+
"Edge" : 5.2
|
|
109
|
+
"Інші" : 1.8
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
## Тест з помилковою синтаксичною конструкцією (має відображати повідомлення про помилку)
|
|
113
|
+
|
|
114
|
+
```mermaid
|
|
115
|
+
graph TD
|
|
116
|
+
A --> B
|
|
117
|
+
// Тут відсутнє визначення стрілки
|
|
118
|
+
C --> D
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
Цей тестовий файл містить різні типи діаграм Mermaid для перевірки коректної роботи інтеграції Mermaid у ZEN.
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
---
|
|
2
|
+
'title': 'ZEN - Мінімалістичний Markdown + AI генератор статичних сайтів'
|
|
3
|
+
'summary': 'ZEN — це генератор статичних сайтів з інтеграцією штучного інтелекту, орієнтований на спрощення процесу написання та створення документації. Він дозволяє користувачам створювати статичні HTML-сайти з використанням Markdown у папках, що керуються через git, без складних налаштувань — усі конфігурації приховані в каталозі .zen. Ключові функції включають інтелектуальну навігацію за категоріями (генерація карти сайту через аналіз контенту AI), автоматичний інкрементний переклад (підтримка багатомовних версій, дозволяє писати рідною мовою з перекладом AI) та мінімалістичний досвід написання без зайвих відволікань. Інструмент вимагає Node.js, ключ API OpenAI та Git, швидко будується через командний рядок і підтримує параметри мов, такі як zh-Hans та en-US.'
|
|
4
|
+
'tags':
|
|
5
|
+
- 'Генератор статичних сайтів'
|
|
6
|
+
- 'Markdown'
|
|
7
|
+
- 'Штучний інтелект'
|
|
8
|
+
- 'Багатомовний переклад'
|
|
9
|
+
- 'Мінімалізм'
|
|
10
|
+
- 'Інструмент для документації'
|
|
11
|
+
- 'ZEN'
|
|
12
|
+
'inferred_lang': 'zh-Hans'
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
# ZEN - Мінімалістичний Markdown + AI генератор статичних сайтів
|
|
16
|
+
|
|
17
|
+
[> Демо сайту](https://zen.zccz14.com/)
|
|
18
|
+
|
|
19
|
+
## Основні функції
|
|
20
|
+
|
|
21
|
+
1. 📃 **Генерація статичних сайтів**: Перетворює будь-яку папку з файлами Markdown, що керується через git, на статичний HTML-сайт.
|
|
22
|
+
2. 🧭 **Інтелектуальна навігація за категоріями**: Використовує AI для аналізу контенту, генерує карту сайту та навігацію, незалежно від розташування вихідних файлів.
|
|
23
|
+
3. 🌍 **Автоматичний інкрементний переклад**: Використовує AI для поступового перекладу, дозволяючи користувачам писати Markdown рідною мовою, але отримувати багатомовний контент.
|
|
24
|
+
|
|
25
|
+
Чому я створив ще один генератор статичних сайтів на Markdown? Я переосмислив, як інструменти для документації можуть краще служити авторам в епоху AI:
|
|
26
|
+
|
|
27
|
+
- Повернення до контенту: Мінімум відволікань, максимум зосередженості на написанні
|
|
28
|
+
|
|
29
|
+
Поверніть документацію до її сутності, а написанню — спокій.
|
|
30
|
+
|
|
31
|
+
По-перше, я не хочу бути бібліотекарем. Іноді я хочу щось записати, але ще не визначився з заголовком або структурою. Я хочу, щоб LLM автоматично генерував заголовки, робив резюме, класифікував та створював навігацію.
|
|
32
|
+
|
|
33
|
+
По-друге, мій робочий простір має бути чистим. Мені не потрібні складні інструменти зі заплутаними налаштуваннями та структурою. Кожного разу, коли я бачу конфігураційні файли та структуру проектів у Docusaurus, VuePress чи Astro, у мене болить голова. Тепер ZEN ховає всі налаштування в каталозі .zen, залишаючи користувачам лише написання контенту, а решту обробляє сам. Всі інші каталоги — ваш робочий простір, де ви можете вільно організовувати файли Markdown.
|
|
34
|
+
|
|
35
|
+
- Повернення до рідної мови: Пишіть рідною мовою, легко створюйте багатомовні версії
|
|
36
|
+
|
|
37
|
+
Життя коротке, мені ліньки перекладати. Коли людина пише рідною мовою, вона може найглибше висловлювати свої думки. Але підтримка зв'язку зі світом також важлива, і я не хочу втрачати можливість спілкування багатьма мовами. Тому мені потрібен інструмент, який дозволить мені писати рідною мовою, але також зробить мій контент доступним для більшої аудиторії. Сучасні рішення для i18n вимагають самостійного перекладу та підтримки оновлень, що займає багато часу. Я використовую LLM для перекладу, що економить мій час і дозволяє створювати багатомовні версії в один клік.
|
|
38
|
+
|
|
39
|
+
## Швидкий старт
|
|
40
|
+
|
|
41
|
+
Передумови:
|
|
42
|
+
|
|
43
|
+
- Встановлений [Node.js](https://nodejs.org/) (рекомендована версія 18 або вище, потрібна команда npx)
|
|
44
|
+
- Отриманий [OpenAI API Key](https://platform.openai.com/account/api-keys) або сумісний з OpenAI ключ API
|
|
45
|
+
- Встановлений Git (для отримання списку файлів Markdown з Git, ігноруючи файли, відфільтровані за правилами .gitignore)
|
|
46
|
+
|
|
47
|
+
Спочатку працюйте в папці, яка вже керується через git:
|
|
48
|
+
|
|
49
|
+
Налаштуйте змінні середовища
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
export OPENAI_API_KEY="sk-xxxxxx" # Обов'язково: замініть на ваш OpenAI API Key
|
|
53
|
+
export OPENAI_BASE_URL="https://api.openai.com/v1" # Опціонально, за замовчуванням використовується офіційний API OpenAI
|
|
54
|
+
export OPENAI_MODEL="gpt-3.5-turbo" # Опціонально, за замовчуванням використовується модель gpt-3.5-turbo
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Побудуйте сайт з підтримкою багатомовного перекладу. Використовуйте поточний каталог як вихідний, результат буде в каталозі `.zen/dist`.
|
|
58
|
+
|
|
59
|
+
- Можна вказати необхідні мовні версії, використовуючи параметр `--lang` кілька разів (наприклад, `--lang zh-Hans --lang en-US`).
|
|
60
|
+
- Вихідну мову налаштовувати не потрібно, ZEN визначить її автоматично.
|
|
61
|
+
|
|
62
|
+
```bash
|
|
63
|
+
npx zengen@latest build --lang zh-Hans --lang en-US
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
**Переглянути більше параметрів або отримати довідку**:
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
npx zengen@latest
|
|
70
|
+
```
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
---
|
|
2
|
+
'title': 'ZEN - Мінімалістичний генератор статичних сайтів Markdown + AI'
|
|
3
|
+
'summary': 'ZEN — це генератор статичних сайтів з функціями AI, розроблений для документів Markdown. Він дозволяє користувачам перетворювати Git-папки з файлами Markdown на статичні HTML-сайти без складних налаштувань, усі конфігурації приховані в каталозі .zen. Основні функції включають інтелектуальну навігацію за категоріями (використовуючи AI для аналізу вмісту та створення карти сайту), автоматичний інкрементний переклад (підтримка багатомовних версій, дозволяє користувачам писати рідною мовою, а AI обробляє переклад) та мінімалістичний досвід письма. Швидкий старт вимагає встановлення Node.js, отримання OpenAI API Key та Git, побудова сайту через командний рядок з підтримкою вказання мови та базової URL-адреси.'
|
|
4
|
+
'tags':
|
|
5
|
+
- 'Генератор статичних сайтів'
|
|
6
|
+
- 'Markdown'
|
|
7
|
+
- 'AI'
|
|
8
|
+
- 'Багатомовний переклад'
|
|
9
|
+
- 'Мінімалізм'
|
|
10
|
+
- 'Інструмент для документів'
|
|
11
|
+
- 'Git'
|
|
12
|
+
'inferred_lang': 'uk-UA'
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
# ZEN - Мінімалістичний генератор статичних сайтів Markdown + AI
|
|
16
|
+
|
|
17
|
+
[> Демо сайту](https://zen.zccz14.com/)
|
|
18
|
+
|
|
19
|
+
## Основні функції
|
|
20
|
+
|
|
21
|
+
1. 📃 **Генерація статичних сайтів**: Перетворює будь-яку Git-папку з файлами Markdown на статичний HTML-сайт.
|
|
22
|
+
2. 🧭 **Інтелектуальна навігація за категоріями**: Використовує AI для аналізу вмісту, створення карти сайту та навігації, незалежно від розташування вихідних файлів.
|
|
23
|
+
3. 🌍 **Автоматичний інкрементний переклад**: Використовує AI для інкрементного перекладу, дозволяючи користувачам писати Markdown рідною мовою, але з підтримкою багатомовності.
|
|
24
|
+
|
|
25
|
+
Чому я створив ще один генератор статичних сайтів для Markdown? Я переосмислив, як інструменти для документів можуть краще служити письменникам в епоху AI:
|
|
26
|
+
|
|
27
|
+
- Повернення до змісту: Мінімалізувати відволікання, зосередитись на письмі
|
|
28
|
+
|
|
29
|
+
Повернути документам їхню сутність, а письму — спокій.
|
|
30
|
+
|
|
31
|
+
По-перше, я не хочу бути бібліотекарем. Іноді я хочу щось записати, але ще не визначився з заголовком або структурою. Я хочу, щоб LLM автоматично генерував заголовки, робив резюме, класифікував та організовував навігацію.
|
|
32
|
+
|
|
33
|
+
По-друге, мій робочий простір має бути чистим. Я не хочу складних інструментів зборки, заплутаних конфігурацій документів або складної структури. Кожного разу, коли я бачу конфігураційні файли та структуру проектів у Docusaurus, VuePress чи Astro, у мене болить голова. Тепер ZEN ховає всі налаштування в каталозі .zen, залишаючи користувачам можливість зосередитись лише на написанні контенту, а решту обробляє ZEN. Всі інші каталоги — це ваш робочий простір, де ви можете вільно організовувати свої файли Markdown.
|
|
34
|
+
|
|
35
|
+
- Повернення до рідної мови: Пишіть рідною мовою, легко створюйте багатомовні версії
|
|
36
|
+
|
|
37
|
+
Життя коротке, мені ліньки перекладати. Коли людина використовує рідну мову, вона може найкраще висловити глибину своїх думок. Але водночас важливо залишатись на зв'язку зі світом, і я не хочу відмовлятись від багатомовного спілкування. Тому мені потрібен інструмент, який дозволить мені писати рідною мовою, але також зробить мій контент доступним для більшої аудиторії. Сучасні рішення i18n вимагають самостійного перекладу та підтримки оновлень, що займає багато часу. Я використовую LLM для перекладу, що економить мій час і дозволяє створювати багатомовні версії в один клік.
|
|
38
|
+
|
|
39
|
+
## Швидкий старт
|
|
40
|
+
|
|
41
|
+
Передумови:
|
|
42
|
+
|
|
43
|
+
- Встановлений [Node.js](https://nodejs.org/) (рекомендована версія 18 або вище, потрібна команда npx)
|
|
44
|
+
- Отриманий [OpenAI API Key](https://platform.openai.com/account/api-keys) або сумісний з OPENAI API Key
|
|
45
|
+
- Встановлений Git (для отримання списку файлів Markdown з Git, ігноруючи файли, відфільтровані за правилами .gitignore)
|
|
46
|
+
|
|
47
|
+
Спочатку працюйте в папці, яка вже керується Git:
|
|
48
|
+
|
|
49
|
+
Налаштуйте змінні середовища:
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
export OPENAI_API_KEY="sk-xxxxxx" # Обов'язково: замініть на ваш OpenAI API Key
|
|
53
|
+
export OPENAI_BASE_URL="https://api.openai.com/v1" # Опціонально, за замовчуванням використовується офіційний API OpenAI
|
|
54
|
+
export OPENAI_MODEL="gpt-3.5-turbo" # Опціонально, за замовчуванням використовується модель gpt-3.5-turbo
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Побудуйте сайт з підтримкою багатомовного перекладу. Використовуйте поточний каталог як вихідний, результат буде збережено в каталозі `.zen/dist`.
|
|
58
|
+
|
|
59
|
+
- Можна вказати мовні версії, використовуючи параметр `--lang` кілька разів (наприклад, `--lang uk-UA --lang en-US`).
|
|
60
|
+
- Можна вказати базовий префікс URL-адреси сайту за допомогою параметра `--base-url` (наприклад, назва репозиторію на GitHub Pages).
|
|
61
|
+
- Вихідну мову налаштовувати не потрібно, ZEN визначить її автоматично.
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
npx zengen@latest build --lang uk-UA --lang en-US
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
**Переглянути більше параметрів або отримати довідку**:
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
npx zengen@latest
|
|
71
|
+
```
|