Windows tray launcher for PhD and university students, graduates and office workers. Open the dozens of files, programs and URLs you need every morning with one click. Download: https://github.com/ilkeryigit/ReadytoWork/releases/download/v1.0.0/ReadytoWork-Setup-1.0.0.exe
Python
2
8 commits
updated Oct 2, 2026
A Windows tray launcher that puts your programs, folders, documents and URLs one click away.
Interface languages · English · Türkçe · 中文 · Deutsch · Italiano
PhD candidates, master's students, university students, and office workers — in short, anyone whose working day begins by opening the same set of tools.
Do you open dozens of files, programs and URLs every single morning just to get started? Do the minutes lost to hunting through the Start menu and your desktop add up, chip away at your focus, and cost you real time?
If the answer is yes, this tool is for you. One click opens everything at once, so you are ready to work instead of gathering your tools — and you stop losing time to the start of every day.
It is a small, honest tool: no account, no cloud, no telemetry, no background network traffic. Your list lives in one JSON file on your own machine.
%APPDATA%\ReadytoWork\config.json, written atomically so a crash or a full disk can never corrupt themDownload the installer from the releases page,
run ReadytoWork-Setup-1.0.1.exe, and pick your options.
The installer is not code-signed, so Windows SmartScreen may warn you on first run. Choose More info → Run anyway.
Settings are removed when you uninstall the application.
Requires Python 3.10+ on Windows.
python -m venv .venv
.\.venv\Scripts\python.exe -m pip install -r requirements.txt
# run from source
.\.venv\Scripts\python.exe readytowork.py
# tests
.\.venv\Scripts\python.exe -m pytest tests -v
# single-file executable -> dist\ReadytoWork.exe
.\.venv\Scripts\python.exe -m PyInstaller --clean --noconfirm ReadytoWork.spec
# installer -> dist\ReadytoWork-Setup-1.0.1.exe (needs Inno Setup 6)
& "${env:ProgramFiles(x86)}\Inno Setup 6\ISCC.exe" installer.iss
Every user-visible string lives in lang/<code>.json. To add a language:
lang/en.json to lang/<code>.json.LANG_NAMES in i18n.py.tests/test_i18n.py fails if a key is missing or empty.See CONTRIBUTING.md for the full guide.
readytowork.py entry point, single-instance mutex
app.py tray icon, dynamic menu, settings thread
gui.py settings window (tkinter)
config.py atomic JSON persistence in %APPDATA%
actions.py opening programs, folders, documents, URLs
i18n.py translation loading and lookup
lang/*.json the five catalogs
Settings are saved atomically: the new file is written to config.json.tmp
and then renamed over config.json, so the file on disk is always complete.
A corrupt file is moved to config.json.bak and the app starts with an empty
list instead of overwriting anything.
Contributions are welcome — bug reports, translations, and small features all
help. This is a Windows-only tool with no runtime dependencies beyond pystray
and Pillow, and that is a line we try to hold.
good first issue —
these are scoped so a first contribution stays small.Please read CONTRIBUTING.md for the setup steps, the ground rules, and how to add a language. Everyone participating is expected to follow the Code of Conduct.
No analytics, no network calls, no user tracking. The only file written outside
the install directory is %APPDATA%\ReadytoWork\config.json, which holds the
items you created. The test suite includes an automated check that no personal
paths, usernames or email addresses end up in the repository.
MIT © 2026 ilkeryigit
Python
94.5%
Inno Setup
5.5%
Windows tray launcher for PhD and university students, graduates and office workers. Open the dozens of files, programs and URLs you need every morning with one click. Download: https://github.com/ilkeryigit/ReadytoWork/releases/download/v1.0.0/ReadytoWork-Setup-1.0.0.exe
Python
2
8 commits
updated Oct 2, 2026
A Windows tray launcher that puts your programs, folders, documents and URLs one click away.
Interface languages · English · Türkçe · 中文 · Deutsch · Italiano
PhD candidates, master's students, university students, and office workers — in short, anyone whose working day begins by opening the same set of tools.
Do you open dozens of files, programs and URLs every single morning just to get started? Do the minutes lost to hunting through the Start menu and your desktop add up, chip away at your focus, and cost you real time?
If the answer is yes, this tool is for you. One click opens everything at once, so you are ready to work instead of gathering your tools — and you stop losing time to the start of every day.
It is a small, honest tool: no account, no cloud, no telemetry, no background network traffic. Your list lives in one JSON file on your own machine.
%APPDATA%\ReadytoWork\config.json, written atomically so a crash or a full disk can never corrupt themDownload the installer from the releases page,
run ReadytoWork-Setup-1.0.1.exe, and pick your options.
The installer is not code-signed, so Windows SmartScreen may warn you on first run. Choose More info → Run anyway.
Settings are removed when you uninstall the application.
Requires Python 3.10+ on Windows.
python -m venv .venv
.\.venv\Scripts\python.exe -m pip install -r requirements.txt
# run from source
.\.venv\Scripts\python.exe readytowork.py
# tests
.\.venv\Scripts\python.exe -m pytest tests -v
# single-file executable -> dist\ReadytoWork.exe
.\.venv\Scripts\python.exe -m PyInstaller --clean --noconfirm ReadytoWork.spec
# installer -> dist\ReadytoWork-Setup-1.0.1.exe (needs Inno Setup 6)
& "${env:ProgramFiles(x86)}\Inno Setup 6\ISCC.exe" installer.iss
Every user-visible string lives in lang/<code>.json. To add a language:
lang/en.json to lang/<code>.json.LANG_NAMES in i18n.py.tests/test_i18n.py fails if a key is missing or empty.See CONTRIBUTING.md for the full guide.
readytowork.py entry point, single-instance mutex
app.py tray icon, dynamic menu, settings thread
gui.py settings window (tkinter)
config.py atomic JSON persistence in %APPDATA%
actions.py opening programs, folders, documents, URLs
i18n.py translation loading and lookup
lang/*.json the five catalogs
Settings are saved atomically: the new file is written to config.json.tmp
and then renamed over config.json, so the file on disk is always complete.
A corrupt file is moved to config.json.bak and the app starts with an empty
list instead of overwriting anything.
Contributions are welcome — bug reports, translations, and small features all
help. This is a Windows-only tool with no runtime dependencies beyond pystray
and Pillow, and that is a line we try to hold.
good first issue —
these are scoped so a first contribution stays small.Please read CONTRIBUTING.md for the setup steps, the ground rules, and how to add a language. Everyone participating is expected to follow the Code of Conduct.
No analytics, no network calls, no user tracking. The only file written outside
the install directory is %APPDATA%\ReadytoWork\config.json, which holds the
items you created. The test suite includes an automated check that no personal
paths, usernames or email addresses end up in the repository.
MIT © 2026 ilkeryigit
Python
94.5%
Inno Setup
5.5%