kaiyum2012/chatter-laravel-core

为您的Laravel应用程序提供的简单论坛包

6.1.1 2021-06-04 14:38 UTC

README

Build status Maintained repository MIT License

Chatter - Laravel论坛包

这是一个Vue + Tailwind CSS + Laravel论坛包。Chatter是一个单页面应用,可以轻松地在Laravel应用程序上创建论坛。

查看YouTube演示

本包受到thedevdojo/chatter包的启发

安装

如果您打算在一个现有的项目中安装Chatter,请检查ChatterPreset类,并查看您需要运行哪些安装步骤,这完全取决于您已有的内容。

  1. 安装Laravel 7,如果您在现有项目中安装Chatter,请跳过此步骤。

  2. 将包包含到您的项目中,并发布包视图、配置等

    $ composer require "chatter-laravel/core:^6"
    $ php artisan vendor:publish --provider "Chatter\\Core\\ChatterServiceProvider"
    $ composer dump-autoload
  3. 运行安装命令并按照说明操作

    $ php artisan chatter:install

    如果您在现有项目中安装Chatter,在调用安装命令时包含--plugin选项

    $ php artisan chatter:install --plugin

    安装命令将处理安装论坛所需的所有内容:迁移、js组件、tailwind、composer包、node包等。

  4. 将CanDiscuss和HasApiTokens特质添加到您的User模型中。如果您已经在项目中安装了Laravel Passport,您可能已经在User模型中有了HasApiTokens特质

    <?php
    
    namespace App;
    
    use Chatter\Core\Traits\CanDiscuss;
    use Laravel\Passport\HasApiTokens;
    use Illuminate\Notifications\Notifiable;
    use Illuminate\Foundation\Auth\User as Authenticatable;
    
    class User extends Authenticatable
    {
        use HasApiTokens, Notifiable, CanDiscuss;
  5. Chatter安装命令已经安装了Laravel Passport,但您需要将CreateFreshApiToken中间件添加到app/Http/Kernel.php文件中的web中间件组

    'web' => [
        // Other middleware...
        \Laravel\Passport\Http\Middleware\CreateFreshApiToken::class,
    ],

如果您在一个新的Laravel安装上安装Chatter,请直接跳到步骤9

  1. 确保您已在项目中安装了Tailwind CSS。Tailwind CSS安装

  2. 将Chatter JS应用包含到您的resources/js/app.js

    require('./chatter/app')
  3. 填充您的论坛类别。您可以为项目创建一个新的种子。

  4. 运行Laravel服务器

    $ php artisan serve
  5. 现在,访问https://:8000/forums,您应该能在眼前看到您的新论坛!

测试

有一些工厂会在数据库中生成一些测试信息。只需运行种子来执行这些工厂

$ php artisan db:seed --class ChatterTableSeeder

路线图

  • 检查与Laravel 6的兼容性
  • 对帖子做出反应
  • 为这个仓库星标
  • 固定讨论
  • 管理/ moderation面板(封禁用户,删除帖子)
  • 报告讨论
  • 编辑帖子与讨论(带版本控制)
  • 用户个人资料
  • 用户奖励
  • 在讨论和帖子中标记其他用户
  • 创建测试
  • 使用本地化(翻译)

已知问题

如果您在Chatter安装过程中遇到问题,请参阅已知问题。如果您无法解决问题,请提交一个新的工单。

定制

配置

当您发布供应商资产时,您在config文件夹中添加了一个新文件,称为config/chatter.php。此文件包含了一组可用于配置论坛的配置项。

Vue组件

Chatter使用的所有视图组件都通过预设安装发布到您的项目中。您可以在这些组件上对项目进行所有必要的更改。

屏幕截图

Laravel chatter forum demo
Laravel chatter forum
Laravel chatter forum
Laravel chatter forum
Laravel chatter forum