Laika开发者个人助手(NestJS+React)

开发者的日常里,自动回复、快速测试想法、搭个聊天机器人这些需求其实挺常见的。Laika就是个挺有意思的小工具,用NestJSReact写的开源个人助手,技能系统做得挺灵活。想加点功能?加个@MessageHandler装饰器就能教它新话术,思路清晰还不绕。

项目结构分得蛮清楚的:前端是React,后端用NestJS,数据库走MongoDB。用Docker Compose一键跑起来,环境自动拉齐,懒人福音。如果你不想用 Docker,手动起也挺方便的,前后端跑两个终端,MongoDB 自己搞定。

上手方式也直白:

git clone https://github.com/flplima/laika
cd laika
yarn install
docker-compose up

浏览器打开主页,输入“Hello”,Laika 就能给你回话了。你可以试试这些:

  • 你是谁?
  • 你好吗?
  • 给我说个笑话
  • 我无聊

哦对了,如果你想进一步拓展技能逻辑,可以顺手看看这几个项目:

如果你平时有写点自动化脚本的习惯、或者打算搞个 bot,Laika 这个项目还蛮值得玩一玩。尤其适合用来练练NestJS 装饰器用法和React项目结构划分。

zip
laika-master.zip 预估大小:78个文件
folder
laika-master 文件夹
file
.gitignore 32B
file
package.json 321B
folder
server 文件夹
file
.gitignore 391B
file
Dockerfile 112B
file
.env.example 35B
file
package.json 2KB
folder
src 文件夹
file
app.module.ts 617B
folder
core 文件夹
file
decorators.ts 2KB
file
index.ts 218B
folder
messages 文件夹
file
message.schema.ts 380B
file
messages.service.ts 535B
file
messages.gateway.ts 1KB
folder
nlp 文件夹
file
nlp.service.ts 2KB
file
nlp.types.ts 913B
file
core.module.ts 1KB
file
core.service.ts 4KB
file
constants.ts 323B
file
main.ts 172B
folder
skills 文件夹
folder
jokes 文件夹
file
jokes.service.ts 525B
file
jokes.module.ts 197B
folder
basic-dialogs 文件夹
file
basic-dialogs.service.ts 1KB
file
basic-dialogs.module.ts 189B
folder
notes 文件夹
file
notes.service.ts 2KB
file
note.schema.ts 329B
file
notes.module.ts 354B
folder
bored 文件夹
file
bored.module.ts 197B
file
bored.service.ts 424B
file
skills.module.ts 408B
file
.dockerignore 39B
file
tsconfig.json 336B
file
.eslintrc.js 599B
file
README.md 3KB
file
tsconfig.build.json 97B
file
.prettierrc 51B
file
yarn.lock 335KB
file
nest-cli.json 64B
file
README.pt-BR.md 4KB
file
CODE_OF_CONDUCT.md 3KB
file
LICENSE 1KB
file
tsconfig.json 3B
file
docker-compose.yml 563B
folder
.github 文件夹
folder
ISSUE_TEMPLATE 文件夹
file
bug_report.md 1KB
file
enhancement-request.md 829B
file
documentation-report.md 528B
file
CONTRIBUTING.md 9KB
file
PULL_REQUEST_TEMPLATE 647B
file
README.md 4KB
folder
docs 文件夹
file
add-new-skills.pt-BR.md 4KB
file
how-it-works.pt-BR.md 2KB
file
add-new-skills.md 4KB
file
how-it-works.md 2KB
folder
client-web 文件夹
file
.gitignore 310B
file
Dockerfile 108B
file
package.json 1KB
folder
src 文件夹
folder
components 文件夹
folder
ChatHistory 文件夹
file
styles.ts 769B
file
index.tsx 508B
folder
InputMessage 文件夹
file
styles.ts 952B
file
index.tsx 1KB
folder
Container 文件夹
file
styles.ts 289B
file
index.tsx 195B
file
react-app-env.d.ts 40B
folder
services 文件夹
file
socket.ts 104B
file
styles.ts 361B
folder
contexts 文件夹
file
ChatContext.tsx 894B
file
index.tsx 481B
file
types.ts 95B
file
serviceWorker.ts 5KB
file
App.tsx 496B
file
.dockerignore 40B
folder
public 文件夹
file
send.svg 807B
file
robots.txt 67B
file
index.html 2KB
file
favicon.ico 3KB
file
manifest.json 284B
file
tsconfig.json 491B
file
README.md 2KB
file
yarn.lock 476KB
file
yarn.lock 616KB
...
zip 文件大小:598.32KB