Welcome to the end of Phase 3! This project showcases the skills acquired in this unit, ranging from Python fundamentals to building robust CLI applications.
- Configure environments with project-specific parameters using Pipenv.
- Import and utilize external libraries.
- Employ SQLAlchemy ORM and Alembic for database schema creation and updates.
- Join tables through SQLAlchemy ORM using one-to-one, one-to-many, and many-to-many relationships.
- Implement algorithms from the Data Structures and Algorithms module.
- Adhere to best practices in CLI design.
- Command Line: A text-based interface built into your computer's OS for accessing files and applications.
- Terminal (Mac OS) and Command Shell/Powershell (Windows): Applications that grant access to the command line.
- Command-Line Interface (CLI): A text-based interface for running programs, file management, and memory object interaction. As the name suggests, it operates from the command line.
This CLI application addresses a real-world problem, showcasing the culmination of the skills developed throughout Phase 3. Here's what to expect:
- A user-friendly CLI application.
- A database with 3+ interrelated tables created and modified using SQLAlchemy ORM.
- A well-structured virtual environment managed by Pipenv.
- Proper application package structure.
- Extensive use of Python's lists, dicts, and tuples.
- Accurate implementation of an algorithm from the Data Structures and Algorithms module.
- Clone this repository.
- Navigate to the directory and install dependencies using Pipenv.
- Run the CLI application following the commands provided in the documentation.
- Pre-plan your database schema; altering it later can be complex!
- Keep Python objects, SQLAlchemy objects, and CLI scripts modular.
- Don't reinvent the wheel. If stuck, look for Python libraries that might simplify the task.
- Libraries like Click or Fire can streamline basic CLI functionalities.
Abdirahman abass diis