[Teanary 前端模板]我不想在核心代码中维护一个只会被使用一次的复杂模板机制,为了方便开发者快速开发、定制或贡献自己的模板,为前端单独抽出一个仓库和文档!

Teanary 前端模板仓库

项目地址:https://gitee.com/teanary/teanary_template
这是一个独立的模板仓库,包含了 Teanary 电商系统的所有前端视图模板文件。这个仓库的目的是方便开发者快速开发、定制或贡献自己的模板。

📁 目录结构

templates/ ├── auth/ # 认证相关模板 │ └── verify-email.blade.php ├── components/ # 组件模板 │ ├── layouts/ # 布局组件 │ │ ├── app.blade.php │ │ ├── manager.blade.php │ │ └── seo.blade.php │ ├── manager/ # 管理后台组件 │ ├── payment/ # 支付相关组件 │ ├── users/ # 用户相关组件 │ ├── widgets/ # 小部件组件 │ └── ... ├── errors/ # 错误页面模板 │ ├── 404.blade.php │ ├── 500.blade.php │ └── ... ├── livewire/ # Livewire 组件模板 │ ├── components/ # Livewire 子组件 │ ├── manager/ # 管理后台页面 │ ├── payment/ # 支付页面 │ ├── users/ # 用户中心页面 │ └── ... ├── LICENSE # AGPL-3.0 许可证文件 ├── README.md # 本文件 └── test-templates.sh # 模板测试脚本 

🎯 用途

1. 快速开发

  • 开发者可以直接使用这些模板作为起点
  • 所有模板都遵循 Laravel Blade 语法规范
  • 使用 Tailwind CSS 进行样式设计

2. 定制开发

  • 可以根据业务需求修改模板
  • 支持多语言和国际化
  • 响应式设计,适配各种设备

3. 贡献模板

  • 开发者可以贡献自己的模板设计
  • 通过 Pull Request 提交改进
  • 分享最佳实践和设计模式

🚀 使用方法

安装到项目

  1. 使用 Composer
    如果配置了 Composer 仓库,可以通过 Composer 安装

使用 Git 子模块

git submodule add<repository-url> templates 

直接复制

