Minimal CLI and server for asynchronous standups
Project description
Standdown
A minimal CLI and server prototype.
Usage
Run the server (default port 8000):
sd server --port 8000
The server uses an SQLite database located in the current working directory. The database file is created automatically on startup.
Set the target server for API requests:
sd conn 127.0.0.1:8000
If no port is given, sd conn uses 8000 by default.
Create a new team on the server:
sd create <teamname> <adminpwd>
The admin password is stored hashed in the server database. Attempting to create a team that already exists will result in an error message.
Add users to a team (the last argument is the password for all users):
sd signup <teamname> <adminpwd> <user1> [<user2> ...] <password>
User passwords are stored hashed with a unique salt in the server database.
Promote an existing user to manager:
sd manager <teamname> <adminpwd> <username>
Login as a user to receive an authentication token:
sd login <teamname> <username> <password>
The CLI stores the returned token and team name in the configuration file for future requests.
Logout from the app:
sd logout
Change your password after logging in:
sd resetpwd <old_password> <new_password> <new_password>
The CLI sends your stored username and token with the request so the server can verify your identity.
Retrieve the current standup messages for your team:
sd team
This command requires that you are logged in. The CLI sends your stored username and token with the request so that only authenticated team members can view the messages.
Sending standup messages
To post a message, simply run sd <message>. If your text begins with a word
that matches a subcommand (for example team), prefix the message with a dot:
sd . team is on track
The prefix prevents the CLI from interpreting the word as a command. You can
also use sd msg <message> explicitly.
Clear your standup messages when they no longer apply:
sd done
sd pin done
sd blockers done
Each command deactivates the corresponding message type for the logged in user.
Managing tasks
Managers can create tasks for the team:
sd add <task>
The server responds with the hexadecimal tag for the new task, which is also displayed by the CLI.
Managers can assign tasks to multiple team members using the tag:
sd assign <tag> <user1> [<user2> ...]
To assign a task to everyone on the team, use a single dot as the username:
sd assign <tag> .
Team members can view their assigned tasks:
sd tasks
Managers can list every task for the team:
sd list
Managers can remove a task by tag:
sd remove <tag>
Start working on a task you are assigned to:
sd start <tag>
Mark the task as finished when you're done:
sd end <tag>
Viewing logs
Display today's standup messages:
sd today
Display yesterday's messages for specific users:
sd yesterday alice bob
You can also view only blocker or pinned messages using the corresponding subcommands:
sd blockers today
sd blockers yesterday alice
sd pin today
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 standdown-0.1.0.tar.gz.
File metadata
- Download URL: standdown-0.1.0.tar.gz
- Upload date:
- Size: 26.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9bc9f2f6eef243b8ddf6b28635b0ba76cabb4b00606e09b3f524ab3a8063f415
|
|
| MD5 |
f6639bd8b9840e71cb6b55602ebb5763
|
|
| BLAKE2b-256 |
bd557e95e35864891b9306512d79c0c40abc391aab15f14ab5b6ad2777e3c6c6
|
File details
Details for the file standdown-0.1.0-py3-none-any.whl.
File metadata
- Download URL: standdown-0.1.0-py3-none-any.whl
- Upload date:
- Size: 27.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8309ec62069545b2913afeb28db4828e7fea4e833aac33bc4c7b593b4de5cb67
|
|
| MD5 |
e5e0ca8f3f580717d428abca955fd8b0
|
|
| BLAKE2b-256 |
f4300ee6b3fbad81df65cae8197efbf29ef8fdd23fc012ea80c8d6a6325d7d54
|