把日常开发中的常用功能抽出来做一个starter,避免每次开新项目时耗费的大量重复工作,该repo会长期维护,欢迎大家star。在使用中如有bug或体验问题,请提issue。
- api模块
- dingo😀
- jwt-auth
多表多用户系统隔离
😀jwt-auth
黑名单
- fractal😀
- RSA接口加密(前台用户系统借鉴gadmin,使用RSA加密)
- 封装好的Exception异常类
- 记录每条请求的参数和响应-后置中间件😀
- admin模块
- CORS😀
- RBAC😀
- 后台log-后置中间件😀
- common模块
- 文件上传(七牛云、并记录附件)😀
- 短信发送😀
- redis常用操作
RedisService
、redis锁RedisLock
😀 - 敏感词功能😀
- 常用辅助函数库😀
- 其他
- laravel分模块的最佳实践😀
- MRSC模型(已留出文件夹,具体业务相关不写)😀
- swagger(php的swagger不好用,不写)😀
- 支持切换dev、test、prod环境配置😀
- 支持项目初始化
- 数据库迁移工具
- laravel错误日志的最佳实践
- 代码质量
- php-cs-fixer😀
php-cs-fixer fix $PWD --config=cs.php
- 静态检测工具😀:基于phpstan实现的larastan
./vendor/bin/phpstan analyse
- php-cs-fixer😀
- 常用功能
- 第三方登录(微信登录、qq登录)
- 第三方支付(微信支付、支付宝)
- url转二维码
- 图片验证码
- clone项目。
gcl git@github.com:x1a0xv4n/laravel-starter.git
- 切换分支。切换分支到对应laravel版本,master分支默认为laravel最新版本
git checkout -b origin/target-version-branch
- 配置文件。开发环境下,请复制
.env.prod
为.env.dev
,并填写基本配置如数据库、redis、dingo等,如有问题,请发issue。 - sql文件。执行根目录下的
laravel_starter.sql
。
暂时没空,过两天再写
- 优化文件上传功能😀
- api模块接口的RSA加密-后置中间件😀
- docker-compose部署
- 手动部署也可以直接使用命令初始化项目,提高用户体验
- 优化防止重放攻击的中间件😀
- 删掉没用的代码,从框架加载角度,优化一下laravel
- 把middleware、config、Exception都按照模块拆开
- 压缩图片😀
- 链路追踪: 使用zipkin作为laravel的链路追踪方案