qalsadi icon indicating copy to clipboard operation
qalsadi copied to clipboard

Qalsadi Improvement TODO List

Open linuxscout opened this issue 3 months ago โ€ข 0 comments
trafficstars

๐Ÿ”ง Core Functionality

  • [x] Improve tokenization accuracy and speed.
  • [x] Implement better error handling when malformed input is given.
  • [x] Refactor internal logic to be more modular (e.g., separate analysis pipeline components).
  • [x] Add support for configurable morphological analysis depth or verbosity levels. (using output profiles)

๐Ÿงช Testing

  • [x] Write unit tests for core modules (analyzer, stemmer, etc.).
  • [x] Add test cases for edge cases like empty strings, special characters, or rare word forms.
  • [x] Use fixtures or sample corpora for regression testing.
  • [x] Add CI integration (GitHub Actions or similar) for automatic test runs.

๐Ÿ’ก New Features

  • [ ] #15
  • [x] Enable optional output of all morphological solutions, not just the top one.
  • [x] Add option to return roots, POS tags, patterns, and vocalized forms.
  • [x] Provide filtering capabilities (e.g., filter by POS, pattern, etc.).

๐ŸŒ CLI and Web Interface

  • [x] Add or improve command-line interface (CLI) for batch processing.
  • [x] Add main.py for running with python -m qalsadi
  • [x] Add CLI entry point using argparse or typer
  • [x] Expose key functions in qalsadi/init.py:
  • [x] Enhance Flask web demo or migrate UI to modern stack (e.g., Tailwind CSS).
  • [x] Add ability to export analysis results (JSON, CSV, HTML).
  • [x] Add file upload support
  • [x] And recursive directory processing.

๐Ÿ“ฆ Packaging and Distribution

  • [x] Clean up and document the setup.py / pyproject.toml.
  • [x] Ensure proper versioning and changelog updates.
  • [x] Publish prebuilt wheels for popular platforms.
  • [x] Ensure compatibility with latest Python versions.

๐Ÿ“š Documentation

  • [x] Rewrite and structure documentation using Markdown.
  • [x] Include usage examples (Python code, CLI usage, Web API calls).
  • [ ] #18
  • [ ] #19
  • [x] Add README badges (e.g., PyPI version, tests, license, etc.).

๐Ÿ” Evaluation and Benchmarking

  • [x] Integrate an evaluation framework using gold-standard datasets.
  • [x] Provide summary statistics (accuracy, precision, recall).
  • [x] Add tools for visualizing morphological ambiguity.
  • [x] Support diacritic-insensitive and character-level comparison.

๐Ÿค Contributing and Community

  • [x] Add a CONTRIBUTING.md guide.
  • [x] Tag good first issues and help-wanted items.
  • [ ] #17
  • [x] Set up GitHub Discussions or a forum for user support.

๐Ÿง  Advanced Ideas (Optional)

  • [x] #16

linuxscout avatar Jul 28 '25 16:07 linuxscout