Project-aware terminal companion for developers
Project description
remoro
A smart sticky note for your terminal because your memory is garbage and you know it.
Let's be real. You clone a repo you haven't touched in 8 months. You type npm run dev. It crashes. You type python manage.py runserver. It crashes. You realize you forgot to activate the virtual environment, you're on Node 14 instead of 18, and your .env file is missing. You just lost 30 minutes of your life to "environment setup" again.
Enter remo.
remo is a lightweight, zero-dependency, project-aware CLI companion. It sits in your project root, silently judging you until you type remo. Then it slaps you with the exact startup checklist, environment warnings, and shortcuts you need to actually write code instead of fighting your terminal.
What does it actually do?
- The Startup Checklist: Tells you exactly what to run so you don't have to scroll through an outdated
README.mdtrying to figure out how to boot the frontend. - Environment Checks: Validates your
.envvariables and checks your tool versions (like Python or Node) before you run anything, preventing cryptic stack traces. - Task Reminders: Set a one-off timer to remind you to check on a deployment, or leave a breadcrumb for your future self before you log off on Friday ("Fix the auth bug next") so you aren't completely lost on Monday morning.
- Project Shortcuts:
remo run testis way faster to type out thanpytest tests/ --cov=app -v.
Installation
Use pipx (highly recommended so it installs globally without polluting your system Python):
pipx install remoro
Or just pip install remoro if you like living dangerously.
Verify it didn't break:
remo --version
How to use this thing
1. Initialize a Project
Navigate to your messy codebase and run:
remo init
Follow the interactive wizard. It will create a .remo file (commit this to git so your teammates stop asking you how to run the app) and a .remo.local file (for your private, local settings. We put this in your .gitignore).
2. Open a Project Session
Just type remo in your terminal.
remo
You'll instantly see your project's checklist, available shortcuts, and whether your environment passes the basic checks you configured.
3. Run a Shortcut
Instead of typing out massive Docker or Pytest commands, define them in your .remo file's "shortcuts" block and just run:
remo run dev
4. Leave a Breadcrumb
Quitting for the day? Leave a note for yourself:
remo log "I think the memory leak is in the Redis worker. Don't forget to check it."
Next time you type remo, it will be sitting right there waiting for you.
5. Set a Reminder
Kick off a long deployment or build script, and tell remo to yell at you when it's done so you can go browse Reddit in peace:
remo remind 10m "Check if the build failed again"
(On Windows, this uses native PowerShell toasts so it actually works, unlike 90% of Python notification libraries).
Configuration
remo is completely driven by a simple JSON file. Put this .remo file in your project root:
{
"project": "My Over-Engineered SaaS",
"startup": [
"source .venv/bin/activate",
"remo run dev"
],
"reminders": [
{ "after": "60m", "message": "Drink water & stretch your goblin spine" }
],
"checks": [
{ "type": "env", "file": ".env.example" },
{ "type": "version", "tool": "node", "min": "18.0" }
],
"shortcuts": {
"dev": "npm run dev",
"test": "pytest tests/ -v"
}
}
If you want to add personal shortcuts or local reminders without annoying your team, just put them in a .remo.local file instead. remo merges them automatically.
License
MIT License. Do whatever you want with it, just don't blame me if you still forget how to start your own projects.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file remoro-0.1.2.tar.gz.
File metadata
- Download URL: remoro-0.1.2.tar.gz
- Upload date:
- Size: 179.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
372c9d4367bb33d5fceb63c73d3bfa6fccca650fef4730e77b29b26b66f2b962
|
|
| MD5 |
cc13bd1586ac899256996911f5294097
|
|
| BLAKE2b-256 |
f010f0eb501642b0234d4d56b97cc663c38583a0bd680c6f30977d2248a357b0
|
File details
Details for the file remoro-0.1.2-py3-none-any.whl.
File metadata
- Download URL: remoro-0.1.2-py3-none-any.whl
- Upload date:
- Size: 32.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
72369e795b4f281c2899eddf650e62a9243fa50db273c56f71291552c056b906
|
|
| MD5 |
2a9657ddd8ec653edfbceee9f239708b
|
|
| BLAKE2b-256 |
95e9f08cbfbad2199404e5d65f63a9db9d14e91ff19e7d113e470b86480cef0e
|