{
  "id": 8630416,
  "title": "Building a Persistent Smart Contact Book CLI App Using Pure Python",
  "url": "https://urgent.news/2026/09/20/building-a-persistent-smart-contact-book-cli-app-using-pure-python",
  "topic": "tech",
  "section": "Tech",
  "published": "2026-09-20T06:25:16.000Z",
  "source": {
    "name": "Dev.to",
    "slug": "dev-to",
    "url": "https://dev.to/nivedya2008/building-a-persistent-smart-contact-book-cli-app-using-pure-python-3n86"
  },
  "original_language": "en",
  "account": "In a recent project aimed at aspiring web developers, a second-year BCA student demonstrates their growth in technical skills with a fully-featured Smart Contact Book CLI application. This command-line interface (CLI) tool distinguishes itself from simpler scripts by offering robust local data persistence and efficient input validation.\n\nThe cornerstone of this project is the contacts.json file, where all contact information is securely stored. This approach ensures that the application never loses data, even when it is closed. The application employs rigorous input validation, guaranteeing that phone numbers adhere to a 10-digit format and email addresses follow the standard @ and . structure.\n\nThe tool provides full CRUD (Create, Read, Update, Delete) operations, allowing users to easily manage their contact list through a continuous interactive menu. This feature set showcases the application's versatility and practical utility.\n\nTo ensure reliability, the application incorporates try-except blocks. These blocks gracefully handle scenarios such as empty inputs or missing files, preventing the system from crashing due to unforeseen errors.\n\nThrough this project, the student gained valuable experience in several key backend concepts. They learned how to perform file input/output (I/O) and JSON parsing using Python's built-in json module. Additionally, they developed their skills in defensive programming by anticipating and handling bad user inputs before they could cause system crashes. The project also provided hands-on experience with Git workflow management, enabling efficient staging, committing, and repository file management within Visual Studio Code.\n\nThe student has generously shared their complete codebase on GitHub, inviting feedback and discussion. They are currently contemplating future enhancements, such as the addition of an edit/update feature or the migration of data handling to a SQLite database. The student eagerly awaits input from their community to further refine and improve their application.",
  "summary": "Hello DEV Community! As a 2nd-year BCA student aspiring to become a Web / Developer Advocate , I believe that mastering data structures, error handling, and file persistence is crucial. Today, I am excited to share my 4th python project: a Smart Contact Book CLI Application built completely from scratch! Unlike basic scripts that lose data when closed, this tool stores all data locally and…",
  "key_points": [
    "Smart Contact Book CLI app developed with Python",
    "Contacts securely stored in contacts.json file",
    "CRUD operations enable contact list management"
  ],
  "editors_take": "This project showcases a significant milestone in the student's technical growth, demonstrating practical skills in backend concepts, defensive programming, and file management, with potential for further enhancements and community-driven development.",
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}