Personal CRM

A simple personal Customer Relationship Management (CRM) system built on Val Town.

Features

  • Store and manage contacts
  • Track interactions with contacts (calls, emails, meetings)
  • Search and filter contacts
  • Add notes and reminders

Project Structure

├── backend/
│   ├── database/
│   │   ├── migrations.ts    # Schema definitions
│   │   └── queries.ts       # DB query functions
│   ├── routes/              # Route modules
│   │   └── api.ts           # API endpoints
│   └── index.ts             # Main entry point
├── frontend/
│   ├── components/
│   │   ├── App.tsx          # Main application component
│   │   ├── ContactList.tsx  # List of contacts
│   │   ├── ContactDetail.tsx # Contact details view
│   │   ├── ContactForm.tsx  # Add/edit contact form
│   │   └── InteractionForm.tsx # Add interaction form
│   ├── index.html           # Main HTML template
│   └── index.tsx            # Frontend JS entry point
└── shared/
    └── types.ts             # Shared types and interfaces

How to Use

  1. Visit the HTTP endpoint to access the CRM interface
  2. Add contacts with their details
  3. Record interactions with your contacts
  4. Search and filter to find specific contacts

Technologies Used

  • Backend: Hono, SQLite
  • Frontend: React, Tailwind CSS
  • Shared: TypeScript