CK12, a non-profit organization launched in 2006, aims to reduce the cost of textbook materials for the K-12 market both in the US and worldwide. Using an open-source, collaborative, and web-based compilation model that can be manifested as an adaptive textbook - termed the "FlexBook", CK12 intends to pioneer the generation and distribution of high quality educational web texts.
Technology Needs from CK12 Flexbooks Platform
- Modularize the Wiki engine into 4 modules: Editing/Authoring Module, Rendering Module, Archiving Module, and Versioning Module. Each module must provide for the services as independent sub-systems such that one can "mash-up" their own services with the system provided services. For example, one should be able to use an Email client as the rendering module with a rendering engine as a plug-in while leveraging the archival and versioning services from the backend.
- Provide support for bi-directional translation from "Wikiwyg" (RTF) syntax to "Wiki Syntax". We have additional requirements to support enhanced RTF formatting constructs that map to authoring and formatting textbooks requirements.
- Implement the "syntax generator" engine as an extensible and templatable skin that maps to a subset of Wiki syntax supported by the system.
- Provide support for "branched versioning" capabilities beyond "single trunk versioning". Single trunk versioning is typically useful in encyclopedia or dictionary type apps, whereas branched versioning is useful for other application scenarios as in textbooks.
- Ability to generate metadata, evolve and maintain taxonomies.