Skip to content

Commit 9374623

Browse files
first commit
0 parents  commit 9374623

29 files changed

+23703
-0
lines changed

.gitignore

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Dependencies
2+
/node_modules
3+
4+
# Production
5+
/build
6+
7+
# Generated files
8+
.docusaurus
9+
.cache-loader
10+
11+
# Misc
12+
.DS_Store
13+
.env.local
14+
.env.development.local
15+
.env.test.local
16+
.env.production.local
17+
18+
npm-debug.log*
19+
yarn-debug.log*
20+
yarn-error.log*

.node-version

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
18.12.0

README.md

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
# Website
2+
3+
This website is built using [Docusaurus 2](https://docusaurus.io/), a modern static website generator.
4+
5+
### Installation
6+
7+
```
8+
$ npm install
9+
```
10+
11+
### Local Development
12+
13+
```
14+
$ npm start
15+
```
16+
17+
This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.
18+
19+
### Build
20+
21+
```
22+
$ npm run build
23+
```
24+
25+
This command generates static content into the `build` directory and can be served using any static contents hosting service.
26+
27+
### Deployment
28+
29+
Using SSH:
30+
31+
```
32+
$ USE_SSH=true npm run deploy
33+
```
34+
35+
Not using SSH:
36+
37+
```
38+
$ GIT_USER=<Your GitHub username> npm run deploy
39+
```
40+
41+
If you are using GitHub pages for hosting, this command is a convenient way to build the website and push to the `gh-pages` branch.

babel.config.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
module.exports = {
2+
presets: [require.resolve('@docusaurus/core/lib/babel/preset')],
3+
};

docs/basics/_category_.json

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
{
2+
"label": "Basics",
3+
"position": 3,
4+
"link": {
5+
"type": "generated-index",
6+
"description": "プロジェクトの全体像など、開発に必要な前提知識を提供します。"
7+
}
8+
}

docs/basics/overview.md

Lines changed: 114 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,114 @@
1+
---
2+
sidebar_position: 1
3+
---
4+
5+
# Overview
6+
7+
このページではZennの全体像を知ってもらうため、Zennの各サービス、ツール、パッケージの概要とそれらの依存関係について説明します。
8+
9+
## 依存関係グラフ
10+
11+
Zennの各サービス、ツール、パッケージの依存関係グラフを以下に示します。
12+
13+
- 実線: npmパッケージに依存
14+
- 破線: APIを呼び出すなど間接的に依存
15+
16+
```mermaid
17+
flowchart TD
18+
classDef Service stroke-width:4px;
19+
20+
zenn.dev:::Service
21+
zenn-cli:::Service
22+
zenn-vscode-extension:::Service
23+
embed.zenn.studio:::Service
24+
backend-api:::Service
25+
api-markdown-html:::Service
26+
27+
zenn.dev-->zenn-embed-elements
28+
zenn.dev-->zenn-content-css
29+
zenn.dev-.http.->api-markdown-html
30+
zenn.dev-.http.->embed.zenn.studio
31+
zenn.dev-.http.->backend-api
32+
33+
zenn-cli-->zenn-markdown-html
34+
zenn-cli-->zenn-content-css
35+
zenn-cli-->zenn-validator
36+
zenn-cli-->zenn-embed-elements
37+
zenn-cli-.http.->embed.zenn.studio
38+
39+
zenn-vscode-extension-->zenn-markdown-html
40+
zenn-vscode-extension-->zenn-content-css
41+
zenn-vscode-extension-->zenn-validator
42+
zenn-vscode-extension-->zenn-embed-elements
43+
zenn-vscode-extension-.http.->embed.zenn.studio
44+
45+
backend-api-.http.->api-markdown-html
46+
47+
api-markdown-html-->zenn-markdown-html
48+
```
49+
50+
## サービス
51+
52+
### zenn.dev
53+
54+
Zennのメインサービスです。Next.jsのプロジェクトです。
55+
56+
リポジトリは非公開。
57+
58+
### backend-api
59+
60+
zenn.devのバックエンドサーバーです。Ruby on Railsのプロジェクトです。
61+
62+
リポジトリは非公開。
63+
64+
### embed.zenn.studio
65+
66+
markdownの埋め込み要素を表示するためのiframeを返すサーバーです。Next.jsのプロジェクトです。
67+
68+
リポジトリは非公開。
69+
70+
### api-markdown-html
71+
72+
markdownをZennで表示可能なHTMLに変換するAPIです。`zenn-markdown-html` をラップしたCloud Functions(Node.js)のプロジェクトです。
73+
74+
リポジトリは非公開。
75+
76+
## ツール
77+
78+
### zenn-cli
79+
80+
markdownをローカルで作成・プレビューするためのCLIとWebのツールです。JavaScript(TypeScript)とNode.jsのプロジェクトです。
81+
82+
[GitHubリポジトリ](https://github.com/zenn-dev/zenn-editor/tree/main/packages/zenn-cli)
83+
84+
### zenn-vscode-extension
85+
86+
markdownをVSCode for the Web(github.devなど)で作成・プレビューするためのVSCode Web拡張機能です。JavaScript(TypeScript)のプロジェクトです。
87+
88+
[GitHubリポジトリ](https://github.com/zenn-dev/zenn-vscode-extension)
89+
90+
## パッケージ
91+
92+
### zenn-content-css
93+
94+
ZennのHTMLに適用するCSSを提供するパッケージです。
95+
96+
[GitHubリポジトリ](https://github.com/zenn-dev/zenn-editor/tree/main/packages/zenn-content-css)
97+
98+
### zenn-embed-elements
99+
100+
markdownの埋め込み要素をクライアント側でHTMLに変換するパッケージです。
101+
102+
[GitHubリポジトリ](https://github.com/zenn-dev/zenn-editor/tree/main/packages/zenn-embed-elements)
103+
104+
### zenn-markdown-html
105+
106+
markdownをZennで表示可能なHTMLに変換するパッケージです。
107+
108+
[GitHubリポジトリ](https://github.com/zenn-dev/zenn-editor/tree/main/packages/zenn-markdown-html)
109+
110+
### zenn-validator
111+
112+
markdownの内容(frontmatterなどZennの仕様)を検証するパッケージです。
113+
114+
[GitHubリポジトリ](https://github.com/zenn-dev/zenn-editor/tree/main/packages/zenn-validator)

docs/basics/repositories.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
---
2+
sidebar_position: 2
3+
---
4+
5+
# Repositories
6+
7+
このページではZennのツール、パッケージのリポジトリについて説明します。
8+
9+
現在、これらは [zenn-editor](#zenn-editor)[zenn-vscode-extension](#zenn-vscode-extension) の 2つのリポジトリで管理されています。
10+
11+
## zenn-editor
12+
13+
以下のプロジェクトを含むモノレポとして管理されています。
14+
15+
- [zenn-cli](https://github.com/zenn-dev/zenn-editor/tree/main/packages/zenn-cli)
16+
- [zenn-content-css](https://github.com/zenn-dev/zenn-editor/tree/main/packages/zenn-content-css)
17+
- [zenn-embed-elements](https://github.com/zenn-dev/zenn-editor/tree/main/packages/zenn-embed-elements)
18+
- [zenn-markdown-html](https://github.com/zenn-dev/zenn-editor/tree/main/packages/zenn-markdown-html)
19+
- [zenn-validator](https://github.com/zenn-dev/zenn-editor/tree/main/packages/zenn-validator)
20+
21+
## zenn-vscode-extension
22+
23+
[zenn-vscode-extension](https://github.com/zenn-dev/zenn-vscode-extension) 専用のリポジトリです。

docs/contribution.md

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
---
2+
sidebar_position: 2
3+
---
4+
5+
# Contribution
6+
7+
ZennのOSSにコントリビュートする方法を説明します。
8+
9+
## Issue を作成する
10+
11+
Zennでは機能リクエストやバグのトラッキングに [zenn/zenn-community](https://github.com/zenn-dev/zenn-community) リポジトリの Issue を利用しています。
12+
13+
あなたが機能リクエストやバグ報告をする場合は、どのツールやライブラリに対する内容であっても zenn/zenn-community リポジトリに Issue を作成してください。ただし、セキュリティに関する問題などパブリックにすることで問題が発生する可能性のあるものは、[Zennのお問い合わせフォーム](https://zenn.dev/inquiry)から連絡してください。
14+
15+
### 機能リクエストの場合
16+
17+
作成された Issue はZennの開発チームが内容を確認し、提案を受け入れるかどうかを判断します。開発チームがコンテキストを理解できるよう、Issue Templateに従いできるだけ詳しく内容を記載してください。
18+
19+
大まかな受け入れの基準は、**Zennとしての方針に沿っていること****多くのユーザーにメリットがあること****持続してメンテナンスが可能であること****互換性が保たれること**、などです。(この他に、各ツール・ライブラリごとに細かい方針がある場合があります。)限定的なユースケースや環境に依存するリクエストは受け入れられない可能性が高いです。
20+
21+
### 既存のIssueの解決を手伝う
22+
23+
既存の Issue にコメントすることで Issue の解決を手伝うこともできます。技術的な問題解決の提案や、バグの再現情報の提供など、Issue を解決するために必要な情報を提供していただけるだけでも大変ありがたいです。
24+
25+
## Pull Request を作成する
26+
27+
Zennの開発チームが受け入れた Issue について、実装を行い Pull Request を作成することができます。Pull Request の受け入れ条件は、各ツール・ライブラリの開発ガイドを参照してください。
28+
29+
その他、テストコードの追加、リファクタリング、ライブラリのアップデート、ドキュメントの修正、などの Pull Request も歓迎します。これらは Issue を作成する必要はありませんが、変更が大きい場合は受け入れられない可能性もありますので、心配な場合は Issue を作成してください。

docs/guides/_category_.json

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
{
2+
"label": "Guides",
3+
"position": 4,
4+
"link": {
5+
"type": "generated-index"
6+
}
7+
}
24.8 KB
Loading

0 commit comments

Comments
 (0)