KD2 Framework  Update of "about"

Overview

Artifact ID: ce06ea0b884a6d4fe5fe9ba7040d6e34e6e69209
Page Name:about
Date: 2014-01-19 23:37:41
Original User: bohwaz
Parent: 6c469fcbd2282f21becc87fcee484d107be06a23 (diff)
Next 1e711e4e4509c73976f98971341825f145d44915
Content

KD2FW (KD2 Framework) is a collection of tools and libraries developed for the KD2.org projects over the years.

Features:

  • Lightweight
  • Small
  • Fast
  • Code is simple and straightforward to read
  • Simple API
  • Easy to extend and adapt to own needs
  • No extra dependency, you don't have to install any other library to use it
  • Each component can be used outside the framework
  • PHP 5.3+ object code
  • Components comes with full documentation, examples and tests

This framework is used for a couple of websites serving millions of web pages each day.

WARNING: there is currently no release cycle of kd2fw, all components are considered stable, and no backward-incompatible changes are made.

PHP Components

  • BubbleBabble: encodes and decodes using the Bubble Babble binary data encoding. Much like base64 but makes actually pronounceable pseudo-words.
  • Countries: to get a list of ISO-3166 countries in english or french
  • Delta: to compute and apply deltas between two revisions of the same file (PHP port of Fossil delta algorithm). Allows to store only differences between two edits of a text, may be useful for example in CVS or a Wiki.
  • FeedParser: parses RSS and ATOM feeds, any version, even if they are invalid XML
  • Image: a simple and fast image library providing resize, image informations and image thumbnail through GD, ImageMagick or ImLib (will use the fastest available option).
  • Karto (alpha): mapping/GPS tools
  • Passphrase_FR: generates passphrases from random french words.
  • Session: a basic PHP session manager that can be set to be non-blocking.
  • SessionCookie: stores session data in a cookie (using MsgPack if available or JSON as a fallback), without using session files. For MsgPack you can use [https://github.com/onlinecity/msgpack-php] as a pure PHP implementation but the PECL module "msgpack" is much faster.
  • Singleton: used to make singleton classes.
  • SkrivLite: implementation of the Skriv Markup Language (inspired by Creole and Markdown).
  • SMTP: send emails using SMTP (supports SMTH AUTH and TLS).

Javascript components

  • Text editor: extends textareas with tools to select, insert or replace content, with support for keyboard shortcuts.
  • Code editor: built on Text editor, it provides an easy to use browser code editor including: common keyboard shortcuts, search, search and replace, go to line, fullscreen editing, indentation, brackets/parenthesis matching, line counter, and more.
  • Karto (alpha): Mapping/GPS tools (Mercator projection)