Project Overview
Objective
Built a full-stack CRM back office with an advisory-only AI Copilot and human-approved LINE OA messaging, covering authenticated CRM operations end to end.
Stack
NestJSPrismaPostgreSQLNext.jsReactAnt DesignTanStack QueryJWTZodHelmetbcryptjsLINE Messaging APIResendGitHub Actions
Delivery highlights
- Developed a two-application CRM system (NestJS API + Next.js back office) covering lead, company, contact, and activity management with a full authentication flow (login, session/refresh cookies, forgot/reset password, invitation, change password) and login lockout after repeated failed attempts. Implemented layered authorization with a role-based guard plus a separate ownership check for CRM records, and an audit log for sensitive actions. Built an advisory-only AI Copilot that generates suggested next actions per lead, requiring explicit human accept/reject decisions rather than acting autonomously. Integrated LINE OA messaging for inbound webhook events (follow/unfollow, incoming messages, verified via raw-body signature check) and outbound messages that require human approval before sending, plus transactional email delivery through Resend. CI runs typecheck, lint, unit and e2e tests, and build on every push.
Link DemoBack to Topic ProjectsBack to All ProjectsSystem workflow
How the CRM, AI Copilot, and LINE messaging work together
A sales user works a lead through session-authenticated CRM operations, reviews an AI-generated suggestion before acting on it, and any outbound LINE message still needs explicit human approval.Rendering workflow diagram…
Scroll horizontally to explore the full workflow on smaller screens.
System workflow
CRM system architecture
Two-tier application stack with Next.js front office and NestJS backend, connected to PostgreSQL data layer and external integrations.Rendering workflow diagram…
Scroll horizontally to explore the full workflow on smaller screens.
System workflow
Human-in-the-loop AI decision flow
AI generates advisory suggestions which sales users review, accept/reject, and approve before any action (LINE message, email, activity log).Rendering workflow diagram…
Scroll horizontally to explore the full workflow on smaller screens.
System workflow
LINE messaging integration
Bidirectional webhook-based communication with manual approval gate on outbound messages for audit and compliance.Rendering workflow diagram…
Scroll horizontally to explore the full workflow on smaller screens.
System workflow
Source-reviewed processing sequence
A conservative end-to-end boundary taken from the source audit. Specific endpoints, storage writes, and external calls are only claimed in the project-specific diagrams when the implementation confirms them.Rendering workflow diagram…
Scroll horizontally to explore the full workflow on smaller screens.