daux / daux.io
使用简单的文件夹结构和Markdown文件创建自定义文档的生成器
Requires
- php: >=8.1
- ext-json: *
- guzzlehttp/guzzle: ~6.0 || ~7.0
- league/commonmark: ^2.4.0
- league/plates: ~3.1
- scrivo/highlight.php: ^9.15
- symfony/console: ^5.0|^6.0|^7.0
- symfony/http-foundation: ^5.0|^6.0|^7.0
- symfony/mime: ^5.0|^6.0|^7.0
- symfony/polyfill-intl-icu: ^1.10
- symfony/process: ^5.0|^6.0|^7.0
- symfony/yaml: ^5.0|^6.0|^7.0
Requires (Dev)
- mikey179/vfsstream: ^1.6
- phpspec/prophecy-phpunit: ^2.0
- phpunit/phpunit: ^10.0
Suggests
- ext-intl: Allows to translate the modified at date
Replaces
- dev-master
- 0.22.2
- 0.22.1
- 0.22.0
- 0.21.3
- 0.21.2
- 0.21.1
- 0.21.0
- 0.20.2
- 0.20.1
- 0.20.0
- 0.19.0
- 0.18.1
- 0.18.0
- 0.17.2
- 0.17.1
- 0.17.0
- 0.16.2
- 0.16.1
- 0.16.0
- 0.15.1
- 0.15.0
- 0.14.0
- 0.13.0
- 0.12.1
- 0.12.0
- 0.11.1
- 0.11.0
- 0.10.2
- 0.10.1
- 0.10.0
- 0.9.4
- 0.9.3
- 0.9.2
- 0.9.1
- 0.9.0
- 0.8.1
- 0.8.0
- 0.7.5
- 0.7.4
- 0.7.3
- 0.7.2
- 0.7.1
- 0.7.0
- 0.6.0
- 0.5.0
- 0.4.0
- 0.3.2
- 0.3.1
- 0.3.0
- 0.2.3
- 0.2.2
- 0.2.1
- 0.2.0
- 0.1.0
- dev-renovate/all-minor-patch
- dev-plantuml
- dev-analysis
- dev-add-code-of-conduct-1
- dev-development
This package is auto-updated.
Last update: 2024-09-27 16:07:57 UTC
README
Daux.io是一个文档生成器,使用简单的文件夹结构和Markdown文件即时创建自定义文档。它帮助您以开发者友好的方式创建外观出色的文档。
功能
- 100% 移动响应式
- 符合CommonMark规范(Markdown规范)
- 支持Markdown表格
- 自动创建主页/着陆页
- 自动语法高亮
- 自动生成导航
- 4种内置主题或自定义
- 功能性强,扁平化设计风格
- 可分享/可链接的SEO友好URL
- 基于Bootstrap构建
- 无需构建步骤
- Git/SVN友好
- 支持Google Analytics和Piwik Analytics
- 静态输出生成
演示
这是使用Daux.io的网站列表
- 使用自定义主题
- 使用默认主题
您使用Daux.io吗?请发送一个pull request或打开一个问题,我将您添加到列表中。
安装
PHP和Composer
如果您已安装PHP和Composer,您可以安装依赖项
composer global require daux/daux.io
# Next to your `docs` folder, run
daux generate
然后您可以使用daux
命令行生成您的文档。
如果命令未找到,请确保您的$PATH
包含~/.composer/vendor/bin
Docker
或者,如果您想使用Docker,命令的开始将是
docker run --rm -it -w /build -v "$PWD":/build -u "$(id -u):$(id -g)" daux/daux.io daux
在服务器上运行
将此存储库作为zip文件下载,解压,并将您的文档放入docs
文件夹中,然后您可以使用Apache或Nginx来提供它。
daux
命令行工具有两个命令:generate
和serve
,不带参数运行Daux.io将自动运行generate
命令。
您可以通过运行daux --help
来获取每个命令的详细信息。
文件夹
默认情况下,生成器将在docs
文件夹中查找文件夹。在docs
文件夹内添加您的文件夹。此项目包含一些示例文件夹和文件以帮助您开始。
您可以将文件夹嵌套多层以获得您想要的精确结构。文件夹结构将被转换为嵌套导航。
如果您希望将文档保存在其他位置(例如在daux.io根目录之外),您可以在global.json
文件中指定您的文档路径。
文件
生成器将在docs
文件夹和其所有子文件夹中查找Markdown文件(*.md
和*.markdown
)。
您必须使用下划线代替空格。以下是一些示例文件名及其转换结果
好的
- 01_Getting_Started.md = Getting Started
- API_Calls.md = API Calls
- 200_Something_Else-Cool.md = Something Else-Cool
- _5_Ways_to_Be_Happy.md = 5 Ways To Be Happy
差
- File Name With Space.md = 失败
排序
要按特定方式排序您的文件和文件夹,可以在它们前面加上数字和下划线,例如 /docs/01_Hello_World.md
和 /docs/05_Features.md
这将使 Hello World 在 Features 之前显示,覆盖了默认的字母数字排序。数字将在导航和URL中删除。对于文件 6 Ways to Get Rich
,您可以使用 /docs/_6_Ways_to_Get_Rich.md
着陆页
如果您想为您的项目创建一个漂亮的着陆页,只需在 /docs
文件夹的根目录下创建一个 index.md
文件。然后,此文件将用于创建着陆页。您还可以使用配置文件添加标语和图片,如下所示
{ "title": "Daux.io", "tagline": "The Easiest Way To Document Your Project", "image": "app.png" }
注意:图片可以是本地或远程图片。使用约定 <base_url>
来引用Daux实例的根目录。
部分着陆页
如果您对在文档的子部分中创建着陆页感兴趣,您只需要在该文件夹中添加一个 index.md
文件。例如,/docs/01_Examples
有一个针对该部分的着陆页,因为存在一个 /docs/01_Examples/index.md
文件。如果您希望为没有着陆页格式的部分创建索引页,请使用名称 _index.md
配置
要自定义文档的外观和感觉,您可以在 /docs
文件夹中创建一个 config.json
文件。该 config.json
文件是一个简单的JSON对象,您可以使用它来更改文档的一些基本设置。
标题
更改文档中的标题栏
{ "title": "Daux.io" }
主题
我们有4个内置的Bootstrap主题。要使用其中一个主题,只需将 theme
选项设置为以下之一
- daux-blue
- daux-green
- daux-navy
- daux-red
{ "html": { "theme": "daux-green" } }
更多选项
还有许多其他选项可用
远程运行
将仓库中的文件复制到可以运行PHP 8.1.0或更高版本的Web服务器。
本地运行
本地运行文档有几种方法。推荐的方法是运行 daux serve
,这将执行PHP的嵌入式服务器。
默认情况下,服务器将在以下位置运行: https://:8085
这主要用于您在本地编写/更新大量文档并希望预览更改时。
生成一组静态文件
这些可以上传到静态站点托管服务,如pages.github.com
生成一组完整的页面,包括导航
daux --source=docs --destination=static
IIS上运行
如果您已设置本地或远程IIS网站,可能需要一个包含以下内容的 web.config
- 重写配置,用于处理干净的URL。
- 如果使用自定义主题,则对less文件进行MIME类型处理。
干净的URL
在 web.config
中,需要在 <system.webServer>
下添加 <rewrite>
条目。
<configuration> <system.webServer> <rewrite> <rules> <rule name="Main Rule" stopProcessing="true"> <match url=".*" /> <conditions logicalGrouping="MatchAll"> <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" /> <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" /> </conditions> <action type="Rewrite" url="index.php" appendQueryString="false" /> </rule> </rules> </rewrite> </system.webServer> </configuration>
要在IIS 6上使用干净的URL,您需要使用自定义URL重写模块,例如 URL Rewriter。
PHP需求
Daux.io 与 官方支持的 PHP版本兼容;8.1.0及更高版本。
扩展
Daux.io 运行需要以下 PHP 扩展:php-mbstring
和 php-xml
。
如果你的页面名称包含非英文字符,建议安装 php-intl
扩展。
支持
如果你在使用 Daux.io 时需要帮助,或者发现了 bug,请在本项目的 GitHub 仓库 上创建一个 issue。