desilva/ laradocgen
基于Markdown生成Laravel的静态HTML文档,并实时预览。
Requires
- php: ^8.0.2
- ext-curl: *
- ext-fileinfo: *
- illuminate/support: ^8.42|^9.0
- league/commonmark: ^2.2
- torchlight/torchlight-commonmark: ^0.5.5
- torchlight/torchlight-laravel: ^0.5.11
Requires (Dev)
- orchestra/testbench: ^6.0
- phpunit/phpunit: ^9.5
Suggests
- laravel/framework: This package has so far only been tested with Laravel 9.2. Please contribute with more tests!
This package is auto-updated.
Last update: 2024-09-25 16:14:54 UTC
README
现在支持暗黑模式!
未积极维护
由于我正在专注于HydePHP,该项目目前没有添加新功能。然而,项目将继续无限期地获得安全修复。欢迎开源贡献!
替代方案
这是一个混合静态网站生成器和实时服务器包。我已经创建了两个我认为比这个更好的包。
如果您想要静态文档站点,请尝试HydePHP,它具有显著更快的渲染引擎,并且更加精细,更容易开始使用。
如果您想要Laravel项目的文档站点,请尝试Lagrafo,它最初是Laradocgen v2.0。
关于
嗨!我是Caen!我创建这个包来练习包的开发。它仍然处于测试阶段,但请发送您所有的反馈!我也很乐意得到一些PR。
完整文档
完整文档可在https://docs.desilva.se/laradocgen/找到。当然,使用这个包生成!
Alpha阶段软件
请注意,这是一个非常新的包,我预计会有bug。如果出现问题,请告诉我,我很乐意得到反馈和PR!
**免责声明** 这个包仍处于alpha阶段。一旦它变得足够稳定和经过测试,我将发布v1.0,并将遵循语义版本控制。但在此之前,我将运行金丝雀构建,我确信会有破坏性变化。我当然会尽最大努力在升级指南中记录它们,但总的来说,在这个阶段我不建议在生产环境中使用。尽管它打算在您的本地服务器上运行,但我认为只要您有备份和Git,就不太可能出错。真正让我担心的是,由于我们正在与写入磁盘的文件打交道,如果出现问题,文件可能会被覆盖,但现在路径被硬编码到“安全”目录中,所以它只能覆盖由包创建的文件。安装
该包至今只与Laravel 9进行了测试
您可以通过composer安装该包
composer require desilva/laradocgen --dev
发布资源
php artisan vendor:publish --tag="laradocgen"
构建静态网站
php artisan laradocgen:build
您的静态网站将保存在public/docs
使用
添加页面
页面是从存储在resources/docs/
的Markdown文件生成的。
Markdown文件名通过Str::slug()进行清洗。为了防止404错误,文件名必须兼容。本质上,它们必须是小写短横线命名法,并以.md结尾,并且不能包含空格。
❌ "kebab case title.markdown" # Returns 404 ✔️ "kebab-case-title.md" # creates my-page-title.html and renders as "My Page Title" in the frontend
并将您的图像存储在resources/docs/media/
 # Note the relative path
构建静态网站
php artisan laradocgen:build
您的静态网站将保存在public/docs
自定义
该包力求遵循约定优于配置。一切都是预先配置的,所以您可以快速开始。然而,如果您愿意,可以自定义该包。
您可以使用以下命令发布Blade视图:
php artisan publish --tag="laradocgen-views"
并按您的喜好进行自定义。请注意,在更新时您需要重新发布视图!
您可以在配置文件中自定义源目录和输出目录。您可以使用此功能创建多个文档版本。
包开发
有关详细信息,请参阅CONTRIBUTING。
变更日志
有关最近更改的更多信息,请参阅CHANGELOG。
贡献
有关详细信息,请参阅CONTRIBUTING。
路线图
- 允许指定源目录/构建目录。这也可以用于版本控制。
- 文档Blade 视图定制
- 添加(自动)版本支持
- 允许包从Laravel独立运行
- 添加搜索功能
- 添加Artisan命令,根据输入标题创建新的Markdown文件
- 为Artisan构建命令添加CLI选项,以在每次构建中覆盖配置设置
目前自定义选项并不多,因为我希望保持事情简单明了。如果您有任何配置想法,请提交PR或打开GitHub Issue,因为我希望将来允许更多自定义。
安全
如果您发现任何安全相关的问题,请通过电子邮件caen@desilva.se联系,而不是使用问题跟踪器。所有漏洞都将得到及时处理。
致谢
许可证
MIT许可证(MIT)。有关更多信息,请参阅许可证文件。
归属
请参阅相应作者的存储库以获取其许可证文件
Laravel包模板
此包的脚手架是通过使用Laravel包模板生成的。
前端
- 前端基于Creative Tim的Tailwind Starter Kit(MIT)。
- 暗模式切换基于Flowbite的一个组件(MIT)。
使用的包和特别提及
- 前端使用TailwindCSS构建。
- 语法高亮由Torchlight提供。
- Markdown由League/Commonmark解析。
- 默认favicon是通过使用Favicon.io创建的,使用了来自"Page" Emoji的Twemoji开源项目。图形版权2020年Twitter,Inc和其他贡献者,许可协议为CC-BY 4.0。