aboutsummaryrefslogtreecommitdiff
path: root/docs.txt
diff options
context:
space:
mode:
authorGravatar moon <moon@coffin.ir> 2026-04-05 23:10:59 +0330
committerGravatar moon <moon@coffin.ir> 2026-04-05 23:10:59 +0330
commit9731df58b8d0860e9f96e02a6a62f264cc0c8d3a (patch)
treeccd9a016a43a008f81bcef7fbc44574749d295ff /docs.txt
parentlaim 0.2.5 (gateway to 0.3) (diff)
documentation
Diffstat (limited to 'docs.txt')
-rw-r--r--docs.txt45
1 files changed, 29 insertions, 16 deletions
diff --git a/docs.txt b/docs.txt
index 4fe5c8d..6fd415d 100644
--- a/docs.txt
+++ b/docs.txt
@@ -1,11 +1,17 @@
-- news
+2026-04-05
+ #0.2.4
+ various bug fixes, modified broadcast functionality, ephemeral rooms
+ #0.2.4
+ added a new command: 'K'
+
2026-04-04
- welcome to laim 0.2!
- this version now transmits `\2` as its version number.
- it introduces a few changes to the legacy laim, such as two new commands: W and E,
- changed spec sheet from raw u64 input to a readable number, making it easier to use laim manually,
- and a bunch of structural changes, including putting each mail into its own file!
+ #0..2
+ the version has been bumped to 2.
+ it introduces a few changes to the legacy laim, such as two new commands: W and E,
+ binary LE u64 input has been converted into a plain number read.
+ there were a bunch of structural changes, including putting each mail into its own file!
-- specs
@@ -18,9 +24,10 @@ CONNECT
< \2 (byte = two, version)
< \n (the common sequence finish in laim)
actions:
+ (names that have a `+` next to them return O on success)
> M
gets server motd, newline-terminated
- > L
+ > L +
> username
> \n
> password
@@ -28,22 +35,23 @@ CONNECT
commence server login.
possible results:
< ( (this is the second half of a sad face. means you had a slash in your username.)
- < 4 (this means you didn't send a newline after your username.)
+ < 4 (this means you didn't send a newline after your username.)
< 5 (this means you didn't send a newline after your password.)
< N (Non-existent user.)
- < I (Incorrect password. two-second penalty.)
+ < I (Incorrect password. two-second penalty.)
< O (successful auth. now you can access general commands.)
general commands
- > G
+ > G +
returns all mail for your user
> W
returns your username. may get funky.
> E
returns your inbox size, including deleted mail.
- > B
- enter broadcast mode. in this state, your inbox is shared with every other user utilizing broadcast mode, and anything you send will be visible by everyone else.
+ > B +
+ > room name, or EOF/`\n` to default to hub
+ enter broadcast mode. in this state, your inbox is shared with every other user in the same room, and anything you send will be visible by everyone else in the room.
use this to chat publicly, advertise protocol, etc.
- > Q
+ > Q +
exit broadcast mode. this returns your inbox and outbox to the per-user basis.
> U
returns a newline-separated list of all the users in this instance, followed by a unix timestamp of their last login.
@@ -54,11 +62,14 @@ general commands
jake 0
alice 1775284203
---
+ > R
+ returns a newline-separated list of all existing rooms.
+ unlike `U`, this one does not contain timestamps.
> T
> 8-byte timestamp in raw binary format
returns all mail for your user after a certain date
< 6 (server might return this if your timestamp was not exactly 8 bytes long.)
- > S
+ > S +
> target
> \n
> content (max 65536 chars, returns a `.` as a response and terminates the buffer if you send any more than that)
@@ -67,14 +78,13 @@ general commands
you can send emails to non-existent users as well.
< 7 (might return if the username was cut off at eof without a \n)
< . (returns if you send more than 65536 bytes)
- < O (returns after mail has successfully been sent.)
> D
> 8-byte plain-foratted number
deletes mail from your account at a specific index.
note that this will NOT shift indexes after the deleted index.
< 8 (returns if the deletion was unsuccessful.)
< O (on success.)
- > C
+ > C +
> new password
> \n
> confirm password
@@ -82,6 +92,9 @@ general commands
changes your password.
< K (non-matching passwords)
< O (success.)
+ > K
+ returns nothing.
+ exits laim.
cheatsheet:
< O (successful operation)
< ? (unknown command)
@@ -97,4 +110,4 @@ mail is formatted as such:
< sender
< \n
< ... content ...
- < \n\neof\n \ No newline at end of file
+ < \n\neof\n