{"repo":"SagarBiswas-MultiHAT/Contact-Management-System","free":true,"listed":false,"github":"https://github.com/SagarBiswas-MultiHAT/Contact-Management-System","clone":"git clone https://github.com/SagarBiswas-MultiHAT/Contact-Management-System.git","description":"Production‑grade C11 contact manager: a single portable binary with SQLite storage, Argon2id password hashing, interactive keyboard menu and full non‑interactive CLI. Features CSV import/export with transactional dry‑run, JSON output for scripting, backups, and unit/integration tests for reliable automation.","language":"C","stars":23,"topics":["argon2","c","c11","cli","csv","json","security","sqlite","unit-testing","portable-binary"],"license":"MIT","category":"cli-tools","readme_excerpt":"Contact Manager (C11) &nbsp; &nbsp; &nbsp; &nbsp; Production-grade, CLI-first contact manager in C11 — a single small, portable binary that is safe to use interactively or from automation scripts. It stores data in SQLite, supports Argon2id password hashing (via libsodium or libargon2 ), and includes robust CSV import/export, JSON output, and a keyboard-friendly interactive menu. --- Interface: --- Quick summary - Single binary : use from a terminal or in scripts. - Storage : SQLite database ( contacts.db by default) with migrations and backups. - Security : Argon2id password hashing (libsodium preferred; libargon2 fallback), no plaintext passwords. - Modes : interactive menu and full non-interactive CLI for automation. - Output : human-friendly terminal UI plus --json for machine consumption. - Safety : --backup-before snapshots and transactional imports to avoid partial writes. Goal: make the program understandable and scriptable — anyone reading this README should be able to build, run, and automate the app. --- Highlights (at a glance) - Add, list, search, edit, and delete contacts - Persisted sort preference: name , phone , or due-date - Due-date awareness: on-time , due soon , overdue status and stats - CSV import/export with strict quoting and --dry-run - JSON mode for jq , Python, etc. - Argon2id password management with interactive and scripted flows - Unit and integration tests (cmocka) --- Table of contents 1. Requirements 2. Building 3. Quick start & examples 4. C","default_branch":null,"files":null,"tree":[],"storefront":"/r/SagarBiswas-MultiHAT","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/SagarBiswas-MultiHAT/Contact-Management-System/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}