A collection of JavaScript and HTML projects from early web development days
A collection of physics simulations created during university studies. These interactive visualizations demonstrate particle physics concepts including "ideal gas" and "Brownian motion", plus a physics-based volleyball game, all using JavaScript. This was an attempt to create a 2D physics sandbox.
Background: During university, we studied numerical calculus methods including Euler integration, Runge-Kutta methods, and Verlet integration for solving differential equations. These simulations apply these numerical methods to real physics problems, demonstrating particle collisions, velocity distributions, statistical mechanics, and how different integration techniques affect accuracy and stability in particle simulations.
Online questionnaire implementing the MMPI (Minnesota Multiphasic Personality Inventory) test for Career Guidance. Features sequential question navigation, answer tracking, and result export.
This was my experiment with dynamic forms and data processing. The system allows users to navigate through multiple questions sequentially, with the ability to go back and forth, save progress, and export results. It demonstrates early web-based form handling and client-side data processing techniques.
Classic Tetris game implementation in JavaScript. Features standard Tetris gameplay with falling tetromino pieces, line clearing, and score tracking.
An early dynamic HTML experiment focused on creating a self-playing Tetris. From v1.4 onward, versions include an AI "Computer plays" mode using a BestPosition algorithm for optimal piece placement. This was my exploration into AI gameplay years before it became mainstream. The AI occasionally makes mistakes due to race conditions in the legacy JavaScript code, adding an element of unpredictability. Self-play AI available in v1.4+, v1.5, and Modern (not in v1.3 Beta).
A text-to-speech book reading tool that loads HTML/text pages and reads them aloud with text highlighting. I used this tool to read many books from free online libraries like lib.ru.
The original version used Microsoft Agent technology with text-to-speech synthesis. Microsoft Agent was an animated character system (like the Office Assistant) that appeared as an animated parrot (Peedy) on screen while reading. This technology required Internet Explorer with ActiveX support and is no longer available in modern browsers.
Note: The original versions require Microsoft Agent and ActiveX support, which only works in old Internet Explorer browsers. The modernized version uses Web Speech API and works in modern browsers, but can only access iframe content from the same domain (CORS restrictions).
A dynamic menu system with site map generation. Features hierarchical menu structures defined in XML, automatic site map generation from menu data, and support for locked/unlocked menu items. Includes recursive menu exploration and HTML site map output.
A menu management system that generates site maps automatically from menu definitions. Supports nested menu structures, locked items that require unlocking, and generates navigable HTML site maps showing the complete site structure.
Note: The original version uses ActiveX (Microsoft.XMLDOM) and document.all, which do not work in modern browsers. The modern version recreates the same functionality using standard DOM and embedded menu data.
A complete personal website from 2004 featuring a multi-page portfolio, interactive games, and various web applications. The site includes a modernized menu system, draggable widgets (clock and links), chess and Tetris games, portfolio showcase, resume, webcam integration, comics, Winamp skins gallery, and a collection of JavaScript utilities.
This was my personal homepage project showcasing web development skills, portfolio work, and interactive JavaScript applications. The site features a hierarchical XML-based menu system (Menushnik), draggable floating widgets, multiple games (Chess with emoji pieces, Tetris), portfolio pages with image galleries, webcam integration, comics, and various utilities. The original site used Internet Explorer-specific features (ActiveX, document.all) which have been modernized to work in current browsers while preserving the original design and functionality.
An interactive chart visualization tool built with Kinetic.js and HTML5 Canvas. The solution features draggable client cards that are rendered in canvas, allowing users to interactively arrange and connect data cards. Features dynamic chart generation, interactive sliders, and mockup generation capabilities. Includes comprehensive documentation and examples.
This was a work project from 2013 to improve one of Microsoft Dynamic CRM / SharePoint plugins. The task was to convert the existing Flash-based chart visualization to HTML5, making it compatible with modern browsers and mobile devices. Built using Kinetic.js for canvas manipulation and HTML5 technologies to replace Flash functionality.
The solution draws "cards" and connects them with paths. The path drawing algorithm uses A* graph path search to find optimal routes between connected cards.