My projects
Here, I present some of my private projects, which were often mentioned in international media.
Web development
I embraced modern web technologies early on, focusing on platform-independent software solutions. Over the years, this has resulted in a wide range of projects, from small tools to sophisticated web applications.
HexEd.it - Browser-based Hex Editing
2013+ HexEd.it is the first client-side JavaScript-based hex editor. Analyze and edit files wherever you want without having to install software. It runs under any operating system, in all modern browsers.
HexEd.it is used for training purposes in many schools and universities around the world, has already been translated into over 40 languages and has more than 9000 unique visitors use the app every day.
https://hexed.itOutlook Email Attachment Extractor
2025 The Outlook Email Attachment Extractor is a web application that extracts and saves all attachments from multiple Outlook email files (.msg) with one click simultaneously - directly in the web browser without software installation or the time-consuming individual selection required in Outlook.
https://www.duttke.de/en/outlook-email-attachment-extractor/Leia Image Format (LIF) Decoder
2023 Decoder for Leia Image Format (LIF) images. The Leia Image Format (LIF) is based on JPEG files that include additional metadata. This metadata contains depth information, bokeh effects, and one or more embedded images, such as stereo pairs. These files can be captured and viewed using Leia devices, such as the Leia Lume Pad 2, which is specifically designed for displaying 3D and lightfield content.
https://www.duttke.de/en/lif/Base64 Online Encoder / Decoder
2009 / 2020 This JavaScript-based Base64 online encoder enables plain text to be converted into Base64-encoded text and vice versa. In addition, it allows any text and binary files to be encoded into data URLs.
https://www.duttke.de/en/base64/WalkingPad Bluetooth Connection Test
2022+ This page allows you to connect to a KingSmith WalkingPad and other branded devices via the Web Bluetooth API to view and change various treadmill settings.
https://www.duttke.de/en/walkingpad/Regular Expression Validator
2009 This JavaScript-based validator for regular expressions allows regular expressions to be built and tested with the various JavaScript RegExp functions.
https://regexp.duttke.de
Open Source
Some of my tools and libraries are available as open source on GitHub and can be directly integrated into projects via npm. I am glad when my solutions can be helpful to other developers.
check-outdated
2019+ Command line tool which can be integrated into your own projects to ensure that the Node.js dependencies used are up-to-date.
https://www.npmjs.com/package/check-outdatedJSQR - JavaScript Quick Response Code Encoder Library
2011 JSQR was the first JavaScript library that is able to generate QR codes directly in the user's web browser - without queries to a web server and thus e.g. also in offline mode for mobile web apps.
https://jsqr.deXML2JSON.XSL
2009 This highly optimized XSLT 1.0 stylesheet transforms XML data into a valid JSON format (JavaScript Object Notation).
https://xml2json.duttke.de
Browser games
Having always been passionate about computer games, I have also created a number of browser-based casual games.
Macuro - A different kind of Sokoban
2009-2010 Macuro is a unique Sokoban puzzle game.
The goal of the game is to use the green cube to roll all colored cubes onto the floor area with the same color. The green cube is controlled by the player and can dock other cubes, similar to an electromagnet - hence the name MAgnetic CUbe ROlling.
https://macuro.deDice Rolling
2015 Dice Rolling is a logic game with the goal to move cubes on given target areas. With every interaction the number of eyes on the moving cube is reduced. At the end, all dice on the target areas need to have no more eyes left.
https://www.duttke.de/projects/dicerolling/Kakuro
2008 Kakuro is a kind of crossword puzzle, but with numbers instead of letters and sums instead of word definitions.
An interesting game in my opinion, which is as popular as Sudoku in Japan and can be played online here in my browser-based implementation.
https://kakuro.duttke.deCrazy Movin'
2002 Crazy Movin' is a combination of pipe laying and sliding puzzle, inspired by similar puzzles in the game Oxyd® from Dongleware.
The adjacent pipe stones can be moved in the direction of the arrow using arrow stones. The last stone is used again in the first position so that the stones can be pushed endlessly in a circle. The aim of the game is to close all parts of the pipe.
The game is available in an English version and has been adapted to the possibilities (in 2002) of all common web browsers.
https://www.duttke.de/projects/crazymovin/Nine Men's Morris
2001 Nine Men's Morris, also known as mill game, is the first of my published JavaScript-based projects.
It is played against the computer that I have tried to give a high level of artificial intelligence to. So I optimized the game to defeat all mill programs available at the time.
https://www.duttke.de/projects/nmm/
Software projects
Programming languages are constantly evolving, and few remain relevant for long. My projects in Assembler and Visual Basic Classic nevertheless taught me early on the importance of efficient and high-performance programming.
I still apply this knowledge today, for example in web projects using JavaScript or in specialized applications with MonkeyC for Garmin devices. Many older projects remain active. PhotoME has over 30,000 users, and the website for the psx emulation cheater reached more than four million page views ten years after its last release.
Garmin Apps
2022+ Garmin's Connect IQ Store allows you to submit your own apps and data fields for its sports watches.
I have developed various apps and data fields for this, including one that makes the Xiaomi/KingSmith WalkingPad treadmill controllable from the watch and the recorded data evaluable in the Garmin Connect Dashboard.
The apps have now been downloaded more than 10,000 times.
https://apps.garmin.com/en-US/developer/8cb871b5-2a6c-4a75-a350-99f1945f3d36/appsStereo Photo Optimizer
2025 Stereo Photo Optimizer is an Android app for the Leia LumePad 2 that lets you enhance stereoscopic side-by-side photos directly in 3D.
Leveraging the LumePad 2's lightfield display, you can instantly preview and adjust convergence, alignment, color, noise reduction, and depth - seeing your changes in real 3D as you work.
https://forums.leialoft.com/t/stereo-photo-optimizer-new-app-for-sbs-3d-image-correction/6181PhotoME
2006-2009 PhotoME is a free viewer and editor for metadata in image files.
In addition to the Exif data created by digital cameras, PhotoME also reads and writes IPTC-NAA metadata, ICC profiles, MakerNotes from numerous manufacturers, as well as countless other metadata and file formats.
With over 30,000 active users worldwide, PhotoME is arguably my most popular program and is still regularly mentioned in the press. Thanks to the support of many helpers, the software is available in 17 languages.
https://www.photome.deOxyd® extra v2
2004-2005 Oxyd® was one of the most popular games from Dongleware in the early 1990s.
In 2005 a remake developed by me was released as official sequel to Oxyd® - a great honor for me, an Oxyd® fan myself.
Beside additional levels designed by me, the game also offered the opportunity for two to play over the Internet and LAN.
https://de.wikipedia.org/wiki/Oxydpsx emulation cheater
1999-2004 The 'psx emulation cheater' short [pec] offers the possibility to use GameShark cheat codes in PlayStation emulators.
In collaboration with the then largest GameShark code websites, I was able to build a huge database of pre-made codes for almost all PlayStation games. With [pec] it is also possible to find your own codes and then use them with the original PlayStation hardware.
Articles about [pec] can be found in various computer journals.
https://pec.duttke.deCyberPad
2001-2003 CyberPad is a unique add-on module for PlayStation emulators, programmed by me in Assembler, which enables PlayStation games to be played over the Internet and LAN.
Long before Sony made online gaming possible with the PlayStation 3 in 2006, gamers could use CyberPad to play PlayStation games against friends all over the world - an ISDN Internet connection, which was common at the time, was sufficient.
Various specialist journals have also published articles about this program.
https://cyberpad.duttke.deBlini!
1999-2000 Blini! is a tool for the rather cryptic configuration file of the PlayStation emulator Bleem! to read out and edit easily, as well as to display compatibility information and statistics.
Blini! was my first program published on the Internet and laid the foundation for many more projects.
https://blini.duttke.de