把日常开发中的罕用性能抽出来做一个starter,防止每次开新我的项目时消耗的大量反复工作,该repo会长期保护,欢送大家star。在应用中如有bug或体验问题,请提issue。
x1a0xv4n/laravel-starter: ???? Your next laravel-api-starter in 30 seconds
基本功能
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环境配置????
反对我的项目初始化
- 数据库迁徙工具(自身jwt须要的user表,也须要迁徙工具)
- 更新goutils等引入拓展包的版本
- 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
。
docker-compose部署
临时没空,过两天再写