zengen 0.2.2 → 0.2.3
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/.github/workflows/pages.yml +3 -0
- package/.zen/meta.json +43 -8
- package/.zen/src/ar-SA/74541be9d53c64107a548e09847244d52bff803960942cd2bfbd2a8600afb805.md +71 -0
- package/.zen/src/da-DK/74541be9d53c64107a548e09847244d52bff803960942cd2bfbd2a8600afb805.md +71 -0
- package/.zen/src/de-DE/74541be9d53c64107a548e09847244d52bff803960942cd2bfbd2a8600afb805.md +71 -0
- package/.zen/src/en-US/74541be9d53c64107a548e09847244d52bff803960942cd2bfbd2a8600afb805.md +71 -0
- package/.zen/src/es-ES/74541be9d53c64107a548e09847244d52bff803960942cd2bfbd2a8600afb805.md +71 -0
- package/.zen/src/es-MX/74541be9d53c64107a548e09847244d52bff803960942cd2bfbd2a8600afb805.md +71 -0
- package/.zen/src/fi-FI/74541be9d53c64107a548e09847244d52bff803960942cd2bfbd2a8600afb805.md +71 -0
- package/.zen/src/fr-FR/74541be9d53c64107a548e09847244d52bff803960942cd2bfbd2a8600afb805.md +71 -0
- package/.zen/src/hi-IN/74541be9d53c64107a548e09847244d52bff803960942cd2bfbd2a8600afb805.md +71 -0
- package/.zen/src/id-ID/74541be9d53c64107a548e09847244d52bff803960942cd2bfbd2a8600afb805.md +71 -0
- package/.zen/src/it-IT/74541be9d53c64107a548e09847244d52bff803960942cd2bfbd2a8600afb805.md +71 -0
- package/.zen/src/ja-JP/74541be9d53c64107a548e09847244d52bff803960942cd2bfbd2a8600afb805.md +71 -0
- package/.zen/src/ko-KR/74541be9d53c64107a548e09847244d52bff803960942cd2bfbd2a8600afb805.md +71 -0
- package/.zen/src/nl-NL/74541be9d53c64107a548e09847244d52bff803960942cd2bfbd2a8600afb805.md +71 -0
- package/.zen/src/no-NO/74541be9d53c64107a548e09847244d52bff803960942cd2bfbd2a8600afb805.md +71 -0
- package/.zen/src/pl-PL/74541be9d53c64107a548e09847244d52bff803960942cd2bfbd2a8600afb805.md +71 -0
- package/.zen/src/pt-BR/74541be9d53c64107a548e09847244d52bff803960942cd2bfbd2a8600afb805.md +71 -0
- package/.zen/src/pt-PT/74541be9d53c64107a548e09847244d52bff803960942cd2bfbd2a8600afb805.md +71 -0
- package/.zen/src/ru-RU/74541be9d53c64107a548e09847244d52bff803960942cd2bfbd2a8600afb805.md +71 -0
- package/.zen/src/sv-SE/74541be9d53c64107a548e09847244d52bff803960942cd2bfbd2a8600afb805.md +71 -0
- package/.zen/src/th-TH/74541be9d53c64107a548e09847244d52bff803960942cd2bfbd2a8600afb805.md +71 -0
- package/.zen/src/tr-TR/74541be9d53c64107a548e09847244d52bff803960942cd2bfbd2a8600afb805.md +71 -0
- package/.zen/src/uk-UA/74541be9d53c64107a548e09847244d52bff803960942cd2bfbd2a8600afb805.md +71 -0
- package/.zen/src/vi-VN/74541be9d53c64107a548e09847244d52bff803960942cd2bfbd2a8600afb805.md +71 -0
- package/.zen/src/zh-Hans/74541be9d53c64107a548e09847244d52bff803960942cd2bfbd2a8600afb805.md +71 -0
- package/.zen/src/zh-Hant/74541be9d53c64107a548e09847244d52bff803960942cd2bfbd2a8600afb805.md +71 -0
- package/README.md +26 -36
- package/assets/templates/default/layout.html +58 -3
- package/dist/ai/translateMarkdown.d.ts +1 -1
- package/dist/ai/translateMarkdown.d.ts.map +1 -1
- package/dist/ai/translateMarkdown.js +33 -2
- package/dist/ai/translateMarkdown.js.map +1 -1
- package/dist/languages.d.ts.map +1 -1
- package/dist/languages.js +23 -0
- package/dist/languages.js.map +1 -1
- package/dist/process/template.d.ts.map +1 -1
- package/dist/process/template.js +9 -5
- package/dist/process/template.js.map +1 -1
- package/package.json +2 -2
- package/src/ai/translateMarkdown.ts +33 -2
- package/src/languages.ts +27 -0
- package/src/process/template.ts +10 -5
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: ZEN - Minimalistyczny generator statycznych stron Markdown + AI
|
|
3
|
+
summary: ZEN to generator statycznych stron zintegrowany z AI, wspierający inteligentną nawigację kategorii i automatyczne tłumaczenie przyrostowe, pozwalający użytkownikom skupić się na pisaniu w języku ojczystym oraz upraszczający proces konfiguracji i budowania.
|
|
4
|
+
tags:
|
|
5
|
+
- generator statycznych stron
|
|
6
|
+
- Markdown
|
|
7
|
+
- AI
|
|
8
|
+
- tłumaczenie wielojęzyczne
|
|
9
|
+
- minimalizm
|
|
10
|
+
- narzędzie do dokumentacji
|
|
11
|
+
- Node.js
|
|
12
|
+
inferred_lang: pl-PL
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
# ZEN - Minimalistyczny generator statycznych stron Markdown + AI
|
|
16
|
+
|
|
17
|
+
[> Demo strony internetowej](https://zccz14.github.io/ZEN/)
|
|
18
|
+
|
|
19
|
+
## Podstawowe funkcje
|
|
20
|
+
|
|
21
|
+
1. 📃 **Generowanie statycznych stron**: Przekształca dowolny folder git zawierający pliki Markdown w statyczną stronę HTML.
|
|
22
|
+
2. 🧭 **Inteligentna nawigacja kategorii**: Wykorzystuje AI do analizy treści, generując mapę witryny i nawigację, niezależnie od lokalizacji plików źródłowych.
|
|
23
|
+
3. 🌍 **Automatyczne tłumaczenie przyrostowe**: Wykorzystuje AI do przyrostowego tłumaczenia, pozwalając użytkownikom pisać w Markdown w języku ojczystym, jednocześnie udostępniając treść wielojęzycznie.
|
|
24
|
+
|
|
25
|
+
Dlaczego stworzyłem kolejny generator statycznych stron Markdown? Ponownie przemyślałem, jak narzędzia do dokumentacji w erze AI mogą lepiej służyć pisarzom:
|
|
26
|
+
|
|
27
|
+
- Powrót do treści: Minimalizacja zakłóceń, skupienie na pisaniu
|
|
28
|
+
|
|
29
|
+
Niech dokumentacja wróci do swojej istoty, a pisanie do spokoju.
|
|
30
|
+
|
|
31
|
+
Po pierwsze, nie chcę być bibliotekarzem. Czasami chcę coś napisać, ale może jeszcze nie wymyśliłem tytułu, nie uformowałem jasnej struktury. Chcę, aby LLM automatycznie pomógł mi generować tytuły, tworzyć streszczenia, kategoryzować, nawigować i wykonywać inne prace porządkowe.
|
|
32
|
+
|
|
33
|
+
Po drugie, mój gabinet musi być czysty. Nie chcę skomplikowanych narzędzi do konfiguracji, nie lubię skomplikowanych struktur dokumentów. Za każdym razem, gdy widzę pliki konfiguracyjne i struktury projektów takich narzędzi jak Docusaurus, VuePress, Astro, boli mnie głowa. Teraz ZEN ukrywa całą konfigurację w katalogu `.zen`, zamiatając ją w kąt. Użytkownik musi skupić się tylko na treści, resztą zajmie się ZEN. Wszystkie inne katalogi to Twoja przestrzeń do pisania, możesz dowolnie organizować swoje pliki Markdown.
|
|
34
|
+
|
|
35
|
+
- Powrót do języka ojczystego: Pisz w języku ojczystym, płynnie buduj wersje wielojęzyczne
|
|
36
|
+
|
|
37
|
+
Życie jest krótkie, nie mam ochoty na tłumaczenie. Człowiek najlepiej wykorzystuje głębię swojego myślenia, pisząc w języku ojczystym. Ale jednocześnie konieczne jest utrzymanie połączenia ze światem, nie chcę rezygnować z komunikacji wielojęzycznej. Dlatego chcę narzędzia, które pozwoli mi pisać w języku ojczystym, a jednocześnie udostępnić moje treści większej liczbie osób. Obecne rozwiązania i18n wymagają nie tylko własnego tłumaczenia, ale także samodzielnego utrzymywania aktualizacji treści, co jest zbyt uciążliwe. Wybieram użycie LLM do pomocy w tłumaczeniu, oszczędza mi to dużo czasu i pozwala na tłumaczenie na wiele języków jednym kliknięciem.
|
|
38
|
+
|
|
39
|
+
## Szybki start
|
|
40
|
+
|
|
41
|
+
Wymagania wstępne:
|
|
42
|
+
|
|
43
|
+
- Zainstalowany [Node.js](https://nodejs.org/) (zalecana wersja 18 lub nowsza, wymagane polecenie `npx`)
|
|
44
|
+
- Uzyskany [Klucz API OpenAI](https://platform.openai.com/account/api-keys) lub kompatybilny klucz API OPENAI
|
|
45
|
+
- Zainstalowany Git (do listowania plików Markdown z gita, ignorując pliki filtrowane przez reguły `.gitignore`)
|
|
46
|
+
|
|
47
|
+
Najpierw pracuj w folderze zarządzanym przez git:
|
|
48
|
+
|
|
49
|
+
Skonfiguruj zmienne środowiskowe
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
export OPENAI_API_KEY="sk-xxxxxx" # Wymagane: zastąp swoim kluczem API OpenAI
|
|
53
|
+
export OPENAI_BASE_URL="https://api.openai.com/v1" # Opcjonalne, domyślnie używa oficjalnego API OpenAI
|
|
54
|
+
export OPENAI_MODEL="gpt-3.5-turbo" # Opcjonalne, domyślnie używa modelu gpt-3.5-turbo
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Zbuduj stronę, wspierając tłumaczenie wielojęzyczne. Użyj bieżącego katalogu jako katalogu źródłowego, wynik zostanie zapisany w katalogu `.zen/dist`.
|
|
58
|
+
|
|
59
|
+
- Można wielokrotnie użyć parametru `--lang`, aby określić wersje językowe do wygenerowania (np. `--lang pl-PL --lang en-US`).
|
|
60
|
+
- Można użyć parametru `--base-url`, aby określić podstawowy prefiks URL strony (np. nazwa repozytorium na GitHub Pages).
|
|
61
|
+
- Nie trzeba konfigurować języka źródłowego, ZEN wykryje go automatycznie.
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
npx zengen@latest build --lang pl-PL --lang en-US
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
**Zobacz więcej parametrów lub uzyskaj pomoc**:
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
npx zengen@latest
|
|
71
|
+
```
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: ZEN - Construtor de Site Estático Minimalista Markdown + IA
|
|
3
|
+
summary: ZEN é um gerador de site estático integrado com IA, suportando navegação por categorização inteligente e tradução incremental automática, permitindo que os usuários se concentrem em escrever em sua língua materna e simplificando o processo de configuração e construção.
|
|
4
|
+
tags:
|
|
5
|
+
- Gerador de Site Estático
|
|
6
|
+
- Markdown
|
|
7
|
+
- IA
|
|
8
|
+
- Tradução Multilíngue
|
|
9
|
+
- Minimalismo
|
|
10
|
+
- Ferramenta de Documentação
|
|
11
|
+
- Node.js
|
|
12
|
+
inferred_lang: pt-BR
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
# ZEN - Construtor de Site Estático Minimalista Markdown + IA
|
|
16
|
+
|
|
17
|
+
[> Demonstração do Site](https://zccz14.github.io/ZEN/)
|
|
18
|
+
|
|
19
|
+
## Funcionalidades Básicas
|
|
20
|
+
|
|
21
|
+
1. 📃 **Geração de Site Estático**: Transforma qualquer pasta git contendo arquivos Markdown em um site HTML estático.
|
|
22
|
+
2. 🧭 **Navegação por Categorização Inteligente**: Utiliza IA para análise de conteúdo, gerando mapa do site e navegação, independente da localização dos arquivos fonte.
|
|
23
|
+
3. 🌍 **Tradução Incremental Automática**: Utiliza IA para tradução incremental, permitindo que o usuário escreva em Markdown usando sua língua materna, mas o conteúdo final pode ser multilíngue.
|
|
24
|
+
|
|
25
|
+
Por que criar mais um gerador de site estático com Markdown? Reflito sobre como as ferramentas de documentação podem servir melhor aos escritores na era da IA:
|
|
26
|
+
|
|
27
|
+
- Retorno ao Conteúdo: Minimizar distrações, focar na escrita
|
|
28
|
+
|
|
29
|
+
Devolver a essência à documentação, devolver a tranquilidade à escrita.
|
|
30
|
+
|
|
31
|
+
Primeiro, não quero ser um bibliotecário. Às vezes quero anotar algo, mas talvez ainda não tenha pensado em um título, ou não tenha uma organização clara. Espero que um LLM (Large Language Model) me ajude automaticamente a gerar títulos, resumos, categorias, navegação e outras tarefas de organização.
|
|
32
|
+
|
|
33
|
+
Segundo, meu escritório precisa estar arrumado. Não quero configurar ferramentas de construção complexas, lidar com configurações de documentação intrincadas, nem gosto de estruturas complicadas. Sempre que vejo os arquivos de configuração e a estrutura de projetos de ferramentas como Docusaurus, VuePress, Astro, fico com dor de cabeça. Agora, o ZEN opta por esconder todas as configurações no diretório `.zen`, varrendo-as para um canto. O usuário só precisa se concentrar no conteúdo da escrita, o resto fica por conta do ZEN. Todos os outros diretórios são seu espaço de escrita, você pode organizar seus arquivos Markdown como quiser.
|
|
34
|
+
|
|
35
|
+
- Retorno à Língua Materna: Escreva em sua língua materna, construa versões multilíngues suavemente
|
|
36
|
+
|
|
37
|
+
A vida é curta, não tenho paciência para traduzir. As pessoas atingem sua máxima profundidade de pensamento quando usam sua língua materna. Mas, ao mesmo tempo, manter-se conectado ao mundo é necessário, não quero abrir mão da comunicação multilíngue. Portanto, desejo uma ferramenta que me permita escrever em minha língua materna e, ao mesmo tempo, permita que mais pessoas vejam meu conteúdo. Atualmente, o i18n exige que você mesmo traduza e ainda mantenha as atualizações do conteúdo, o que é muito trabalhoso. Escolhi usar LLM para me ajudar com a tradução, economizando muito tempo e permitindo a tradução para vários idiomas com um clique.
|
|
38
|
+
|
|
39
|
+
## Início Rápido
|
|
40
|
+
|
|
41
|
+
Pré-requisitos:
|
|
42
|
+
|
|
43
|
+
- Ter o [Node.js](https://nodejs.org/) instalado (versão 18 ou superior recomendada, necessário comando `npx`)
|
|
44
|
+
- Ter uma [Chave de API da OpenAI](https://platform.openai.com/account/api-keys), ou uma chave de API compatível com OpenAI
|
|
45
|
+
- Ter o Git instalado (para listar arquivos Markdown de um repositório Git, ignorando arquivos filtrados pelas regras do `.gitignore`)
|
|
46
|
+
|
|
47
|
+
Primeiro, trabalhe em uma pasta que já esteja sob controle do Git:
|
|
48
|
+
|
|
49
|
+
Configure as variáveis de ambiente
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
export OPENAI_API_KEY="sk-xxxxxx" # Obrigatório: Substitua pela sua Chave de API da OpenAI
|
|
53
|
+
export OPENAI_BASE_URL="https://api.openai.com/v1" # Opcional, usa a API oficial da OpenAI por padrão
|
|
54
|
+
export OPENAI_MODEL="gpt-3.5-turbo" # Opcional, usa o modelo gpt-3.5-turbo por padrão
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Construa o site, com suporte a tradução multilíngue. Usa o diretório atual como fonte e gera a saída no diretório `.zen/dist`.
|
|
58
|
+
|
|
59
|
+
- É possível especificar os idiomas a serem gerados usando o parâmetro `--lang` várias vezes (ex: `--lang pt-BR --lang en-US`).
|
|
60
|
+
- É possível especificar o prefixo da URL base do site usando o parâmetro `--base-url` (ex: nome do repositório no GitHub Pages).
|
|
61
|
+
- Não é necessário configurar o idioma fonte, o ZEN detecta automaticamente.
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
npx zengen@latest build --lang pt-BR --lang en-US
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
**Veja mais parâmetros ou obtenha ajuda**:
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
npx zengen@latest
|
|
71
|
+
```
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: ZEN - Construtor de Sites Estáticos Minimalista com Markdown + IA
|
|
3
|
+
summary: ZEN é um gerador de sites estáticos com IA, suportando navegação inteligente por categorias e tradução incremental automática, permitindo que os utilizadores se concentrem em escrever na sua língua materna, simplificando o processo de configuração e construção.
|
|
4
|
+
tags:
|
|
5
|
+
- Gerador de Sites Estáticos
|
|
6
|
+
- Markdown
|
|
7
|
+
- IA
|
|
8
|
+
- Tradução Multilingue
|
|
9
|
+
- Minimalismo
|
|
10
|
+
- Ferramentas de Documentação
|
|
11
|
+
- Node.js
|
|
12
|
+
inferred_lang: pt-PT
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
# ZEN - Construtor de Sites Estáticos Minimalista com Markdown + IA
|
|
16
|
+
|
|
17
|
+
[> Demonstração do Website](https://zccz14.github.io/ZEN/)
|
|
18
|
+
|
|
19
|
+
## Funcionalidades Básicas
|
|
20
|
+
|
|
21
|
+
1. 📃 **Geração de Sites Estáticos**: Constrói uma pasta git contendo ficheiros Markdown num site HTML estático.
|
|
22
|
+
2. 🧭 **Navegação Inteligente por Categorias**: Utiliza IA para analisar o conteúdo, gerando um mapa do site e navegação, independente da localização dos ficheiros de origem.
|
|
23
|
+
3. 🌍 **Tradução Incremental Automática**: Utiliza IA para tradução incremental, permitindo que os utilizadores escrevam Markdown na sua língua materna, mas o conteúdo pode ser multilingue.
|
|
24
|
+
|
|
25
|
+
Porque criar mais um gerador de sites estáticos com Markdown? Refliti sobre como as ferramentas de documentação podem servir melhor os escritores na era da IA:
|
|
26
|
+
|
|
27
|
+
- Regresso ao Conteúdo: Minimizar distrações, focar na escrita
|
|
28
|
+
|
|
29
|
+
Devolver a essência à documentação, devolver a tranquilidade à escrita.
|
|
30
|
+
|
|
31
|
+
Primeiro, não quero ser um bibliotecário. Por vezes quero escrever algo, mas ainda não pensei no título ou na sua organização. Desejo que um LLM me ajude automaticamente a gerar títulos, resumos, categorias, navegação e outras tarefas de organização.
|
|
32
|
+
|
|
33
|
+
Segundo, o meu escritório deve estar arrumado. Não quero ferramentas de construção complexas para configurar, nem estruturas de documentos complicadas. Sempre que vejo os ficheiros de configuração e estruturas de projetos de ferramentas como Docusaurus, VuePress ou Astro, fico com dor de cabeça. Agora, o ZEN opta por esconder toda a configuração no diretório `.zen`, varrendo-a para um canto. O utilizador só precisa de se concentrar no conteúdo da escrita, o resto fica a cargo do ZEN. Todos os outros diretórios são o seu espaço de escrita, pode organizar os seus ficheiros Markdown como desejar.
|
|
34
|
+
|
|
35
|
+
- Regresso à Língua Materna: Escrever na língua materna, construir versões multilingues de forma fluida
|
|
36
|
+
|
|
37
|
+
A vida é curta, não tenho paciência para traduzir. É na língua materna que conseguimos expressar a nossa profundidade de pensamento. No entanto, manter a ligação com o mundo é necessário, não quero abdicar da comunicação multilingue. Por isso, desejo uma ferramenta que me permita escrever na minha língua materna e, ao mesmo tempo, tornar o meu conteúdo acessível a mais pessoas. Atualmente, o i18n exige que traduzamos e mantenhamos as atualizações de conteúdo, o que é demasiado trabalhoso. Opto por usar um LLM para me ajudar com as traduções, poupando muito tempo e permitindo a tradução para vários idiomas com um clique.
|
|
38
|
+
|
|
39
|
+
## Início Rápido
|
|
40
|
+
|
|
41
|
+
Pré-requisitos:
|
|
42
|
+
|
|
43
|
+
- Ter o [Node.js](https://nodejs.org/) instalado (versão 18 ou superior recomendada, necessário comando `npx`)
|
|
44
|
+
- Obter uma [Chave de API da OpenAI](https://platform.openai.com/account/api-keys), ou uma chave de API compatível com a OpenAI
|
|
45
|
+
- Ter o Git instalado (para listar ficheiros Markdown a partir de um repositório Git, ignorando ficheiros filtrados pelas regras do `.gitignore`)
|
|
46
|
+
|
|
47
|
+
Primeiro, trabalhe numa pasta já gerida pelo Git:
|
|
48
|
+
|
|
49
|
+
Configure as variáveis de ambiente
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
export OPENAI_API_KEY="sk-xxxxxx" # Obrigatório: Substitua pela sua Chave de API da OpenAI
|
|
53
|
+
export OPENAI_BASE_URL="https://api.openai.com/v1" # Opcional, por padrão usa a API oficial da OpenAI
|
|
54
|
+
export OPENAI_MODEL="gpt-3.5-turbo" # Opcional, por padrão usa o modelo gpt-3.5-turbo
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Construa o site, suportando tradução multilingue. Usa o diretório atual como origem e gera a saída no diretório `.zen/dist`.
|
|
58
|
+
|
|
59
|
+
- Pode especificar as versões de idioma a gerar usando o parâmetro `--lang` várias vezes (ex: `--lang pt-PT --lang en-US`).
|
|
60
|
+
- Pode especificar o prefixo do URL base do site com o parâmetro `--base-url` (ex: o nome do repositório no GitHub Pages).
|
|
61
|
+
- Não é necessário configurar o idioma de origem, o ZEN deteta-o automaticamente.
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
npx zengen@latest build --lang pt-PT --lang en-US
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
**Ver mais parâmetros ou ajuda**:
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
npx zengen@latest
|
|
71
|
+
```
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: ZEN - Минималистичный генератор статических сайтов на Markdown + AI
|
|
3
|
+
summary: ZEN — это генератор статических сайтов с интеграцией AI, поддерживающий интеллектуальную навигацию по категориям и автоматический инкрементный перевод, позволяя пользователям сосредоточиться на написании на родном языке и упрощая процесс настройки и сборки.
|
|
4
|
+
tags:
|
|
5
|
+
- Генератор статических сайтов
|
|
6
|
+
- Markdown
|
|
7
|
+
- Искусственный интеллект
|
|
8
|
+
- Многоязычный перевод
|
|
9
|
+
- Минимализм
|
|
10
|
+
- Инструменты для документации
|
|
11
|
+
- Node.js
|
|
12
|
+
inferred_lang: ru
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
# ZEN - Минималистичный генератор статических сайтов на Markdown + AI
|
|
16
|
+
|
|
17
|
+
[> Демо сайта](https://zccz14.github.io/ZEN/)
|
|
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-ключ
|
|
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 ru --lang en-US`).
|
|
60
|
+
- Можно указать базовый URL-префикс сайта с помощью параметра `--base-url` (например, имя репозитория на GitHub Pages).
|
|
61
|
+
- Исходный язык указывать не нужно, ZEN определит его автоматически.
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
npx zengen@latest build --lang ru --lang en-US
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
**Просмотреть больше параметров или справку:**
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
npx zengen@latest
|
|
71
|
+
```
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: ZEN - Minimalistisk Markdown + AI Static Site Builder
|
|
3
|
+
summary: ZEN är en statisk site-generator som kombinerar AI, stöder intelligent kategorisering och navigering samt automatisk inkrementell översättning. Det låter användaren fokusera på att skriva på sitt modersmål och förenklar konfigurations- och byggprocessen.
|
|
4
|
+
tags:
|
|
5
|
+
- Static Site Generator
|
|
6
|
+
- Markdown
|
|
7
|
+
- AI
|
|
8
|
+
- Multilingual Translation
|
|
9
|
+
- Minimalism
|
|
10
|
+
- Documentation Tools
|
|
11
|
+
- Node.js
|
|
12
|
+
inferred_lang: sv-SE
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
# ZEN - Minimalistisk Markdown + AI Static Site Builder
|
|
16
|
+
|
|
17
|
+
[> Webbplatsdemo](https://zccz14.github.io/ZEN/)
|
|
18
|
+
|
|
19
|
+
## Grundläggande funktioner
|
|
20
|
+
|
|
21
|
+
1. 📃 **Statisk site-generering**: Bygg en statisk HTML-webbplats från vilken git-mapp som helst som innehåller Markdown-filer.
|
|
22
|
+
2. 🧭 **Intelligent kategorisering och navigering**: Använder AI för att analysera innehåll, generera webbplatskarta och navigering. Platsen för källfilerna är inte känslig.
|
|
23
|
+
3. 🌍 **Automatisk inkrementell översättning**: Använder AI för inkrementell översättning. Låter användaren skriva Markdown på sitt modersmål, men webbplatsen kan vara flerspråkig.
|
|
24
|
+
|
|
25
|
+
Varför skapa ännu en Markdown-baserad statisk site-generator? Jag har tänkt på hur dokumentationsverktyg i AI-eran bättre kan tjäna författare:
|
|
26
|
+
|
|
27
|
+
- **Återgå till innehållet**: Minimera störningar, fokusera på skrivandet
|
|
28
|
+
|
|
29
|
+
Låt dokumentationen återgå till sin kärna, låt skrivandet återgå till lugn och ro.
|
|
30
|
+
|
|
31
|
+
För det första vill jag inte vara bibliotekarie. Ibland vill jag skriva ner något, men jag kanske inte har bestämt mig för en titel eller organiserat det särskilt väl. Jag vill att LLM automatiskt ska hjälpa mig med att generera titlar, göra sammanfattningar, kategorisera, skapa navigering och annat organiseringsarbete.
|
|
32
|
+
|
|
33
|
+
För det andra måste mitt skrivrum vara rent och snyggt. Jag vill inte ha komplexa byggverktyg med krånglig konfiguration, krångla med komplicerade dokumentstrukturer. Varje gång jag ser konfigurationsfiler och projektstrukturer för verktyg som Docusaurus, VuePress eller Astro får jag huvudvärk. Nu väljer ZEN att gömma all konfiguration i mappen `.zen`, sopa undan den i ett hörn. Användaren behöver bara fokusera på att skriva innehåll, resten hanterar ZEN. Alla andra mappar är ditt skrivutrymme, du kan organisera dina Markdown-filer hur du vill.
|
|
34
|
+
|
|
35
|
+
- **Återgå till modersmålet**: Skriv på ditt modersmål, bygg sömlöst flerspråkiga versioner
|
|
36
|
+
|
|
37
|
+
Livet är för kort för att jag ska orka översätta. Man uttrycker sina tankar på djupast sätt när man använder sitt modersmål. Men att hålla kontakten med världen är också nödvändigt, jag vill inte avstå från flerspråkig kommunikation. Därför önskar jag ett verktyg som låter mig skriva på mitt modersmål, samtidigt som det gör mitt innehåll tillgängligt för fler. Nuvarande i18n-lösningar kräver inte bara att man översätter själv, utan också att man underhåller uppdateringar av innehållet – för besvärligt. Jag väljer att använda LLM för att hjälpa mig med översättningar, det sparar mycket tid och flera språkversioner kan skapas med ett enda kommando.
|
|
38
|
+
|
|
39
|
+
## Snabbstart
|
|
40
|
+
|
|
41
|
+
Förutsättningar:
|
|
42
|
+
|
|
43
|
+
- [Node.js](https://nodejs.org/) installerat (rekommenderad version 18 eller högre, kommandot `npx` måste finnas)
|
|
44
|
+
- Har fått en [OpenAI API-nyckel](https://platform.openai.com/account/api-keys), eller en OPENAI-kompatibel API-nyckel
|
|
45
|
+
- Git installerat (används för att lista Markdown-filer från ett git-arkiv, ignorerar filer som filtreras bort av `.gitignore`-regler)
|
|
46
|
+
|
|
47
|
+
Först, arbeta i en mapp som redan hanteras av git:
|
|
48
|
+
|
|
49
|
+
Konfigurera miljövariabler
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
export OPENAI_API_KEY="sk-xxxxxx" # Obligatoriskt: Ersätt med din OpenAI API-nyckel
|
|
53
|
+
export OPENAI_BASE_URL="https://api.openai.com/v1" # Valfritt, använder OpenAIs officiella API som standard
|
|
54
|
+
export OPENAI_MODEL="gpt-3.5-turbo" # Valfritt, använder gpt-3.5-turbo-modellen som standard
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Bygg webbplatsen, stöder flerspråkig översättning. Använder aktuell katalog som källkatalog, skriver ut till katalogen `.zen/dist`.
|
|
58
|
+
|
|
59
|
+
- Du kan ange vilka språkversioner som ska genereras genom att använda parametern `--lang` flera gånger (t.ex. `--lang zh-Hans --lang en-US`).
|
|
60
|
+
- Du kan ange webbplatsens bas-URL-prefix med parametern `--base-url` (t.ex. namnet på ditt GitHub Pages-repo).
|
|
61
|
+
- Ingen konfiguration av källspråk behövs, ZEN upptäcker det automatiskt.
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
npx zengen@latest build --lang zh-Hans --lang en-US
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
**Visa fler parametrar eller hjälp**:
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
npx zengen@latest
|
|
71
|
+
```
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: ZEN - เครื่องมือสร้างเว็บไซต์แบบสแตติกที่เรียบง่าย Markdown + AI
|
|
3
|
+
summary: ZEN เป็นเครื่องมือสร้างเว็บไซต์แบบสแตติกที่ผสาน AI รองรับการนำทางแบบจัดประเภทอัจฉริยะและการแปลแบบเพิ่มอัตโนมัติ ช่วยให้ผู้ใช้สามารถมุ่งเน้นการเขียนด้วยภาษาแม่ และลดความซับซ้อนของกระบวนการกำหนดค่าและการสร้าง
|
|
4
|
+
tags:
|
|
5
|
+
- เครื่องมือสร้างเว็บไซต์แบบสแตติก
|
|
6
|
+
- Markdown
|
|
7
|
+
- AI
|
|
8
|
+
- การแปลหลายภาษา
|
|
9
|
+
- เรียบง่าย
|
|
10
|
+
- เครื่องมือเอกสาร
|
|
11
|
+
- Node.js
|
|
12
|
+
inferred_lang: th-TH
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
# ZEN - เครื่องมือสร้างเว็บไซต์แบบสแตติกที่เรียบง่าย Markdown + AI
|
|
16
|
+
|
|
17
|
+
[> ตัวอย่างเว็บไซต์](https://zccz14.github.io/ZEN/)
|
|
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" # ไม่บังคับ ค่าเริ่มต้นใช้ OpenAI 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,71 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: ZEN - Minimalist Markdown + AI Statik Site Oluşturucu
|
|
3
|
+
summary: ZEN, akıllı sınıflandırma navigasyonu ve otomatik artımlı çeviri desteği sunan, AI ile entegre bir statik site oluşturucudur. Kullanıcıların ana dillerinde yazmaya odaklanmasını sağlar, yapılandırma ve derleme sürecini basitleştirir.
|
|
4
|
+
tags:
|
|
5
|
+
- Statik Site Oluşturucu
|
|
6
|
+
- Markdown
|
|
7
|
+
- AI
|
|
8
|
+
- Çok Dilli Çeviri
|
|
9
|
+
- Minimalizm
|
|
10
|
+
- Dokümantasyon Aracı
|
|
11
|
+
- Node.js
|
|
12
|
+
inferred_lang: tr-TR
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
# ZEN - Minimalist Markdown + AI Statik Site Oluşturucu
|
|
16
|
+
|
|
17
|
+
[> Website Demo](https://zccz14.github.io/ZEN/)
|
|
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ı Sınıflandırma Navigasyonu**: 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 Markdown'ı ana dillerinde yazabilir, ancak site çok dilli olabilir.
|
|
24
|
+
|
|
25
|
+
Neden bir Markdown statik site oluşturucusu daha? AI çağında, dokümantasyon araçlarının yazarlara nasıl daha iyi hizmet edebileceğini yeniden düşündüm:
|
|
26
|
+
|
|
27
|
+
- İçeriğe Dönüş: Müdahaleyi en aza indirin, yazmaya odaklanın
|
|
28
|
+
|
|
29
|
+
Dokümanları özüne döndürün, yazmayı huzurlu bir deneyim haline getirin.
|
|
30
|
+
|
|
31
|
+
Birincisi, kütüphaneci olmak istemiyorum. Bazen bir şeyler yazmak isterim ama henüz başlığını düşünmemiş, belirli bir organizasyon oluşturmamış olabilirim. LLM'nin başlık oluşturma, özet çıkarma, sınıflandırma, navigasyon gibi düzenleme işlerini otomatik yapmasını umuyorum.
|
|
32
|
+
|
|
33
|
+
İkincisi, çalışma odam temiz olmalı. Karmaşık yapılandırmalı derleme araçları, karmaşık doküman 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, köşeye süpürmeyi seçiyor. Kullanıcı sadece içerik yazmaya odaklanır, gerisini ZEN halleder. Diğer tüm dizinler sizin yazma alanınızdır, Markdown dosyalarınızı istediğiniz gibi düzenleyebilirsiniz.
|
|
34
|
+
|
|
35
|
+
- Ana Dile Dönüş: Ana dilinizde yazın, çok dilli sürümleri sorunsuz oluşturun
|
|
36
|
+
|
|
37
|
+
Hayat kısa, çeviri yapmakla uğraşmak istemiyorum. İnsanlar ana dillerini kullanırken düşüncelerinin derinliğini en iyi şekilde ortaya koyabilir. Ancak aynı zamanda dünyayla bağlantıda kalmak da gereklidir, çok dilli iletişimi bırakmak istemiyorum. Bu yüzden, ana dilimde yazmama izin veren, aynı zamanda içeriğimi daha fazla kişiye ulaştırabilen bir araç istiyorum. Mevcut i18n çözümleri sadece kendi çevirinizi yapmanızı gerektirmekle kalmaz, aynı zamanda içerik güncellemelerini de sizin yönetmenizi gerektirir, bu çok zahmetli. Çevirileri 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
|
+
Ön Koşullar:
|
|
42
|
+
|
|
43
|
+
- [Node.js](https://nodejs.org/) kurulu olmalı (18 veya üzeri sürüm önerilir, npx komutu gereklidir)
|
|
44
|
+
- [OpenAI API Anahtarı](https://platform.openai.com/account/api-keys) veya OPENAI uyumlu bir API Anahtarı edinilmiş olmalı
|
|
45
|
+
- Git kurulu olmalı (Markdown dosyalarını Git'ten listelemek ve .gitignore kurallarıyla filtrelenen dosyaları yok saymak için)
|
|
46
|
+
|
|
47
|
+
İlk olarak, 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" # Opsiyonel, varsayılan olarak OpenAI resmi API'si kullanılır
|
|
54
|
+
export OPENAI_MODEL="gpt-3.5-turbo" # Opsiyonel, varsayılan olarak gpt-3.5-turbo modeli kullanılır
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Siteyi oluşturun, çok dilli çeviriyi destekler. Mevcut dizini kaynak dizin olarak kullanır, çıktıyı `.zen/dist` dizinine yazar.
|
|
58
|
+
|
|
59
|
+
- Oluşturulacak dil sürümlerini belirtmek için `--lang` parametresi birden fazla kez kullanılabilir (örneğin `--lang tr-TR --lang en-US`).
|
|
60
|
+
- Sitenin temel URL önekini belirtmek için `--base-url` parametresi kullanılabilir (ö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 tr-TR --lang en-US
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
**Daha fazla parametre veya yardım için**:
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
npx zengen@latest
|
|
71
|
+
```
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: ZEN - Мінімалістичний Markdown + AI генератор статичних сайтів
|
|
3
|
+
summary: ZEN — це генератор статичних сайтів з інтеграцією AI, що підтримує розумну категорізацію, навігацію та автоматичний інкрементальний переклад, дозволяючи користувачам зосередитись на написанні рідною мовою та спрощуючи процес налаштування та збірки.
|
|
4
|
+
tags:
|
|
5
|
+
- Генератор статичних сайтів
|
|
6
|
+
- Markdown
|
|
7
|
+
- AI
|
|
8
|
+
- Багатомовний переклад
|
|
9
|
+
- Мінімалізм
|
|
10
|
+
- Інструмент для документації
|
|
11
|
+
- Node.js
|
|
12
|
+
inferred_lang: uk-UA
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
# ZEN - Мінімалістичний Markdown + AI генератор статичних сайтів
|
|
16
|
+
|
|
17
|
+
[> Демо сайту](https://zccz14.github.io/ZEN/)
|
|
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`, засунути її в кут, щоб користувач міг зосередитись лише на написанні контенту, а все інше залишити 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" # Опціонально, за замовчуванням використовується офіційний OpenAI API
|
|
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
|
+
```
|