Skip to content

SolomonChrist/MarFebCRM

Repository files navigation

MarFebCRM - Personal Relationship Manager

A fast, privacy-first personal CRM for managing contacts, interactions, notes, and follow-ups. 100% local, no backend required.

Build Status License React

✨ Features

Contact Management

  • πŸ“‡ Full CRUD - Create, view, edit, delete contacts with ease
  • 🏷️ Unlimited Tags - Organize with tags like "Friends", "Business", "Family"
  • ⭐ Favorites - Quick access to important contacts
  • πŸ“¦ Archive - Safely archive without deleting
  • πŸ” Search & Filter - Find contacts by name or tags instantly
  • πŸ“Š HQ Score - Track relationship strength (0-10 scale)

Activity & Timeline

  • πŸ“ Notes - Add timestamped notes to contacts
  • βœ… Next Steps - Create actionable follow-up items with completion tracking
  • πŸ“‹ Activity Timeline - Combined view of all interactions
  • ⚑ Quick Entry - Fast note-taking while reviewing contacts

Quick Paste (MVP Feature)

  • 🎯 Floating Button - Access from any page (always accessible)
  • πŸ“‹ Smart Parsing - Extract contacts from pasted text
  • πŸ“ž Auto-Extract - Intelligently identifies phone, email, company
  • πŸ—‚οΈ Source Tracking - Remember where you met them (meeting type)

Data Management

  • πŸ’Ύ Persistent Storage - All data saved locally in browser
  • πŸ’Ώ Export/Import - Full backup and restore capabilities
  • πŸ”„ Smart Merge - Import adds/updates without deleting existing data
  • πŸ”’ No Cloud Dependency - Your data, your device, your rules

User Experience

  • πŸŒ™ Dark/Light Mode - Theme toggle
  • πŸ“± Responsive Design - Works on mobile and desktop
  • ⚑ Fast & Smooth - Instant interactions, no waiting
  • πŸ”” Toast Notifications - Feedback on every action

πŸš€ Quick Start

Prerequisites

  • Node.js 18+ and npm
  • No database, no server, no API keys required

Installation

# Clone the repository
git clone https://github.com/yourusername/MarFebCRM.git
cd MarFebCRM

# Install dependencies
npm install

# Start development server
npm run dev

Open http://localhost:5173 in your browser.

First Time Setup

  1. Login - Create credentials (stored locally, encrypted)
  2. Dashboard - See overview and quick stats
  3. Add Contacts - Use "Quick Paste" to add contacts from notes
  4. Organize - Create tags and assign to contacts
  5. Backup - Export your data regularly

πŸ“¦ Build & Deploy

Production Build

npm run build

Output in dist/ directory (~135 KB gzipped)

Deploy Anywhere

  • Vercel (recommended) - vercel
  • Netlify - netlify deploy --prod --dir=dist
  • GitHub Pages - Configure in repo settings
  • AWS S3 + CloudFront - S3 bucket + distribution
  • Any static host - Just serve the dist folder

See DEPLOYMENT.md for detailed instructions.

πŸ—οΈ Tech Stack

Layer Technology
Framework React 19 + TypeScript
Build Vite 5
Styling Tailwind CSS
State Zustand
Storage localStorage (browser native)
Icons Lucide React
Router React Router v7

πŸ“‚ Project Structure

src/
β”œβ”€β”€ pages/           # Route components
β”‚   β”œβ”€β”€ Dashboard.tsx
β”‚   β”œβ”€β”€ Contacts.tsx
β”‚   β”œβ”€β”€ ContactDetail.tsx
β”‚   β”œβ”€β”€ Groups.tsx
β”‚   └── ...
β”œβ”€β”€ components/      # Reusable UI
β”‚   β”œβ”€β”€ FloatingPasteButton.tsx
β”‚   β”œβ”€β”€ paste/
β”‚   β”œβ”€β”€ layout/
β”‚   └── ui/
β”œβ”€β”€ services/        # Business logic
β”‚   β”œβ”€β”€ contacts/
β”‚   β”œβ”€β”€ storage/
β”‚   β”œβ”€β”€ parser/
β”‚   └── ...
β”œβ”€β”€ store/           # Zustand stores
β”‚   β”œβ”€β”€ useContactStore.ts
β”‚   β”œβ”€β”€ useAuthStore.ts
β”‚   └── ...
β”œβ”€β”€ App.tsx
β”œβ”€β”€ main.tsx
└── index.css

πŸ” Security & Privacy

βœ… No Backend - No server to breach βœ… Local First - All data stays on your device βœ… No Tracking - Zero telemetry or analytics βœ… No Cloud - Optional export only, your choice βœ… Open Source - Transparent, auditable code

🌐 Browser Support

Browser Version Status
Chrome 90+ βœ… Full support
Firefox 88+ βœ… Full support
Safari 15+ βœ… Full support
Edge 90+ βœ… Full support

πŸ“Š Performance

  • Bundle Size: 428 KB (130 KB gzipped)
  • Startup Time: <1s on modern browsers
  • Data Storage: 5-10 MB localStorage limit (easily store 1000+ contacts)
  • No External API calls - Blazing fast, works offline

🀝 Contributing

Contributions are welcome! See CONTRIBUTING.md for:

  • Development setup
  • Code style guide
  • PR process
  • Testing requirements

πŸ“ Roadmap

Phase 1: MVP βœ…

  • Contact CRUD
  • Tags & groups system
  • Notes & activity timeline
  • Quick paste feature
  • Export/import data
  • Dark mode
  • Dashboard with stats

Phase 2: Enhancement

  • Reminders & notifications
  • Contact relationships (linked contacts)
  • Advanced search
  • Bulk operations
  • Email integration

Phase 3: Sync (Optional)

  • Cloud backup (encrypted)
  • Multi-device sync
  • Collaborative features
  • Mobile app

πŸ“„ License

MIT License - See LICENSE file

πŸ› Troubleshooting

Data not saving?

  • Check if localStorage is enabled in browser
  • Try a different browser or private window
  • Check browser storage quota

Import removed my data?

  • This shouldn't happen! Import merges data
  • Check if you imported from an older backup
  • Export current data before importing

Need help?

πŸ“ž Support


Built with ❀️ for personal relationship management

Status: Production Ready | Last Updated: March 2026

About

This is a special CRM style system I built which focuses on simplicity and how I usually work, which is copying and pasting notes and having it extract the data and put it into a CRM and people manager for me. The data is JSON so easy to export and manipulate with tools like n8n. This is for those looking to have a SIMPLE tool.

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages