a mini social media app for small communities
1# todo
2
3> i use `:` to denote categories
4
5## in-progress
6
7- [x] post:search for posts
8 - [ ] filters:
9 ```
10 created-at:<date>
11 created-after:<date>
12 created-before:<date>
13 is:pinned
14 has-tag:<tag>
15 posted-by:<user>
16 !excluded-query
17 ```
18- [x] user:search for users
19 - [ ] filters:
20 ```
21 created-at:<date>
22 created-after:<date>
23 created-before:<date>
24 is:admin
25 ```
26
27## planing
28
29> p.s. when initially writing "planing," i made a typo. it should be "planning."
30> however, i will not be fixing it, because it is funny.
31
32- [ ] post:add more embedded link handling! (discord, github, gitlab, codeberg, etc)
33- [ ] user:follow other users (send notifications on new posts)
34- [ ] site:webhooks
35 - could be used so that a github webhook can send a message when a new commit is pushed to beep!
36- [ ] site:log new accounts, account deletions, etc etc in an admin-accessible site log
37 - this should be set up to only log things when an admin enables it in the site config, so as to only log when necessary
38- [ ] site:implement a database keep-alive system
39 - i may also just need to change a setting in the database server to keep it alive, i am not sure yet.
40- [ ] site:overhaul security
41 - i am not a database security specialist, and some of the methods below may be bad.
42 before approaching which security features i want implemented, i will be consulting some other people to be sure of which ones need to be and do not need to be implemented.
43 - [ ] row level security?
44 - [ ] roles/user groups?
45 - [ ] whitelist maps where possible?
46 - [ ] database firewall?
47
48## ideas
49
50- [ ] user:per-user post pins
51 - could be used as an alternative for a bio to include more information perhaps
52- [ ] site:rss feed?
53
54## done
55
56- [x] user:nicknames
57- [x] user:bio/about me
58- [x] user:listed pronouns
59- [x] user:notifications
60- [x] user:deletion
61- [x] user:change password
62- [x] user:change username
63- [x] post:likes/dislikes
64- [x] post:mentioning ('tagging') other users in posts
65 - [x] post:mentioning:who mentioned you (send notifications when a user mentions you)
66- [x] post:editing
67- [x] post:replies
68- [x] post:tags ('hashtags')
69- [x] post:embedded links (links added to a post will be embedded into the post
70as images, music links, etc)
71 - should have special handling for spotify, apple music, youtube,
72 discord, and other common links. we want those ones to look fancy!
73- [x] post:saving (add the post to a list of saved posts that a user can view later)
74- [x] site:message of the day (admins can add a welcome message displayed on index.html)
75- [x] misc:replace `SELECT *` with `SELECT <column>`
76
77## graveyard
78
79- [ ] ~~post:images (should have a config.maple toggle to enable/disable)~~
80 - replaced with post:embedded links
81- [ ] ~~site:stylesheet (and a toggle for html-only mode)~~
82 - replaced with per-user optional stylesheets