FastContacts is a simple command-line contact management system implemented in C++. It provides basic functionalities like adding contacts, searching for contacts, and saving the contacts to a JSON file. This project is designed to showcase fundamental concepts of C++ programming, including object-oriented design, data structures (trie), file I/O, and usage of third-party libraries (JsonCpp).
FastContacts aims to serve as a practical example for C++ learners and developers looking to understand and implement a basic command-line application. It demonstrates concepts such as class design, data storage using a trie data structure, and JSON file manipulation. This project can be used as a foundation for building more complex contact management systems or as a learning resource for C++ programming.
-
Object-Oriented Design: The project employs object-oriented principles to model entities like contacts and the contact manager.
-
Trie Data Structure: The trie data structure is used for efficient storage and retrieval of contacts based on their names.
-
File I/O: Contacts are saved and loaded from a JSON file using the JsonCpp library, demonstrating basic file input/output operations.
-
Exception Handling: The code includes error handling mechanisms, such as checking file open status and handling exceptions appropriately.
To run FastContacts, follow these steps:
- Clone the repository:
git clone https://github.com/Sourabh-Kumar7/FastContacts.git cd FastContacts
- Build the project:
mkdir build cd build cmake .. make//github.com/Sourabh-Kumar7/FastContacts.git cd FastContacts
- Run FastContacts:
./FastContacts
Contributions to FastContacts are welcome! If you find any issues or have suggestions for improvements, please:
- Fork the repository.
- Create a new branch for your changes.
- Make your modifications.
- Submit a pull request.
If you find FastContacts helpful or interesting, consider giving it a star! Your support is appreciated and encourages further development.
Thank you for exploring FastContacts!