A professional CLI contact management system implemented in TypeScript.
- 📝 Add new contacts
- 📋 Display contact list
- 🔍 Search contacts
- ❌ Delete contacts
- 🎯 Strong typing with TypeScript
- ✨ Simple and user-friendly CLI interface
- 🧪 Unit tests with Jest
- 🔍 Code quality with ESLint
- 💅 Code formatting with Prettier
- 🔄 Fast development with Nodemon
- Node.js (version 18 or higher)
- npm or yarn
# Install dependencies
npm install
# or using yarn
yarn install# Run the application
npm start
# Run in development mode
npm run dev
# Run tests
npm test
# Build the project
npm run build
# Lint the code
npm run lint
# Format the code
npm run formatcontact-manager/
├── src/
│ ├── index.ts
│ ├── ContactManager.ts
│ ├── types/
│ │ └── Contact.ts
│ └── utils/
│ └── validation.ts
├── tests/
│ └── ContactManager.test.ts
├── package.json
├── tsconfig.json
└── README.md
This project uses Jest for unit testing. Tests include:
- Testing contact addition
- Testing contact list display
- Testing input validation
- Fork the project
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License.