Project Foundation
Mission Statement
Project Foundation is a web-based Content Management System designed for the SCP Foundation, and intended as a replacement for the hosted Wikidot wiki solution currently in use.
Description
The current Wikidot solution suffers from multiple problems, the most important of which is that Wikidot service has been heavily degrading over the last few months with little to no accountability on behalf of Wikidot. Users are experiencing severe page lag, double, triple, or even quadruple forum posts, and periodic loss of connection to the Wikidot servers in general.
Wikidot also has poor metadata control, and is ultimately built on a wiki platform, which is unsuited for the nature of the SCP Foundation as a gallery of community-contributed but not necessarily community-collaborative articles and stories. In particular, Wikidot does not have the concept of page ownership outside of creation, and does not allow ownership of a page to change hands.
Technology
Project Foundation will be written in Java 6/7, and intended to run an Apache Tomcat 6.x/7.x and MySQL 5.x stack with Apache HTTPD for static assets. Project Foundation web interfaces will be written to the latest and highest standards for HTML5, CSS3, and Javascript.
Project Foundation will also use the Spring MVC 3.1 framework and jQuery Javascript Framework, and will be backed up on a SCP Subversion repository.
Project Plan
Project Foundation is split into three major phases.
PHASE ONE
Phase One will be focused on replicating existing Wikidot functionality while establishing a framework that can be used on more advanced wishlist features. At the conclusion of Phase One, Foundation will be ready for data import and testing. The following are critical Phase One features:
SCP Foundation 2.0 site template
User registration and authentication
User ranking (member, author, senior staff, moderator, administrator)
User administration
Static page maintenance (indices, front page, system feature pages)
Article page creation, editing, and deletion
Supplementary page creation, editing, and deletion
Image and audio file upload and linking
Wikidot syntax parsing and translation
Page discussion threads (posting, viewing, editing)
Basic forum functionality (posting, browsing, RSS)
Basic tag functionality
Basic voting capability
Basic binary and text content versioning
Action logging (page deletion, user moderation)
PHASE TWO
Phase Two will be focused on bridging the gap between Wikidot and Foundation. At the conclusion of Phase Two, Foundation will be ready to take over for the Wikidot wiki, and a full site migration can take place.
Wikidot -> Foundation user migration tool
Advanced user management (groups, co-authors)
Advanced page maintenance and versioning (major vs minor revisions, ownership transfer, automatic page templates)
Advanced forum functionality (search, recent, advanced features, custom RSS feeds)
Advanced (full-text) site search
Basic user profile pages (including authorship lists)
Messaging system
Site-wide announcements
PHASE THREE
Phase Three entails post-migration maintenance plus the implementation of long-awaited “wish list” features such as advanced statistical analysis and the integration of IRC functionality directly into Foundation.
Customizable user profile pages
User favorites system
WYSIWYG page editor
Page and forum polls
Advanced rating breakdowns (including Adjusted Ratings)
Mobile-optimized site interface
iOS/Android native application site interface
Nala IRC bot integration
Advanced IRC features (new article notification, private message notification, etc)
Notes
If you have any comments, suggestions, or questions about this design document, please contact me on IRC.