基于 Laravel 开源项目 Monica 构建个人关系管理(CRM)应用


项目简介

Monica 是一个基于 Laravel 开发的、开源的个人 CRM(Customer Relationship Management,客户关系管理)系统,因此可以称之为 RPM(Personal Relationship Management)系统,你可以通过它来轻松管理与家人、朋友的关系及所有活动,还可以通过它来记录每天的心情和日记。

该项目适用于那些很难记住与其他人生活细节的人,尤其是你关注和在乎的人。下面学院君将基于 MacOS + Homestead 开发环境演示如何在本地安装并使用 Monica。

环境准备

开始之前,确保服务器具备以下条件:

  • Git
  • PHP 7.3
  • Composer
  • MySQL
  • Redis(可选)

当然,使用 Homestead 的话以上条件已经具备了,不过本地宿主机上也需要 Git、Composer、PHP 这些软件以便进行项目初始化。

接下来,我们首先通过 Git 命令克隆 Github 项目代码到本地:

git clone https://github.com/monicahq/monica.git

默认下载的是 master 分支,但它不一定是稳定的发行版本,你可以进入项目根目录手动切换到最新的发行版本:

cd monica
git checkout tags/v2.15.1

然后我们通过如下命令生成环境配置文件 .env

cp .env.dev .env

修改环境配置 APP_URL

APP_URL=http://monica.test

通过 Composer 安装 PHP 依赖:

composer install

再通过如下 Artisan 命令生成应用密钥 APP_KEY

php artisan key:generate

.env 文件中修改数据库配置如下:

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=monica
DB_USERNAME=homestead
DB_PASSWORD=secret

接下来,修改 Homestead 全局配置文件 Homestead.yaml

folders:
    ... // 其它目录映射
    - map: ~/Devlopment/php/laravel/monica
      to: /home/vagrant/monica

sites:
    ... // 其它站点配置
    - map: monica.test
      to: /home/vagrant/monica/public
      php: "7.3"   // 指定 PHP 版本
      schedule: true  // 运行调度任务

databases:
    ... // 其它数据库
    - monica

在本地 /etc/hosts 中新增域名映射:

192.168.10.10 monica.test

至此,项目初始化以及与 Homestead 的映射已经都配置好了,重启虚拟机让配置生效:

vagrant reload --provision

运行 homestead ssh 登录到虚拟机,进入项目根目录执行如下命令初始化应用,包括数据库初始化和软链接创建:

php artisan setup:production -v

现在,你可以通过 http://monica.test 访问应用了。

使用入门

默认需要登录才能访问应用,我们可以通过测试账号 admin@admin.com/admin 登录:

登录成功后,跳转到应用首页仪表盘界面:

点击右上角小齿轮图标,进入设置页面进行一些本地化设置,比如语言设置为简体中文、货币设置为人民币、温度设置为摄氏度、时区设置为东八区北京时间等,保存更改后界面就变成中文了:

接下来,咱们可以「添加第一个联系人」:

你还可以通过 vCard 导入联系人数据:

添加完成后,就可以进入联系人详情页设置更多详细信息,比如头像、关系、对话、提醒、活动、往来、文档等:

在「联系人」列表里可以查看所有联系人:

首页「仪表盘」也会通过新增的联系人信息进行渲染:

此外,还可以通过「日记」功能写日记:

你可以通过左边的输入框快速记录每日心情:

也可以通过右侧的「添加日记条目」按钮进行更加详细的日记内容编写:

注:内容输入框支持 Markdown 语法。

保存之后跳转到日记列表,渲染结果如下:

以上就是 Monica 的主体功能,更多细节等待你自己去探索。


点赞 取消点赞 收藏 取消收藏

<< 上一篇: 基于 Laravel 构建的免费、开源 CRM 平台 —— Flarepoint

>> 下一篇: 基于 Laravel 构建的适用于小公司和自由职业者的免费在线财务会计系统 —— Akaunting