<commit_before># Knorxx Framework

## News
26.05.2014: Java 8 is supported now

## Introduction

The Knorxx Framework allows to write a HTML/CSS/JavaScript frontend in pure Java. The driving force behind creating the Knorxx Framework was the lack of maintainability of HTML/CSS/JavaScript based frontends. The identifiers in all notations and between server and frontend code must be synchronized. This makes changes very hard and it's very difficult to figure out which parts of the application depend on each other. By using a pure Java codebase and constants to tie all parts together maintainability and analyzability are greatly improved.

The framework has the following features:
  - Despite using Java changes are immediately visible after browser reload
  - RPC calls and a message queue style communication is available
  - Almost no changes to the server side classes are necessary
  - Support for Source Maps which map the Java source to the generated JavaScript

The Knorxx framework uses a special ClassLoader to achieve the reloading of the Java classes (currently only tested in Netbeans). The JavaScript code is generated by [st-js]. Compared with writing plain st-js Java code Knorxx code needs considerably less annotations because the reloading ClassLoader is able to add them automatically. For writing HTML ([renderSnake]) and CSS ([genesis]) DSLs are used. The RPC calls are implemented by AJAX calls. Message queue style communication is implemented with the help of the [Atmosphere framework].

[st-js]: http://st-js.github.io
[Atmosphere framework]: https://github.com/Atmosphere/atmosphere
[renderSnake]: http://rendersnake.org
[genesis]: https://github.com/clementbtc/genesis

The Knorxx Framework is server-side framework independent. It integrates via an adapter into server-side frameworks. Currently only the Spring adapter is usable. A Java EE adapter is work in progress.
<commit_msg>added news about JAXenter.de article<commit_after># Knorxx Framework

## News
11.06.2014: [Article about the Knorxx Framework on JAXenter.de](http://jaxenter.de/artikel/Das-Knorxx-Framework-174063) (in German)
26.05.2014: Java 8 is supported now

## Introduction

The Knorxx Framework allows to write a HTML/CSS/JavaScript frontend in pure Java. The driving force behind creating the Knorxx Framework was the lack of maintainability of HTML/CSS/JavaScript based frontends. The identifiers in all notations and between server and frontend code must be synchronized. This makes changes very hard and it's very difficult to figure out which parts of the application depend on each other. By using a pure Java codebase and constants to tie all parts together maintainability and analyzability are greatly improved.

The framework has the following features:
  - Despite using Java changes are immediately visible after browser reload
  - RPC calls and a message queue style communication is available
  - Almost no changes to the server side classes are necessary
  - Support for Source Maps which map the Java source to the generated JavaScript

The Knorxx framework uses a special ClassLoader to achieve the reloading of the Java classes (currently only tested in Netbeans). The JavaScript code is generated by [st-js]. Compared with writing plain st-js Java code Knorxx code needs considerably less annotations because the reloading ClassLoader is able to add them automatically. For writing HTML ([renderSnake]) and CSS ([genesis]) DSLs are used. The RPC calls are implemented by AJAX calls. Message queue style communication is implemented with the help of the [Atmosphere framework].

[st-js]: http://st-js.github.io
[Atmosphere framework]: https://github.com/Atmosphere/atmosphere
[renderSnake]: http://rendersnake.org
[genesis]: https://github.com/clementbtc/genesis

The Knorxx Framework is server-side framework independent. It integrates via an adapter into server-side frameworks. Currently only the Spring adapter is usable. A Java EE adapter is work in progress.

{'fraction_non_alphanumeric': 0.049611626158857426, 'fraction_numerical': 0.008018040591330494, 'mean_word_length': 4.7771345875542695, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 4, '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': '5334880', 'n_tokens_mistral': 998, 'n_tokens_neox': 924, 'n_words': 540}