A multi-threaded and multi-process based File System Manager designed to handle:
- File operations
- CLI commands
- Background tasks
- Vector indexing
- Tag generation
- Logging
- Frontend + API interaction
- The system is built for scalability, modularity, and asynchronous task execution.
- Main Thread (Main Processor)
- Worker Thread
- Separate Tag Generation Process
- Frontend + API Layer
- Logging & OS Watcher Service
-
Multithreading (for task execution)
-
Multiprocessing (for heavy operations like tag generation)
-
Queue-based communication
-
Persistent storage (database + vector storage)
OS Events โ Watcher โ Log Manager โ Controller
โ
Frontend โ API โ Controller โ Task Scheduler
โ
Task Handler
โ
FS Manager
โ
Storage / Index / Vector / Tag Generation Process
This is the brain of the application.
-
Initialize all services
-
Handle API requests
-
Coordinate tasks
-
Manage communication between threads and processes
Load File System
Load CLI
Initialize Worker Thread
Initialize Tag Generation Process
This ensures everything is ready before user interaction begins.
Monitors OS-level file events.
-
File creation
-
File deletion
-
File modification
-
Writes events to: -> active.log
-
This is later consumed by the Log Manager.
-
Read active.log
-
Parse system events
-
Send structured events to Controller
-
This allows automatic file system updates.
it is a pywebview layer
** Acts as a bridge between: **
Frontend โ Controller
-
HTTP Requests
-
Response formatting
-
Data validation
The central coordinator.
-
Receive input from: API
-
Log Manager
-
Forward tasks to:
-
Task Scheduler
-
Manage process communication
-
This component ensures clean separation of concerns.
- Queue checking and db write done by worker tread
-
Queue incoming tasks
-
Distribute tasks to:
-
Task Handler
-
Background Executor
-
Non-blocking execution
-
Organized processing
-
Executes structured tasks by:
-
forwards work to:
-
Task Performer
-
CLI Performer
-
Core FS operations
-
Data updates
-
Storage updates request sends
Executes CLI-based commands separately from API-based commands.
- Dual interface support (CLI + Web)
The heart of file system logic.
-
Maintain file tree
-
Coordinate indexing
-
Communicate with:
-
Vector Engine
-
Storage Layer
-
Tag Generation Process
-
Vector generation
-
Embeddings
-
Similarity search
-
Advanced search capabilities
-
Intelligent file retrieval
-
Content-based searching
- database/index.db
-
File metadata
-
Index mappings
-
Searchable structure
- root -> DB
- subtree -> memory (tree)
- parent -> memory (tree)
- root -> dictionary
- subtree -> dictionary + memory (tree)
- parent -> memory (tree)
- root -> DB
- subtree -> DB
- parent -> DB
Runs in a completely different process (not thread).
Why separate process?
-
Tag generation is CPU-intensive
-
Avoid blocking main system
-
Better scalability
-
Uses a Multiprocessing Queue
-
FSManager โ Queue โ Tag Generation Process
-
HTML
-
CSS
-
JS
Communicates with backend using API request/response model.
-
Modular architecture
-
Separation of concerns
-
Asynchronous execution
-
Scalable processing
-
Clean layered structure
โ Real-time file monitoring
โ Vector-based intelligent search
โ Tag auto-generation
โ CLI + Web Interface
โ Multi-threaded task processing
โ Multi-process heavy computation
โ Persistent indexed storage
FS/
โ
โโโ frontend/
โ โโโ css/
โ โ โโโ app_container_and_webkit.css
โ โ โโโ background_particle.css
โ โ โโโ body.css
โ โ โโโ cli.css
โ โ โโโ context_menu.css
โ โ โโโ details_panel.css
โ โ โโโ global.css
โ โ โโโ grid_and_list_view.css
โ โ โโโ menu_bar.css
โ โ โโโ rename-styles.css
โ โ โโโ responsive.css
โ โ โโโ root.css
โ โ โโโ side_bar.css
โ โ โโโ title_bar.css
โ โ โโโ tool_bar.css
โ โ
โ โโโ font/
โ โ โโโ font.woff2
โ โ โ
โ โโโ img/
โ โ โโโ logo_transparent.png
โ โ โโโ logo.jpeg
โ โ
โ โโโ js/
โ โ โโโ cli.js
โ โ โโโ rename-functionality.js
โ โ โโโ script-main.js
โ โ โโโ script.js
โ โ โโโ search.js
โ โ
โ โโโ cli.html
โ โโโ file-search.html
โ โโโ main-window.html
โ
โโโ .database/
โ โโโ index.db
โ
โโโ .save/
โ
โโโ logs/
โ โโโ error.log
โ โโโ debug.log
โ
โโโ Chatbot/
โ โโโ bot.py
โ โโโ mpc.py
โ
โโโ watcher/
โ โโโ logs/
โ โ โโโ active.log
โ โโโ config.py
โ โโโ event_logger.py
โ โโโ fs_startup_sync.py
โ โโโ internal_tree.py
โ โโโ watcher_service.py
โ โโโ run_watcher.bat
โ
โโโ dependencies/
โ โโโ dict.py
โ โโโ fileReader.py
โ โโโ helperfuncUtils.py
โ โโโ icon.py
โ โโโ logmanager.py
โ โโโ log_config.py
โ โโโ stack.py
โ โโโ storage.py
โ โโโ tree.py
โ โโโ vector.py
โ
โโโ Scaffold/
โ โโโ parser.py
โ
โโโ .gitignore
โโโ README.md
โโโ requirements.txt
โ
โโโ model/
โ
โโโ all-MiniLM-L6-v2/
โ โโโ 1_Pooling/
โ โโโ 2_Normalize/
โ โโโ config_sentence_transformers.json
โ โโโ config.json
โ โโโ model.safetensors
โ โโโ modules.json
โ โโโ README.md
โ โโโ sentence_bert_config.json
โ โโโ special_tokens_map.json
โ โโโ tokenizer_config.json
โ โโโ tokenizer.json
โ โโโ vocab.txt
โ
โโโ llama-2-7b-chat.Q4_K_M.gguf
โโโ qwen2.5-1.5b-instruct-q8_0.gguf
-
Distributed processing
-
Cloud storage integration
-
Advanced AI-based tagging
-
Caching layer (Redis)
-
WebSocket real-time updates
-
Recycle bin
Note: execute watcher.py in seperate terminal work as background process

