把日常开发中的罕用性能抽出来做一个starter,防止每次开新我的项目时消耗的大量反复工作,该repo会长期保护,欢送大家star。在应用中如有bug或体验问题,请提issue。

x1a0xv4n/laravel-starter: ???? Your next laravel-api-starter in 30 seconds

基本功能

  1. api模块

    1. dingo????
    2. jwt-auth

      1. 多表多用户零碎隔离????
      2. jwt-auth黑名单
    3. fractal????
    4. RSA接口加密(前台用户零碎借鉴gadmin,应用RSA加密)
    5. 封装好的Exception异样类
    6. 记录每条申请的参数和响应-后置中间件
  2. admin模块

    1. CORS????
    2. RBAC????
    3. 后盾log-后置中间件????
  3. common模块

    1. 文件上传(七牛云、并记录附件)????
    2. 短信发送????
    3. redis罕用操作RedisService、redis锁RedisLock????
    4. 敏感词性能????
    5. 罕用辅助函数库????
  4. 其余

    1. laravel分模块的最佳实际????
    2. MRSC模型(已留出文件夹,具体业务相干不写)????
    3. swagger(php的swagger不好用,不写)????
    4. 反对切换dev、test、prod环境配置????
    5. 反对我的项目初始化

      1. 数据库迁徙工具(自身jwt须要的user表,也须要迁徙工具)
      2. 更新goutils等引入拓展包的版本
    6. laravel谬误日志的最佳实际
  5. 代码品质

    1. php-cs-fixerphp-cs-fixer fix $PWD --config=cs.php
    2. 动态检测工具:基于phpstan实现的larastan./vendor/bin/phpstan analyse
  6. 罕用性能

    1. 第三方登录(微信登录、qq登录)
    2. 第三方领取(微信领取、支付宝)
    3. url转二维码
    4. 图片验证码

部署

手动部署

  1. clone我的项目gcl git@github.com:x1a0xv4n/laravel-starter.git
  2. 切换分支。切换分支到对应laravel版本,master分支默认为laravel最新版本git checkout -b origin/target-version-branch
  3. 配置文件。开发环境下,请复制.env.prod.env.dev,并填写根本配置如数据库、redis、dingo等,如有问题,请发issue。
  4. sql文件。执行根目录下的laravel_starter.sql

docker-compose部署

临时没空,过两天再写