szurubooru/TODO

176 lines
5.8 KiB
Text
Raw Normal View History

2014-09-19 10:23:34 +02:00
This is transient file that lists functionalities to be implemented before
first major release.
everything related to posts:
- single post view
- post content
- post tags
- number of tag usages
- basic information
- uploader's picture
- remember about support for anonymous uploads
- safety
- source
- image dimensions
- time of last edit
- time of upload
- time of last feature
- how many times the post was featured
- download
- permalink
- delete
- feature
- fav
- score (see notes about scoring)
- editing
- tags
- source
- safety
- content
- thumb
- relations
- ability to loop video posts
2014-09-20 23:17:48 +02:00
- post edit history (think
http://konachan.com/history?search=post%3A188614)
2014-09-19 10:23:34 +02:00
- relations
- previous and next post (difficult)
- remember last search
- take care of pages
- add A/D hotkeys
- hiding posts
- link to iqdb and/or tineye
- featured posts
- ability to feature the post
- show the post on main page
- tag list
- uploader
- random post
- regard safety settings
- ability to paste many urls in post upload
- post listing
2014-09-20 23:17:48 +02:00
- better thumbnail loading
- content type indicators (try to use CSS)
- fav count
- score
- comment count
2014-09-19 10:23:34 +02:00
- regard safety settings
- add warning if no posts were found
- search filters
- tag
- -tag
- submit:rr-
- comment:rr-
- comment: 3..5
- fav:rr-
- fav:3..5
- score:3..5
- tag:3..5
- date:today
- date:yesterday
- date:yyyy[-mm[-dd]]..yyyy[-mm[-dd]]
- filesize:3K..5M
- imgsize:huge/large/medium/small
- id:3,4,5
- hash:postName
- type:img/flash/yt/video
- special:liked
- special:disliked
- special:fav
- special:hidden
- search order
- order:id
- order:date
- order:score
- order:comments
- order:favs
- order:tags
- order:commentdate
- order:favdate
- order:filesize
2014-09-20 23:17:48 +02:00
- order:random (at least unstable version)
2014-09-19 10:23:34 +02:00
- safe/sketchy/unsafe buttons and top navigation search goes to post
list presenter
everything related to users:
- banning
- show link to user's uploads
- show link to user's favs
- show link to user's liked posts
2014-09-20 23:17:48 +02:00
- better avatar loading
2014-09-19 10:23:34 +02:00
everything related to tags:
2014-09-20 23:17:48 +02:00
- tag listing
2014-09-19 10:23:34 +02:00
- tag autocompletion (difficult)
- time of last tag usage
- time of tag addition
- mass tag
- tag merging
2014-09-20 23:17:48 +02:00
- editing tags
- tag relations
- tag aliases
- tag categories (from config.ini)
- tag descriptions
- tag edit history
2014-09-19 10:23:34 +02:00
everything related to comments:
- adding comments
- listing comments in post view
- listing comments in comment list view
- deleting
- editing
- markdown
- score (see notes about scoring)
refactors:
- make PostDao use TagDao when creating not existing tags (perhaps use
separate PostTagDao for this)
- post view proxy should retrieve full tags and full user
- centralize markdown prefix decorators
- add enum validation in IValidatables (needs refactors of enums and
possible disposal of EnumHelper in favor of something more subtle)
- (idea) keep denormalized data in separate tables, i.e. tag usages in
tag_meta or post favorite count in post_meta, so that it's obvious what
can be recalculated on demand and what is real data
- change AbstractSearchService to AbstractSearchParser
- embed AbstractSearchService into Dao (it sucks to include XSearchService
together with Dao)
- simplify template loading in presenters - right now template loading
requires _, util and promise:
promise.wait(util.loadTemplate('blah'))
.then(function(html) {
template = _.template(html); });
- move content spinner code to separate module - it makes little sense for
individual presenters to use PresenterManager
miscellaneous:
- add customizable favicon
2014-09-20 23:17:48 +02:00
- add customizable logo
2014-09-19 10:23:34 +02:00
- add log engine and log everything that should be logged
- I don't think browsing online logs is very necessary
- add help, api documentation
- add version on homepage that reads version from package.json and git hash
- make script faster, right now every request to backend takes 200ms
(current suspect: dependency injector and sqlite)
- add tool for migrating szurubooru database
- endless pager should include information about page number
- add README and INSTALL - apache2 has good README:
http://svn.apache.org/repos/asf/httpd/httpd/trunk/README
remember to mention mod_mime_magic
2014-09-19 10:23:34 +02:00
- add spinner to forms such as registration, user query, login, settings
etc. make sure the code isn't too duplicated.
notes about scoring:
- anonymous users should be able to score posts
- anonymous users should be able to revoke and correct their scores
- it should be difficult to score post repeatedly (add protection in local
storage, anything more is probably an overkill)
- scored of authorized users should be persisted into database so it can be
searched for with special:liked and special:disliked
some day:
- configure mails and ensure it works with gmail