Skip to content

AY2526S1-CS2103T-T08-1/tp

 
 

Repository files navigation

CI Status codecov

Insight

See your client, understand your business

Ui

InSight is a client relationship management (CRM) desktop app built for small photography/videography businesses. It helps creatives keep track of clients, bookings, and trends — all in one simple, lightweight tool.

Unlike large enterprise CRMs that are expensive and bloated, or simple address books that lack business context, InSight is tailored for creative professionals who want to:

  • Manage contacts and booking history

  • Track loyalty and client preferences

  • Monitor trends and influencers

  • Improve service delivery with context-aware communication

📖 Table of Contents

  • About the Project
  • Key Features
  • User Stories
  • Getting Started
  • Acknowledgements

📸 About the Project

This project was developed as part of the CS2103T Software Engineering module at NUS. InSight builds on the foundations of the se-edu AddressBook project, reimagined for creative freelancers and small businesses who struggle with client information scattered across email, WhatsApp, and spreadsheets.

InSight is written in Java, following Object-Oriented Programming (OOP) principles, and comes with automated testing, CI/CD pipelines, and developer documentation.

🔑 Key Features

  • Add Client – Store client details (name, phone, email, social handles).
  • List Clients – View all stored clients with summary details.
  • Edit Client – Update client details anytime.
  • Delete Client – Remove a client and their records.
  • Search Clients – Find clients by name, email, or social handle.
  • Add Booking – Record bookings with date, package, notes, and tags.
  • View & Edit Bookings – Manage past and upcoming bookings.
  • Tag Bookings – Organize by theme, package, or trend.
  • Track Loyalty – See client frequency and history at a glance.
  • Trend & Influencer Monitoring (Planned) – Keep shoots aligned with current market inspiration.
  • The project simulates an ongoing software project for a desktop application (called AddressBook) used for managing contact details.

🧑‍🤝‍🧑 User Stories

  • As a photographer, I want to store all my client details in one place, so I don’t have to search across WhatsApp and email.
  • As a videographer, I want to view a client’s past bookings and preferences, so I can personalize their next shoot.
  • As a small business owner, I want to tag bookings by theme, so I can spot trends in demand.
  • As a creative professional, I want to track client loyalty, so I know who my repeat customers are.

🚀 Getting Started

  1. Ensure you have Java 11 or above installed.
  2. Download the latest release of InSight from the Releases page.
  3. Run the .jar file: java -jar InSight.jar
  4. Start adding your clients and bookings!

🙏 Acknowledgements

Packages

No packages published

Languages

  • Java 98.5%
  • CSS 1.5%