ctrlcctrlv / infinity

A vichan fork permitting users to create their own boards
Other
318 stars 149 forks source link

Fix board list loading time with pagination #119

Open aponigricon opened 10 years ago

aponigricon commented 10 years ago

This one is pretty self-explanatory. Simply add some form of pagination to boards.html, either traditional pagination, or "infinite [not really] scrolling". On top of that, add a little search engine at the top of the page to search by board name and title.

This will probably require some PHP, but should still increase server performance and user experience as a whole, despite the server-side scripting.

Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

bui commented 10 years ago

DataTables would be useful for this

Zealotux commented 10 years ago

DataTables is great but I think that a server-side pagination will be needed. The page is already heavy (4672 boards to sort). I think we could imagine this kind of thing:

[top boards (all time) (~10/15)] [top boards (this last hour) (~10/15)] [new boards (~10/15)] [current board list system (but limited to let's say ~100 boards with a server-sided pagination]

bui commented 10 years ago

I think instead of server-side pagination, the data is fetched from boards.json instead, so the page still renders fast

aponigricon commented 10 years ago

That's ridiculous. The client would still have to load the entire JSON file every single time, which would be equivalent to just loading boards.html as it is now. No improvement on neither the client nor the server.

ctrlcctrlv commented 10 years ago

I also agree with server side pagination. Actually I'm rewriting the discovery system. Server side pagination is part of it however.