150 likes | 324 Views
Imageboard ”LAUTA” . Pasi Hyvönen – F6804 Tuomo Stamblewski – F7195. Content. Imageboards in general Our project Datastore Backend Frontend Demo Questions. What is Imageboard?. A imageboard is a simple kind of Internet forum that does not require registration.
E N D
Imageboard ”LAUTA” Pasi Hyvönen – F6804 Tuomo Stamblewski – F7195
Content • Imageboards in general • Ourproject • Datastore • Backend • Frontend • Demo • Questions
What is Imageboard? • A imageboard is a simple kind of Internet forum that does not require registration. • Imageboards are used for discussion of a variety of topics. • Topics can be technology, videogames or random for example. • The primary focus of imageboards, however, is directed away from text posts, and is instead placed on picture posts.
How does IT work? • Everything works anonymously • A user can start a topic by posting an image, along with a comment. • Other users can reply to a topic with their own images and also participate in discussion.
Popular imageboards • 4Chan (English board) • Nowadays world’s largest imageboard which attracts over 100.000 posts per day worldwide • IIChan (English board) • Finnish boards • Ylilauta, Northpole, Nyymichan • NONE OF THESE SITES ARE SUITABLE FOR ANYONE!
”LAUTA” Minimalistic Imageboard
WHY?!?!?!? • We decided to create minimalistic imageboard using .Net technologies using XML as our data store. • Wewanted to getsomepoints for the course.
Data store • Created as C# library • Uses XML to save data to the disk • Contains 3 classes: • LautaHandler • Post • BLThread
LautaHandler • Handles all XML reading and writing • Methods: • GetThread – Returns content of thread • GetThreads – Returns all threads from one board • GetBoards – Returns name of all boards • PostToThread – Adds new post to specific thread and returns new content • CreateNewThread – Creates new thread by copying template file under to correct board and changes it’s content • DeleteThread – Tries to delete thread • DeletePost – Tries to delete post from thread
XML format • We decided to use XML because it was easiest way to avoid SQL Injections and using XML with ASP.net is really easy. • XML structure for our threads:
Folder structure • Boards/ • G/ (Example threads - id#threadname.xml) • 1#NVIDIASucks.xml • 2#AMDvsINTEL.xml • B/ (Example threads - id#threadname.xml ) • 1#MemeSpamSpurdo.xml • 2#ESESES.xml • Template.xml
Backend • JSON REST API implemented on top of smallwebserverthatdoesn’thave a name. • Verylittlecode, acts as gluebetween the frontend and datastore.
Frontend • Implemented with MVC model on top of JSON REST API usingjquery and backbone.js • Verylittleselfwritten CSS, abusingtwittersbootstrap CSS library. • NEVER reloads the page, ajaxlol.
DEMO Minimalistic Imageboard
questions Minimalistic Imageboard