Updated Roadmap (markdown)
parent
b60223f4cc
commit
97afa2b3ac
1 changed files with 89 additions and 82 deletions
171
Roadmap.md
171
Roadmap.md
|
@ -1,82 +1,89 @@
|
|||
- Registration stuff
|
||||
- □ Logging in
|
||||
- □ Registering
|
||||
- □ First user becomes superadmin
|
||||
- □ User name
|
||||
- □ Password (twice)
|
||||
- □ Optional e-mail address
|
||||
- □ Sending activation e-mail [configurable, on/off]
|
||||
- □ Must-check checkboxes [configurable, on/off +texts in Markdown so we can do "I agree that by registering I will be shown R18 content"]
|
||||
- □ Editing one's details
|
||||
- □ E-mail address
|
||||
- □ Password
|
||||
- □ Name [configurable, on/off]
|
||||
- □ Gravatar support
|
||||
- □ Logging out
|
||||
- □ Retrieving lost password through e-mail address
|
||||
- Posts stuff
|
||||
- Adding post
|
||||
- □ Content type (image, flash, youtube)
|
||||
- □ The post content itself
|
||||
- □ Live preview of images
|
||||
- Ways to select the file:
|
||||
- □ Drag'n'drop
|
||||
- □ Click to select
|
||||
- □ Paste url
|
||||
- □ Customizable post thumbnail
|
||||
- [proposition] Flagging post: SFW/Sketchy/NSFW
|
||||
- □ Multiple upload
|
||||
- □ Ability to remove accidentally selected images before final upload
|
||||
- □ Tags
|
||||
- □ Autocomplete
|
||||
- □ Content type changes UI behaviour (it's senseless to upload file with content type set to youtube)
|
||||
- Implementation details - youtube can be stored as files as well, just plaintext containing URL/ID
|
||||
- □ Image gets unique file name so that it can be hotlinked by registered users, but it's url cannot be guessed by unregistered ones (accessing nsfw post by `/post/30065d2112f85177a20b81d2c4dd08fe.jpg` vs `/post/244.jpg`)
|
||||
- Implementation detail: secret salt concatenated to random suffix [configurable]
|
||||
- Ensure no other post exists with that name.
|
||||
- Editing posts
|
||||
- Implementation details: try to avoid duplicated code between post adding and editing, especially for validation stuff.
|
||||
- □ Tags
|
||||
- □ Autocomplete
|
||||
- □ Thumbnail
|
||||
- [Proposition] flagging: SFW/sketchy/NSFW
|
||||
- Browsing posts
|
||||
- Search capabilities:
|
||||
- □ No filter, just browsing
|
||||
- □ Containing tag X
|
||||
- □ Not containing tag X
|
||||
- □ Uploaded by user X
|
||||
- □ Favorited by user X
|
||||
- □ Favorited by >= X users
|
||||
- □ Cool boolean logic
|
||||
- Sorting capabilities:
|
||||
- □ Chronologically
|
||||
- □ By tag count (?)
|
||||
- □ By favorite count
|
||||
- □ By comment count
|
||||
- □ By content type (image, youtube, flash)
|
||||
- □ Paging
|
||||
- □ Automatic retrieval of next page when scrolled to bottom [configurable, on/off]
|
||||
- If we're going to implement SFW/Sketchy/NSFW:
|
||||
- □ Make these configurable what to show to registered users and what not,
|
||||
Otherwise:
|
||||
- □ Hide some images from unregistered users by showing them placeholder images [configurable; dictionary containing one registered-only tag -> one URL to placeholder map]
|
||||
- □ In either appraoch, some kind of default filter (like there is on wallbase.cc) so registered users must opt-in before showing NSFW content
|
||||
- □ Post removal
|
||||
- □ Adding post to favorites
|
||||
- □ Removing post from favorites
|
||||
- Comments stuff
|
||||
- □ Adding comment
|
||||
- □ Modification of comment contents
|
||||
- □ Comment removal
|
||||
- □ Comment display
|
||||
- □ Processing contents with Markdown parser
|
||||
- Privileges stuff
|
||||
- □ Access ranks that are mapped into bit arrays, where each bit means something else (for example, admin has "can edit any comment" set to 1 while anonymous user has "can upload new post" set to 0). Configurable.
|
||||
- Admin stuff
|
||||
- □ Listing users
|
||||
- □ Changing user passwords/mails/whatever
|
||||
- □ Renaming tags
|
||||
- □ Merging tags (!)
|
||||
- Misc
|
||||
- ▣ Every request should be able to show essential information in JSON format when accessed with ?json suffix in URL. This would be *the* API.
|
||||
# Registration stuff
|
||||
- ☐ Logging in
|
||||
- ☐ **Registering**
|
||||
- ☐ **First user becomes superadmin**
|
||||
- ☐ **User name**
|
||||
- ☐ **Password (twice)**
|
||||
- ☐ **Optional e-mail address**
|
||||
- ☐ Sending activation e-mail [configurable, on/off]
|
||||
- ☐ Must-check checkboxes [configurable, on/off +texts in Markdown so we can do "I agree that by registering I will be shown R18 content"]
|
||||
- ☐ Registration approval by admin [configurable, on/off]
|
||||
- ☐ Editing one's details
|
||||
- ☐ E-mail address
|
||||
- ☐ Password
|
||||
- ☐ Name [configurable, on/off]
|
||||
- ☐ Gravatar support
|
||||
- ☐ Logging out
|
||||
- ☐ Retrieving lost password through e-mail address
|
||||
|
||||
# Posts stuff
|
||||
- Adding post
|
||||
- ☐ Content type (image, flash, youtube)
|
||||
- ☐ The post content itself
|
||||
- ☐ Live preview of images
|
||||
- Ways to select the file:
|
||||
- ☐ Drag'n'drop
|
||||
- ☐ Click to select
|
||||
- ☐ Paste url
|
||||
- ☐ Customizable post thumbnail
|
||||
- [proposition] Flagging post: SFW/Sketchy/NSFW
|
||||
- ☐ Multiple upload
|
||||
- ☐ Ability to remove accidentally selected images before final upload
|
||||
- ☐ Tags
|
||||
- ☐ Autocomplete
|
||||
- ☐ Content type changes UI behaviour (it's senseless to upload file with content type set to youtube)
|
||||
- Implementation details - youtube can be stored as files as well, just plaintext containing URL/ID
|
||||
- ☐ Image gets unique file name so that it can be hotlinked by registered users, but it's url cannot be guessed by unregistered ones (accessing nsfw post by `/post/30065d2112f85177a20b81d2c4dd08fe.jpg` vs `/post/244.jpg`)
|
||||
- Implementation detail: secret salt concatenated to random suffix [configurable]
|
||||
- Ensure no other post exists with that name.
|
||||
- Editing posts
|
||||
- Implementation details: try to avoid duplicated code between post adding and editing, especially for validation stuff.
|
||||
- ☐ Tags
|
||||
- ☐ Autocomplete
|
||||
- ☐ Thumbnail
|
||||
- [Proposition] flagging: SFW/sketchy/NSFW
|
||||
- Browsing posts
|
||||
- Search capabilities:
|
||||
- ☐ No filter, just browsing
|
||||
- ☐ Containing tag X
|
||||
- ☐ Not containing tag X
|
||||
- ☐ Uploaded by user X
|
||||
- ☐ Favorited by user X
|
||||
- ☐ Favorited by >= X users
|
||||
- ☐ Cool boolean logic
|
||||
- Sorting capabilities:
|
||||
- ☐ Chronologically
|
||||
- ☐ By tag count (?)
|
||||
- ☐ By favorite count
|
||||
- ☐ By comment count
|
||||
- ☐ By content type (image, youtube, flash)
|
||||
- ☐ Paging
|
||||
- ☐ Automatic retrieval of next page when scrolled to bottom [configurable, on/off]
|
||||
- If we're going to implement SFW/Sketchy/NSFW:
|
||||
- ☐ Make these configurable what to show to registered users and what not,
|
||||
Otherwise:
|
||||
- ☐ Hide some images from unregistered users by showing them placeholder images [configurable; dictionary containing one registered-only tag -> one URL to placeholder map]
|
||||
- ☐ In either appraoch, some kind of default filter (like there is on wallbase.cc) so registered users must opt-in before showing NSFW content
|
||||
- ☐ Post removal
|
||||
- ☐ Adding post to favorites
|
||||
- ☐ Removing post from favorites
|
||||
|
||||
# Comments stuff
|
||||
- ☐ Adding comment
|
||||
- ☐ Modification of comment contents
|
||||
- ☐ Comment removal
|
||||
- ☐ Comment display
|
||||
- ☐ Processing contents with Markdown parser
|
||||
|
||||
# Privileges stuff
|
||||
- ☐ Access ranks that are mapped into bit arrays, where each bit means something else (for example, admin has "can edit any comment" set to 1 while anonymous user has "can upload new post" set to 0). Configurable.
|
||||
|
||||
# Admin stuff
|
||||
- ☐ Listing users
|
||||
- ☐ Changing user passwords/mails/whatever
|
||||
- ☐ Renaming tags
|
||||
- ☐ Merging tags (!)
|
||||
- ☐ Approval of pending registrations [only if approval pending enabled in config]
|
||||
|
||||
# Misc
|
||||
- ☑ Every request should be able to show essential information in JSON format when accessed with ?json suffix in URL. This would be *the* API.
|
Loading…
Reference in a new issue