<commit_before>Aftertime
=========

Mission: to be an experimental web framework that implements unconventional ideas

= Objectives =

* Be aware of the underlying system and use it (i.e. operating system, HTTP server, available packages and modules, etc)
* Uses multiple external libraries and dependencies, the way of the traditional linux package systems. Try to get the jobs that's already done and improve on it instead of creating something from scratch. Gets new features by upgrading the external dependencies
* Always updated. The lastest stable aftertime version will *track* the latest released Ubuntu version. I.e. Ubuntu 13.10 includes PHP 5.5, so it can be used, and any hacks for previous PHP versions will be removed on sight.
* Very lightweigh "App" base class. Do the work in your side, for better control of the code
* Good logging and debugging mechanism. Because this represents 90% of the work
* Scale your site from unprivileged shared server to multiple servers
* Multiple deployment: the same commands allow you to use the build site from the development environment, deploy it in a shared hosting configuration, or in a multiple server one with replicated tiers.
* Multiple site development, within the same aftertime instance. Note that this does not mean "multisite" as the sites remain independent.

= Server-side components =

* Build/deploy: GNU Make/Unix shell
* Testing: none yet (planned: PEAR::PHP_Unit)
* DB interface: PEAR::DB_DataObject with MDB2 backend
* Input validation: PHP filter functions (planned: PEAR::Validate / PEAR::Akismet2)
* Caching: none (planned: PEAR::Cache_Lite / Zend opcache)
* Template system: PHP files (planned: mustache)

= Client-side components =

* Included javascript libraries: jQuery, Lab.js
* Image lazy load: none
* Resource compression/packing: none

= Example site =

Consider it something like a "hello world". It just defines the minimum elements required to show a simple page.
Have a look at the code in the sites/example_site folder.
Build the site by running "make" in aftertime's main folder, and browse to the "build" folder to get the site's main page.
<commit_msg>Add some more general guidelines<commit_after>Aftertime
=========

Mission: to be an experimental web framework that implements unconventional ideas

* Don't abstract everything. Use the underlying system. Stop looking away.
* Easy-going on the inside; every site is different. Get code available for common web problems, but don't enforce it.
* Up-to-date technologies. Actively fight code bloat and legacy code and bit rot in general.
* Think on multiserver from the beginning.

= More specific objectives =

* Be aware of the underlying system and use it (i.e. operating system, HTTP server, available packages and modules, etc)
* Uses multiple external libraries and dependencies, the way of the traditional linux package systems. Try to get the jobs that's already done and improve on it instead of creating something from scratch. Gets new features by upgrading the external dependencies
* Always updated. The lastest stable aftertime version will *track* the latest released Ubuntu version. I.e. Ubuntu 13.10 includes PHP 5.5, so it can be used, and any hacks for previous PHP versions will be removed on sight.
* Very lightweigh "App" base class. 
* Good logging and debugging mechanism. Because this represents 90% of the work
* Scale your site from unprivileged shared server to multiple servers
* Multiple deployment: the same commands allow you to use the build site from the development environment, deploy it in a shared hosting configuration, or in a multiple server one with replicated tiers.
* Multiple site development, within the same aftertime instance. Note that this does not mean "multisite" as the sites remain independent.

= Server-side components =

* Build / deploy: GNU Make + git / Unix shell 
* Testing: none yet (planned: PEAR::PHP_Unit)
* DB interface: PEAR::DB_DataObject with MDB2 backend
* Input validation: PHP filter functions (planned: PEAR::Validate / PEAR::Akismet2)
* Caching: none (planned: PEAR::Cache_Lite / Zend opcache)
* Template system: PHP files (planned: mustache)

= Client-side components =

* Included javascript libraries: jQuery, Lab.js
* Image lazy load: none
* Resource compression/packing: none

= Example site =

Consider it something like a "hello world". It just defines the minimum elements required to show a simple page.
Have a look at the code in the sites/example_site folder.
Build the site by running "make" in aftertime's main folder, and browse to the "build" folder to get the site's main page.

{'fraction_non_alphanumeric': 0.0600216684723727, 'fraction_numerical': 0.004333694474539545, 'mean_word_length': 4.712871287128713, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5841466', 'n_tokens_mistral': 1192, 'n_tokens_neox': 1113, 'n_words': 654}