In this I'll explain a bit about the base structure incorporated into TyNETv4. [comment]
The first thing to say is that v4 comes in three "package spaces".
[size=4]CORE/BASE[/b] This provides the main framework and structure to even run TyNET. It is absolutely required. In more detail, here's a list of all the things it does: - Provide the INIT sequence – Sets constants and variables – Establishes Database connection – Parses the URL – Loads the correct modules - A toolkit class to provide essential functions and shortcuts. - A database abstraction layer to allow for easy and safe queries. - The folder structure required to store and modify locally saved data. - Provide a module loading and handling framework. - Provide the hooks framework to allow simple and dynamic module interaction.
[size=4]ESSENTIAL[/b] This package space basically makes TyNET "usable". Sure, it'll run on the CORE alone just fine and with whatever modules you want, but these here are modules and classes that provide some very basic and essential use settings and abilities, like administrating modules themselves, managing user accounts and providing additional simplification tools. Here's a more complete list: - Admin: Module for the administration of the CORE. - User: Module for the management of user accounts. This does [i]not[/i] include a front-end! - Theme: Module to run TyNETv4 themes and allow easy output generation. - Useful libraries to allow connection to other services like Akismet, Google Analytics and Re-Captcha. - A set of classes for generating layouts.
[size=4]USERSPACE[/b] This package space consists mainly of modules that actually provide end-user interaction. Without any of these modules, the site would not be usable for anything. However, none of these packages are essential or necessary at all (unless direct dependency is specified). Here's an incomplete list of so far existing or planned modules: - Crystalview: Statistics gathering and chart generation. - Display: An extensive gallery module. - Feeder: Simple RSS feed generation API. - Fenfire: Comment system API. Provides nothing by itself, but allows easy comment integration. - Filer: File uploading API. - LightUp: BBCode and general post markup translater. - Liroli: User group supplement. Users can create and join groups, groups can be assigned special privileges. - LumiHub: A project hub and bug tracker. - Neon: A user front-end that allows account registration, logging and user management. - Purplish: Kusaba-like imageboard software combining static and dynamic content creation. - Reader: Simple blogging software with multi-user environment. - Reflector: Server file manager. - Shortcut: Easy URL-shortening. - Spectacles: A dynamic search engine, including a search API for other modules to tie int
The hooks system and dynamic loading of modules allows for complex, but yet simple to program and maintain interaction between modules, immensely amplifying their effectiveness. Seriously, it'll make my life a huge lot easier and a lot less messy.
Anyway, that's all for now I guess. I'll call back once CORE and ESSENTIAL are stable.
Written by shinmera