Independent Full-Stack Application
AI Suggestions Without Automatic Database Changes
A privately developed CRM manages relational business data and explores how language models can help prepare information for entry.
The application turns generated suggestions into proposals that a user can review before authorising any database change.
The application
The CRM manages contacts, organisations, opportunities, tasks, notes and related activity. It includes relational schemas, backend functionality, validation, authentication and import and export operations.
The AI workflow
- Information Input
- AI-Assisted Extraction
- Structured Proposed Changes
- Validation & Duplicate Checks
- User Review
- Explicit Approval
- Database Operation
- Audit Record
The engineering decision
The application converts generated suggestions into editable proposed operations. It validates the proposals and checks for duplicates before the user explicitly approves execution. An audit record captures the resulting operation.
The technical work
- Built the application with Next.js and TypeScript.
- Modelled relational data in PostgreSQL with Drizzle ORM.
- Used Zod and server-side validation.
- Implemented authentication and session management.
- Integrated hosted and local AI providers.
- Implemented duplicate checks, approval-controlled database changes and audit logging.
- Built import and export functionality.
What this project demonstrates
Independent full-stack development and the integration of AI-assisted features within validation and approval controls defined by the application.
Project disclosure
This is a private application. A public demo and source repository are unavailable.