It does not cover commercial work for my clients/employers:
things I've done as an employee/consultant/contractor - go to my portfolio or find my CV for details
development done for Kemu Studio clients - look at Kemu Studio portfolio for more info
Main stream
Web
Most of my web-code is Javascript (ES6, CoffeeScript, node.js) and PHP. I do full stack: frontend and backend. I moved most of the new development to node.js - abandoning PHP.
I love webGL and Web Sockets. And all new-and-shiny features of HTML 5 in general.
I used a lot of BSC (Browser-Server-Common) code. Good code once written and tested works on both server and client.
The code is full OOP, MVC, reactive etc. lot of 3rd party/open-source code, React.js, jQuery, lot of npm packages (no Angular.js - it's retarded).
I heavily use TDD (Test Driven Development):
Core API tests driven by mocha.js running on node.js.
GUI tests with Selenium in javascript also with mocha.js as a test-suite driver. I use Karma from time to time, mostly to run remote tests on exotic/old platforms.
Public web projects are:
Calculla: calculla.pl i calculla.com Server-side in node.js on in-house engine on top of express and jake as build engine (gulp/grunt is just a toy). Mix of Javascript ES6 and Coffee-script used for Browser and server code. A lot of growth is planned: more calculators, smart search, social stuff (user comments, permalinks, data sharing), user-developed calculators (wiki style)... Calculla completely moved from PHP to node.js in January 2017 with new GUI/look&feel in webGL+SVG. CSS+images design is not used, as CSS is used only for layout/font/margin stuff.
node.js + express to serve content: server response with full HTML is less than 40 ms (with gzip involved)
WebGL to render design, no PNGs, no heavy CSS - all GUI rendered efficiently through WebGL shaders
Websocket as main content transport: no HTML reloads, on-site navigation with dynamic content loading through extra-fast Websockets protocol, with fallback to AJAX, and then fallback to static reloads in worst case
Kemu Panel: ke.mu/panel The panel is a central part of most Kemu services. It gives our users single point of authorisation and management to Kemu Services: for example Content Management (CMS) to websites of our clients.
The panel is 10+ years old, however it is now being rewritten to new-tech style (websocks and GL):
The panel GUI rewrite is inspired by this movie, so it's going to be similar in look'n'feel. Light webGL animations everywhere to help GUI cooperate with user, but nothing too distracting. A mix of HTML with heavy webGL Canvas support is used.
Most of the features are exposed by public HTTP/JSON API (websockets or AJAX) - for 3rd party use.
Services provided by panel:
Simple services for any user: Kemu Note, Kemu Task-List, Kemu Bookmarks
Nodected Advanced Node: for example as Arbitrary Waveform Generator with high-spec requirements (14 bit, 25 MSps, procedural waveforms or 500 MS storage)
Nodected Cloud: node.js, Javascript/CoffeeScript
Web API - for secure data storage (params logging) and control
Kemu Panel - for secure web GUI
Android and other mobiles - for mobile GUI's
Side stream
Small open source projects:
Kemu BBCode - node.js package for modern BB-Code implementation with full TDD suite (released on github and npm)
bjson.org - it's just a specification and some implementations of it
Nate - Not Another Template Engine - PHP and JS implementation are done already. To be published.
Some small non-open-source projects: All public API-s will be moved to one place, to become a part of Kemu Panel and Kemu API.
Logging APIs and Log Browser Logger for PHP is here: CodeCanyon Idea is to use logger for Nodected and to give it to 3rd parties for any kind of use.
Ultimate Log Browser Qt/GL based, modern GUI for logs browsing - still in development. Works on serial port only at the moment. Fully scriptable in JavaScript through QT JS engine.
Clipboard Studio - aka AshTray The kind of advanced CTRL+C managing software done in QT + openGL It's connected to Kemu Panel: The CTRL+C on PC exports the thing to panel It's full desktop interface to Kemu Note, Kemu Tasks and other services. Fully scriptable in JavaScript through QT JS engine.
Archive stream
The stuff which is just there, not really maintained anymore, but not really dead too:
eXpErImEnTs - look at "eXpErImEnTs" part of this website
JavaScript failed ! So this is static version of this website. This website works a lot better in JavaScript enabled browser. Please enable JavaScript.