redot / laravel-api-scaffold
Laravel API Scaffold
v1.0.0
2024-01-27 10:46 UTC
Requires
- php: ^8.2
- guzzlehttp/guzzle: ^7.2
- laravel/framework: ^10.10
- laravel/sanctum: ^3.3
- laravel/tinker: ^2.8
- spatie/laravel-query-builder: ^5.3
Requires (Dev)
- fakerphp/faker: ^1.9.1
- laravel/breeze: ^1.23
- laravel/pint: ^1.0
- laravel/sail: ^1.18
- mockery/mockery: ^1.4.4
- nunomaduro/collision: ^7.0
- pestphp/pest: ^2.0
- pestphp/pest-plugin-laravel: ^2.0
- phpunit/phpunit: ^10.1
- spatie/laravel-ignition: ^2.0
This package is auto-updated.
Last update: 2024-09-27 12:17:05 UTC
README
欢迎使用 Laravel API Scaffold,这是一个用于在 Laravel 应用程序中建立一致 API 结构的简化解决方案。
安装
首先通过 Composer 安装此软件包
composer create-project --prefer-dist redot/laravel-api-scaffold
好了!现在你可以继续进行。
包含内容
我们的软件包提供了启动 API 开发所需的必要组件
- Laravel Sanctum:启用 API 身份验证。
- Spatie Laravel Query Builder:促进过滤、排序和关系包含。
特性
体验以下针对您方便而量身定制的功能
- 强大的认证系统,支持多个管理员和用户的守卫。
- 集成设置模型,无缝管理应用程序设置。
- 精选实用工具,加速您的开发之旅。
目录结构
我们努力保持 Laravel 的默认目录结构,并进行了一些改进。
路由
作为 API 模板,我们对路由结构进行了调整
dashboard.php:存放仪表板路由,前缀为/dashboard。website.php:包含无任何前缀的公共网站路由。
控制器
控制器被组织到两个不同的目录中
Dashboard:专门用于仪表板相关的控制器。Website:托管与公共网站相关的控制器。
每个目录都有一个 Controller 类,它扩展了 Laravel 的默认 Controller,并增加了额外的功能。
respond 方法
使用 respond 方法轻松处理操作成功响应,支持 PHP 8 中的命名参数。
public function index() { return $this->respond( payload: ['foo' => 'bar'], message: 'This is a message', status: 200 ); }
fail 方法
使用 fail 方法轻松管理操作失败响应。
public function index() { return $this->fail( message: 'This is a message', status: 400, payload: ['foo' => 'bar'] ); }
请求
同样,请求被分类到 Dashboard 和 Website 目录中,以提高清晰度。
实用工具
从我们捆绑的实用工具中受益,这些工具旨在简化您的工作流程。
CanUploadFile 特性
此特性简化了应用程序中的文件上传,提供了如 uploadFile 和 deleteFile 等方法。
FirebaseNotify 特性
使用 notify 方法通过 Firebase 云消息传递简化用户通知。
Setting 模型
Setting 模型是您存储应用程序设置的必备解决方案,可通过 get 方法或 setting 辅助函数访问。
// Access settings using the model Setting::get('foo'); // Or via the helper function setting('foo');
享受自动设置缓存的流畅性能。
借助我们直观的模板轻松拥抱 Laravel API 开发。祝您编码愉快!