学记助理,一款基于统一语义结合智能助理(小五)对话式交互的智能文档,主要用于辅助高效学习与知识管理,目的在于探索一种新的知识载体与交互方式,通过开放社区、人机协作的方式,化繁为简降低信息熵,协同积累知识财富!
- React - A declarative, efficient, and flexible JavaScript library for building user interfaces.
- Next.js - The React Framework
- Material UI - React components for faster and easier web development. Build your own design system, or start with Material Design.
- Typescript - A superset of JavaScript that compiles to clean JavaScript output.
- Redux - Predictable state container for JavaScript apps
- Redux-saga - An alternative side effect model for Redux apps
- GraphQL - GraphQL is an open spec for a flexible API layer.
- JSS - JSS is an authoring tool for CSS which uses JavaScript as a host language.
- Three.js - JavaScript 3D library.
- Konva.js - HTML5 2d canvas js library for desktop and mobile applications
- Recharts - A composable charting library built on React components
- Prettier - Prettier is an opinionated code formatter.
- Eslint - Find and fix problems in your JavaScript code.
- PM2 - Node.js Production Process Manager with a built-in Load Balancer.
- Websocket
-
目录使用小写字母
-
组件文件使用大写字母
-
页面文件使用小写字母
-
组件分类:
- 页面组件 /pages,页面初始化、路由入口
- 容器组件 src/containers,为组件注入状态
- 通用组件 src/components/common
- 高阶组件 src/components/hoc
- 模块组件 src/module
# 配置变量
$ cp .env.example .env
# 安装依赖
$ cnpm i
# 开发模式
$ cnpm run dev
pm2 Node.js Production Process Manager
# install pm2
$ npm install --global pm2
$ pm2 start
- Client: nextjs Typescript material-ui redux threejs
- Deployment: nginx pm2 nodejs
- Test: unit tests
- Test: e2e tests
- Api: OpenAPI websocket GraphQL
- Server: integration oat++
- Feature: authentication