2025-07-04 15:23:09 -07:00
# autonomous.contact
2025-06-24 15:53:16 -07:00
2025-07-04 15:23:09 -07:00
Bringing the BBS back.
2025-06-24 15:51:02 -07:00
2025-06-24 15:44:58 -07:00
## TODO
2025-07-04 15:21:32 -07:00
These are in no particular order. Pull requests updating this section welcome for
feature discussions.
2025-07-04 13:08:00 -07:00
- [ ] should everything be an event in a room?
2025-07-01 16:08:53 -07:00
- [X] sign up
- [X] check for logged in user session
- [X] log in
2025-07-04 15:21:32 -07:00
- [X] refactor login/sessions/totp
2025-07-01 16:08:53 -07:00
- [X] chat rooms
2025-07-04 15:25:38 -07:00
- [X] chat messages
2025-07-08 18:10:09 -07:00
- [ ] chat message processing
- [ ] auto-link urls
- [ ] use this regex?: `(?:(?<protocol>[a-zA-Z]+):\/\/)?(?:(?<auth>(?<username>\S.+)\:(?<password>.+))\@)?(?<host>(?<hostname>[-a-zA-Z0-9\.]{2,256}\.(?<tld>[-a-zA-Z0-9]{2,256}))(?:\:(?<port>[0-9]{1,6}))?)\b(?<path>[-a-zA-Z0-9@:%_{}\[\]<>\(\)\+.~#&//=]*)(?:\?(?<query>[a-zA-Z0-9!$%&<>()*+,-\.\/\:\;\=\?\@_~]+))?(?:#(?<hash>[a-zA-Z0-9!$&'()*+,-\.\/\:\;\=\?\@_~]+))?`
- [ ] preview cards for links
- [ ] embedded video for
- [ ] youtube
- [ ] vimeo
- [ ] tiktok
- [ ] embedded audio or audio cards for:
- [ ] tidal
- [ ] spotify
- [ ] youtube (any way to differentiate for yt music?)
- [ ] punycode urls before url extraction? (see: https://stackoverflow.com/a/26618995)
- [ ] gif support
- [ ] start/stop gif control
- [ ] hide control
- [ ] inline image support
- [ ] hide control
2025-07-04 15:25:38 -07:00
- [ ] try to select immediate sibling messages from the same user and hide mulitple avatars
2025-07-04 13:08:00 -07:00
- [X] user profile page
2025-07-04 15:25:38 -07:00
- [X] logout button
- [ ] profile editing
- [ ] avatar uploads
- [ ] local upload support (keep it simple for small instances)
- [ ] S3 support (then self-host with your friends: https://garagehq.deuxfleurs.fr/)
2025-07-04 13:08:00 -07:00
- [ ] admin panel
2025-07-04 15:25:38 -07:00
- [ ] add invite code generation
- [ ] AC_REQUIRE_INVITE_CODE: boolean env var/setting
- [ ] AC_DIRECTORY_SERVERS: |-separated list of directory servers to report to
2025-07-04 13:08:00 -07:00
these central servers could be distributed directories - your town might run one,
your state, your country, or you could publish to a public one that is organized
around interests
- [ ] combined "bulletin board" instead of exchange/work?
2025-07-04 15:25:38 -07:00
- [ ] post-it style notes with tag and keyword filtering?
2025-06-24 15:44:58 -07:00
- [ ] simple wiki for resources
- [ ] simple calendar with public/private event tracking
2025-07-04 15:25:38 -07:00
- [ ] caldav support
2025-07-04 15:21:32 -07:00
- [X] smart forms
2025-07-04 15:25:38 -07:00
- [X] use the api for forms so requests will be authenticated
- [X] support multiple methods
2025-07-08 18:10:09 -07:00
- [ ] media uploads
- [ ] local upload support (keep it simple for small instances)
- [ ] S3 support (then self-host with your friends: https://garagehq.deuxfleurs.fr/)
2025-07-04 15:23:09 -07:00
## Getting Started Developing
1) Install Deno
Run their shell script (note: as yourself, not root)
```
curl -fsSL https://deno.land/install.sh | sh
```
Or using Nix:
```
nix-shell -p deno
```
2) Clone the repo:
`git clone https://andyburke.dev/andyburke/autonomous.contact.git`
3) Start the server:
`deno run task serve`
4) Navigate to http://localhost:8000
5) Edit some code and check it out.