🧠 I built this ChatApp as my first full Java project, completed between March and June 2025. It took me approximately 40 hours of learning, building, debugging, and perfecting it — and proudly earned a distinction for my final grade.
ChatApp is a desktop Java application that simulates message sending, storing, and searching in a graphical user interface. It helped me master Java fundamentals like classes, methods, arrays, and file I/O — while also exploring GUI development and practical app design.
Built entirely using Java Swing and FlatLaf, it stores messages locally in a structured JSON-like file, mimicking how real-world messaging systems manage data.
- ✅ Send messages with automatic ID and hash
- 📦 Store messages for later
- 🔎 Search by Message ID or recipient name
- 📄 View summaries of sent and stored messages
- 🧹 Delete messages using message hash
- 💾 All messages are saved to messages.json
- 🎨 GUI styled with FlatLaf for modern look
- 🔐 Basic input validation for phone numbers & content
- Java (JDK 17)
- Apache NetBeans IDE 2025
- Swing (GUI components)
- FlatLaf (modern theme)
- File I/O with JSON-style string construction
- Git & GitHub for version control
- Core Java (objects, arrays, loops, conditions)
- File reading/writing using java.io
- How to serialize and deserialize data manually
- GUI design using JFrame, JPanel, JTextArea, etc.
- Event handling & user interaction flows
- Testing and debugging logic-based systems
- How to structure a full app from scratch
👤 Nomathemba Ncube
🎓 Computer Science first year student - Programming Module
💻 This is my first Java project, and I’m proud of it.
📝 Final grade was a distinction!