cp -r templates/* resources/views/ 

模板结构说明

布局模板 (components/layouts/)
  • app.blade.php - 前端主布局
  • manager.blade.php - 管理后台布局
  • seo.blade.php - SEO 元数据组件
Livewire 组件模板 (livewire/)
  • 所有 Livewire 组件的视图文件
  • 遵循 Livewire 命名规范
  • 支持组件间的数据传递
组件模板 (components/)
  • widgets/ - 可复用的小部件
  • manager/ - 管理后台专用组件
  • users/ - 用户中心专用组件

🎨 设计规范

样式框架

  • CSS 框架: Tailwind CSS 4.x
  • JavaScript: Alpine.js
  • 响应式: 移动优先设计

命名规范

  • 文件名使用 kebab-case(如:product-detail.blade.php
  • 组件类名使用 PascalCase(如:ProductDetail
  • 变量名使用 camelCase

多语言支持

所有文本内容使用 Laravel 的 __() 函数进行国际化:

{{ __('index.title') }} 

📝 贡献指南

提交模板

  1. Fork 本仓库
  2. 创建功能分支 (git checkout -b feature/amazing-template)
  3. 提交更改 (git commit -m 'Add amazing template')
  4. 推送到分支 (git push origin feature/amazing-template)
  5. 创建 Pull Request

代码规范

  • 遵循 PSR-12 编码规范
  • 使用有意义的变量名
  • 添加必要的注释
  • 确保响应式设计

测试

  • 在不同浏览器中测试
  • 检查移动端适配
  • 验证多语言显示
  • 运行单元测试验证模板正确性(见下方测试部分)

🧪 测试

运行模板测试

项目已包含完整的模板测试套件,可以在开发中或上线前运行测试来验证模板是否正确。

运行所有测试
# 运行所有测试(包括模板测试) php artisan test# 或使用 PHPUnit ./vendor/bin/phpunit 
运行特定测试套件
# 运行功能测试(包含所有模板测试) php artisan test --testsuite=Feature # 运行单元测试 php artisan test --testsuite=Unit 
运行特定模板测试
# 测试首页模板 php artisan test tests/Feature/Livewire/IndexPageTest.php # 测试产品相关模板 php artisan test tests/Feature/Livewire/ProductTest.php php artisan test tests/Feature/Livewire/ProductDetailTest.php # 测试购物车模板 php artisan test tests/Feature/Livewire/CartTest.php # 测试管理后台模板 php artisan test tests/Feature/Livewire/Manager/ # 测试用户中心模板 php artisan test tests/Feature/Livewire/Users/ 
使用测试脚本(推荐)

为了方便运行测试,项目提供了一个交互式测试脚本:

# 运行测试脚本 ./templates/test-templates.sh 

脚本提供以下选项:

  • 运行所有模板测试
  • 运行前端页面模板测试
  • 运行管理后台模板测试
  • 运行用户中心模板测试
  • 运行组件模板测试
  • 运行特定测试文件
  • 运行所有测试(包括非模板测试)
测试覆盖范围

测试套件覆盖了以下模板:

  • 前端页面模板
    • 首页 (IndexPageTest)
    • 产品列表 (ProductTest)
    • 产品详情 (ProductDetailTest)
    • 购物车 (CartTest)
    • 结算页面 (CheckoutTest)
    • 文章列表 (ArticleListTest)
    • 文章详情 (ArticleDetailTest)
    • 搜索页面 (SearchTest)
  • 管理后台模板
    • 仪表盘 (Manager/DashboardTest)
    • 产品管理 (Manager/ProductsTest)
    • 订单管理 (Manager/OrdersTest)
    • 分类管理 (Manager/CategoriesTest)
    • 用户管理 (Manager/UsersTest)
    • 以及其他所有管理后台页面
  • 用户中心模板
    • 订单列表 (Users/OrdersTest)
    • 个人资料 (Users/ProfileTest)
    • 地址管理 (Users/AddressesTest)
    • 登录/注册 (Users/LoginTest, Users/RegisterTest)
  • 组件模板
    • 购物车下拉菜单 (Components/CartDropdownTest)
    • 产品评论 (Components/ProductReviewsTest)
    • 推荐产品 (Components/RecommendProductsTest)
    • 以及其他所有组件
测试验证内容

每个模板测试会验证:

  • ✅ 模板能否正确渲染(assertSuccessful()
  • ✅ 数据是否正确显示(assertSee()
  • ✅ 组件交互是否正常
  • ✅ 权限控制是否正确
  • ✅ 表单验证是否有效
开发流程建议

上线前: 确保所有测试通过

php artisan test --stop-on-failure 

提交前: 运行完整测试套件

php artisan test

开发中: 修改模板后运行相关测试

php artisan test tests/Feature/Livewire/ProductTest.php 

开发前: 运行测试确保基础环境正常

php artisan test
测试配置

测试使用 SQLite 内存数据库,配置在 phpunit.xml 中:

  • 环境:APP_ENV=testing
  • 数据库:SQLite 内存数据库
  • 缓存:数组驱动
  • 队列:同步驱动
编写新模板测试

如果添加了新模板,建议创建对应的测试:

<?phpnamespaceTests\Feature\Livewire;useTests\Feature\LivewireTestCase;classYourTemplateTestextendsLivewireTestCase{publicfunctiontest_your_template_can_be_rendered(){$component=$this->livewire(\App\Livewire\YourComponent::class);$component->assertSuccessful();}publicfunctiontest_your_template_displays_data(){// 创建测试数据$data=$this->createYourData();$component=$this->livewire(\App\Livewire\YourComponent::class);$component->assertSuccessful();$component->assertSee($data->name);}}

🔧 技术栈

  • Laravel: 12.x
  • Livewire: 4.x
  • Tailwind CSS: 4.x
  • Alpine.js: 3.x
  • Blade: Laravel 模板引擎
  • PHPUnit: 测试框架

📄 许可证

本模板仓库采用 GNU Affero General Public License v3.0 (AGPL-3.0) 许可证。

许可证说明

本项目采用 AGPL-3.0 许可证,这意味着:

  • 可以自由使用、修改和分发
  • 可以用于商业项目
  • ⚠️ 必须保留版权声明和许可证
  • ⚠️ 修改后的代码也必须使用 AGPL-3.0 许可证
  • ⚠️ 如果通过网络提供服务,必须公开源代码

完整许可证文本

完整的许可证文本请查看 LICENSE 文件。

许可证要求

使用本模板仓库时,您需要:

  1. 保留版权声明:在所有文件中保留原始版权声明
  2. 提供许可证副本:在项目中包含 LICENSE 文件
  3. 公开修改:如果修改了代码并通过网络提供服务,必须公开源代码
  4. 使用相同许可证:衍生作品必须使用 AGPL-3.0 许可证

更多信息

🤝 支持

如有问题或建议,请通过以下方式联系:

  • 提交 Issue
  • 发送邮件至: [email protected]
  • 访问项目主页: https://github.com/TeanaryService/teanary_srvice

📚 相关资源


注意: 这些模板文件是从 resources/views/ 目录复制而来,保持与主项目同步更新。

Read more

2026 AI元年:AI原生重构低代码,开发行业迎来范式革命

2026 AI元年:AI原生重构低代码,开发行业迎来范式革命

前言         2026 年,被全球科技产业正式定义为AI 规模化落地元年。 从实验室走向生产线、从对话交互走向系统内核、从锦上添花的功能插件走向底层驱动引擎,AI 不再是概念炒作,而是重构软件研发、企业服务、数字化转型的核心生产力。低代码开发平台,作为过去十年企业数字化落地最轻量化、最普及的工具,在 2026 年迎来最彻底的一次变革:AI 全面注入低代码,从 “可视化拖拽” 迈向 “意图驱动生成”。         长期以来,低代码行业始终面临两大争议:一是被技术开发者嘲讽 “只能做玩具系统,无法支撑企业级复杂场景”;二是被业务人员抱怨 “依旧需要懂技术、配规则、调逻辑,门槛依然很高”。而随着大模型技术成熟、国产模型规模化商用、AI 工程化能力落地,这一切正在被改写。         JNPF 作为企业级低代码平台的代表,在 2026 年全面完成 AI 原生架构升级,深度对接 Deepseek、通义千问、

使用 LangChain + Ollama + Neo4j 构建中文知识图谱完整教程(含 Docker 部署)

使用 LangChain + Ollama + Neo4j 构建中文知识图谱完整教程(含 Docker 部署)

在本教程中,我们将从零开始,使用 Ollama 本地大模型(Qwen2.5:7B) + LangChain + Neo4j 图数据库,构建一个完整的中文知识图谱系统。整个流程包括: * 本地部署 Ollama 和 Neo4j(通过 Docker) * 编写自定义 Prompt 提取结构化三元组 * 将结果写入 Neo4j 并可视化 所有组件均运行在本地,无需联网调用 API,适合隐私敏感或离线场景。 🔧 一、环境准备 1. 安装 Docker(如未安装) # Ubuntu / Debiansudoapt update &&sudoaptinstall docker.io -y sudo systemctl start dockersudousermod -aG docker$

Stable-Diffusion-v1-5-archive广告设计实战:电商主图、社交媒体Banner、信息图背景

Stable-Diffusion-v1-5-archive广告设计实战:电商主图、社交媒体Banner、信息图背景 你是不是也遇到过这样的烦恼?做电商,每天要设计几十张商品主图,设计师忙不过来,外包又贵又慢;做社交媒体,每周都要想新的Banner创意,脑子都快被掏空了;做PPT或者信息图,找个合适的背景图都要在素材网站翻半天。 别急,今天我就带你用一个老朋友——Stable Diffusion v1.5 Archive,来解决这些实实在在的设计难题。别看它是个“归档”版本,在创意草图和风格化出图方面,它依然是个宝刀未老的高手。咱们不聊那些复杂的参数和原理,就手把手教你,怎么用它快速搞定电商主图、社交媒体Banner和信息图背景,让你把AI变成你的24小时设计助理。 1. 实战准备:认识你的AI设计伙伴 在开始干活之前,咱们先花两分钟,了解一下这位“老将”的基本情况和使用窍门。这能让你在后面少走很多弯路。 Stable Diffusion v1.5 Archive,你可以把它理解为一个非常稳定、经典的文生图模型。它的特点就是“扎实”

无人机地面站QGC的安装(ubuntu20.04)

无人机地面站QGC的安装(ubuntu20.04) 1.安装依赖 使用以下命令: sudo usermod -a -G dialout $USER sudo apt-get remove modemmanager -y sudo apt install gstreamer1.0-plugins-bad gstreamer1.0-libav gstreamer1.0-gl -y sudo apt install libfuse2 -y sudo apt install libxcb-xinerama0 libxkbcommon-x11-0 libxcb-cursor0 -y 2.下载安装包 可以直接去官网下载,链接地址:https://docs.qgroundcontrol.com/master/en/qgc-user-guide/