Skip to content

Latest commit

 

History

14 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

Sim-Py

Sim-Py is a collection of Python projects built to focus on different areas of Python


Repository Structure

Sim-Py/
│
├── expensetracker/    # CLI Expense Tracker
└── multisorter/       # Multithreaded File Organizer

1. Expense Tracker

A command-line application for managing personal expenses with persistent JSON storage.

Features

  • Add expenses
  • View all expenses
  • Search expenses
  • Filter by category
  • Delete expenses
  • Calculate total expenses
  • Persistent JSON storage

Concepts Covered

  • Functions and modular programming
  • File handling
  • JSON serialization
  • CRUD operations
  • Exception handling
  • CLI application development

Tech Stack

  • Python
  • JSON

Run

cd expensetracker
python main.py

2. Multi-Sorter

A multithreaded command-line utility that organizes files into category folders based on their file extensions. Published and available on TestPyPI.

Example:

Plaintext

Downloads/

resume.pdf photo.jpg song.mp3 movie.mp4 ↓

Plaintext

Downloads/

Documents/ Images/ Audio/ Videos/

Features

Scan any directory safely skipping subdirectories

Categorize files by extension

Automatically create destination category folders

Move files concurrently using multithreaded worker pools

Handle duplicate filenames safely

Packaged as an installable, global CLI tool (multisorter)

Installation & Setup

Option 1: Install directly from TestPyPI

You can install the published package directly from TestPyPI:

pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple multisorter --break-system-packages

Otion 2: Local Development Setup

cd multisorter

pip install -e . --break-system-packages

Organize a specific directory

multisorter ~/Downloads

Specify custom worker thread count (default: 4)

multisorter ~/Downloads -w 8

Organize the current directory

multisorter .


3 .Mini-Celery

A small python project to demonstrate decoupling long-running background tasks from the request-response lifecycle to keep user interfaces responsive.

Asyncio module

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages