Skip to main content

ToDo list du projet kit big data

Project description

To-Do List Python Library

Overview

This project aims to create a comprehensive Python library for managing personal tasks (To-Do List).

Features

The application allows users to:

  • Add a new task to the list with at least a name and a description.
  • Mark a task as completed.
  • Remove a task from the list.
  • Display the list of ongoing tasks.

Getting Started

These instructions will get the project up and running on your local machine for development and testing purposes.

Prerequisites

  • Python 3.x
  • Poetry

Installation

Using Docker

  1. Clone the repository:

    git clone https://github.com/Nhurbis/projet_kit_big_data.git
    cd projet_kit_big_data
    
  2. Build and run the Docker container:

    docker build -t les_meures .
    docker run -it -p 7860:7860 les_meures
    
  3. Access the application in your web browser at: http://0.0.0.0:7860/

Using Poetry

  1. Clone the repository:

    git clone https://github.com/Nhurbis/projet_kit_big_data.git
    cd projet_kit_big_data
    
  2. Set up a virtual environment and install dependencies:

    poetry install
    

Task Manager CLI

The Task Manager CLI is a command-line tool for managing your tasks and task lists. Here is a guide on how to use it.

Installation

Ensure you have installed all the necessary dependencies and configured your Python environment correctly before running the application.

Commands

python task_manager_cli.py create_tasklist <title>
python task_manager_cli.py add_task <tasklist_id> <name> <description>
python task_manager_cli.py complete_task <tasklist_id> <task_id>
python task_manager_cli.py delete_task <tasklist_id> <task_id>
python task_manager_cli.py show_incomplete_tasks <tasklist_id>

Example Usage:

python task_manager_cli.py create_tasklist "My Task List"
python task_manager_cli.py add_task 1 "Go Shopping" "Buy milk, eggs, and bread"
python task_manager_cli.py complete_task 1 1
python task_manager_cli.py show_incomplete_tasks 1

Testing

We use pytest for unit testing. Run the tests using the following command:

pytest --cov=model tests/

Documentation

The documentation for this project is generated using Sphinx. To build the documentation locally, run the following commands in the docs folder:

make html

Then, open docs/_build/html/index.html in a web browser.

CI/CD

This project is set up with a CI/CD pipeline using GitHub Actions. Any push to the main branch triggers the pipeline, which runs tests, checks code coverage, and deploys the documentation.

Sécurité

As part of this project, and in order to facilitate the teacher's grading process, the decision was made to leave the database connection string visible in the code (instead of using environment variables). Additionally, we are directly returning the _id values to facilitate the use of the very simplistic gradio interface. In a real production environment, these choices would not have been made.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

project-big-data-0.1.0.tar.gz (186.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

project_big_data-0.1.0-py3-none-any.whl (6.7 kB view details)

Uploaded Python 3

File details

Details for the file project-big-data-0.1.0.tar.gz.

File metadata

  • Download URL: project-big-data-0.1.0.tar.gz
  • Upload date:
  • Size: 186.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.5

File hashes

Hashes for project-big-data-0.1.0.tar.gz
Algorithm Hash digest
SHA256 974b6169009507effbc66976529fb05e461246d59b9e9aa2d1dff89a2cba6931
MD5 6fc64db1cf65f5a179b4b62ac8a82cd8
BLAKE2b-256 141f5a734952ecc9bc0b7d6c6e1ac704fb22b2c201a4ebca6fd362a1b3c37fea

See more details on using hashes here.

File details

Details for the file project_big_data-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for project_big_data-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1096005aed8d003ebf0bc3ba7f3e42a1b73acbdf2071f33e2ee8a34b16028553
MD5 f5c689bf29ca46054d495798dcfa39bb
BLAKE2b-256 97e24aefe9f0021e545401524c70f681e471d0cc55b9048a0757b66e715006ea

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page