How mainakadak02/shiftdrop works
ShiftDrop is a native Windows drag-and-drop conversion and editing app: users invoke a cursor wheel, choose an applicable recipe, and receive a safely named output while the original remains untouched. Its feature engines cover media conversion, editing, privacy, documents, archives, and file actions; jobs and staged outputs support progress, history, and undo. The README documents the user workflow and capabilities; source excerpts establish shared engine and output mechanics, but much feature wiring is unsampled, so those links are omitted.
Main entry points: KeyboardController.cpp Action wheel · PipelineRunner.cpp Pipeline runner · StagedOutput.h Staged output · Recipe.h Recipes
Components 21
User interaction
- Action wheel
src/keyboard/KeyboardController.cpp - Action preview
src/preview/PreviewCard.cpp
Recipes and execution
- Recipes
src/Recipe.h - Engine contract
src/Engine.h - Pipeline runner
src/PipelineRunner.cpp
Media tools
- Image conversion
src/ImagePipeline.cpp - Photo editor
src/photo/PhotoEngine.cpp - Video tools
src/videotools/VideoEngine.cpp - Audio tools
src/audiotools/AudioEngine.cpp - Picture editing
src/canvas/PictureEngine.h - Redaction
src/redact/RedactEngine.cpp
Documents and files
- PDF tools
src/pdf/PdfEngine.cpp - Archive tools
src/archive/ArchiveModule.cpp - Metadata inspection
src/inspect/MetadataReader.cpp - OCR tools
src/ocr/OcrEngine.cpp - File actions
src/FileActions.cpp
Output and history
- Staged output
src/StagedOutput.h - Output naming
src/OutputPath.h - Run history
src/HistoryStore.h - Update check
src/updates/UpdateController.cpp
Other components
- File user
Connections 10
- File user → Action wheel: invokes
- File user → Action wheel: drops files
- Action wheel → Recipes: selects
- Engine contract → Recipes: runs
src/Engine.h - Pipeline runner → Output naming: names outputs
src/PipelineRunner.cpp - Pipeline runner → Staged output: uses staging
src/PipelineRunner.cpp - Staged output → Run history: records results
src/StagedOutput.h - Photo editor → Picture editing: edits pictures
- Redaction → Picture editing: uses picture editing
- File user → Update check: checks updates