maimat (Mass Images Manipulation Tool) — это инструмент с открытым исходным кодом, предназначенный для пакетной обработки изображений: изменения размеров и сжатия. Приложение написано на Python 3.10+ и использует ImageMagick в качестве движка обработки.
-
Aleka — кроссплатформенное приложение для рисования на Flutter
Aleka — это лёгкое, быстрое приложение для рисования, написанное на Flutter. Оно работает везде: в браузере, на десктопе (Windows, macOS, Linux) и на мобильных устройствах (iOS, Android).
Под капотом — чистый Dart, Material 3 и внимание к деталям.
Возможности
- Рисование от руки: плавные штрихи с квадратичной интерполяцией Безье.
- Палитра из 15 цветов: быстрый выбор с визуальной индикацией.
- Размер кисти: регулируется слайдером от 1 до 30 px.
- Отмена (Undo): шаг назад по вашим штрихам.
- Очистка холста: одним нажатием.
- Заливка (Flood Fill): BFS с tolerance для сглаженных краёв.
- Сохранение: формат
.aleka(JSON). - Загрузка: открывайте ранее сохранённые рисунки и продолжайте.
- Экспорт PNG: захват холста в 3x разрешении.
- 🎬 Режим анимации: покадровая анимация с временной шкалой:
- Добавление и удаление кадров, каждый со своим рисунком.
- Длительность кадра от 50 мс до 5 с.
- Смена FPS: 6, 8, 12, 15, 24, 30 или 60.
- Экспорт в MP4 (через ffmpeg на десктопе, ffmpeg.wasm в браузере).
- Тёмная и светлая тема: Material 3, следует за системой.
Почему Flutter?
Flutter позволяет писать одно приложение для шести платформ без дублирования кода. Aleka использует только нативные возможности Dart и Flutter SDK и минимум сторонних зависимостей:
file_picker,imageдля работы с пикселями при заливке,ffmpeg_wasmдля экспорта видео в браузере.Архитектура
Проект придерживается принципов чистой архитектуры и SOLID:
- PaintCanvasController — управляет состоянием штрихов и заливки через паттерн Listener/Observer.
- PaintToolbar — UI-компонент палитры, ползунка и кнопок.
- AlekaFile — сериализация/десериализация в JSON, захват PNG.
- MovieController — модель кадров и состояния анимации.
- VideoExport — инкапсулирует логику кодирования MP4 (десктоп/веб).
Функции ввода-вывода (
saveStrokes,loadStrokes,capturePngи др.) сделаны injectable — их можно заменять на моки при тестировании. В проекте 79 тестов: проверка сериализации, отмены, загрузки/сохранения, экспорта PNG и видео, модели кадров и временной шкалы.Формат файла .aleka
Файл
.aleka— это читаемый JSON, который можно открыть в любом текстовом редакторе:"aleka": "1.0", "strokes": [ { "color": 4278190080, "strokeWidth": 3.0, "points": [[100.0, 200.0], [150.0, 250.0]] } ] }Каждый штрих хранит цвет (ARGB32), толщину и массив точек. Формат версионирован полем
aleka.Режим анимации
Одна из ключевых фич — встроенный редактор покадровой анимации. Вы рисуете кадр, добавляете новый, рисуете следующий — и так далее. Временная шкала показывает миниатюры, позволяет менять порядок и длительность кадров. Готовую анимацию можно экспортировать в MP4.
Алгоритм экспорта перебирает все кадры, захватывает их через
RepaintBoundary, собирает PNG-байты и передаёт в энкодер. На десктопе вызывается системный ffmpeg, в браузере используется ffmpeg.wasm — полноценный порт ffmpeg в WebAssembly, работающий прямо в песочнице браузера.Заливка (Flood Fill)
Реализация заливки использует поиск в ширину (BFS) с допуском по цвету (
_kFillTolerance = 1000). Это позволяет корректно обрабатывать сглаженные края штрихов — заливка не вытекает за контур, но захватывает полупрозрачные пиксели на границе. Для пустого холста создаётся сплошная заливка без лишних вычислений.Попробовать
Aleka доступна в вебе и как нативное приложение:
demensdeum.com/software/aleka/
Исходный код открыт под лицензией MIT:
-
Mama Calendar — кроссплатформенное приложение для напоминаний
Mama Calendar — это кроссплатформенное приложение для событий и напоминаний, написанное на React Native (Expo) с двумя реализациями бэкенда: Node.js + MongoDB и PHP + MariaDB.
Приложение позволяет создавать события с эмодзи-категоризацией, выбирать тип повторения (однократно, ежегодно, ежемесячно, еженедельно, ежедневно) и просматривать важные события на ближайшие 3 дня на отдельной вкладке «Important Events».
Стек технологий
Фронтенд написан на React Native 0.86 через Expo SDK 57 с TypeScript, Expo Router для навигации и
react-native-reanimatedдля анимаций. Для иконок используется expo-symbols (SF Symbols на iOS, Material иконки на Android/Web).Бэкенд реализован в двух вариантах:
- Node.js: Express 4, MongoDB 8 через нативный драйвер, самописная аутентификация с scrypt + salt, ручное управление токенами. Docker Compose поднимает клиент (nginx), сервер и MongoDB.
- PHP: PHP 8.2 без фреймворков, PDO + MariaDB 11, bcrypt для хеширования паролей, свой роутер и PSR-4 автолоадинг через Composer.
Функции приложения
- Регистрация и авторизация: простая система с username/password и Bearer-токенами
- CRUD событий: создание, просмотр, редактирование и удаление событий с датой, эмодзи и типом повторения
- Умная фильтрация: вкладка Important Events показывает события на ближайшие 3 дня с учетом правил повторения. Например, ежегодные события показывают ближайшее годовое вхождение, ежемесячные — по дню месяца, еженедельные — по дню недели
- Эмодзи-пикер: 20 предустановленных эмодзи для быстрой категоризации событий
- Подсветка сегодняшних событий: события на сегодня выделяются красным фоном (#B71C1C)
- Тёмная тема: автоматическое определение системной цветовой схемы с отдельными палитрами для светлой и тёмной темы
- Интернационализация: русский и английский языки через React Context
- Анимации: анимированный сплэш-скрин с Keyframe API и упругой интерполяцией, анимированная иконка приложения с вращающимся свечением
- Админ-эндпоинты: управление пользователями, токенами и очистка базы через мастер-токены
Почему две реализации бэкенда?
Node.js версия является основной, но PHP вариант существует как альтернатива для более классического хостинга. API полностью идентичен, что позволяет переключаться между ними без изменения клиентского кода.
Инфраструктура
Весь стек поднимается через Docker Compose: клиент собирается через мультистейдж билд (Expo export → nginx alpine), сервер на Node.js, MongoDB 8. Для PHP-версии есть отдельный compose-файл с MariaDB 11 и phpunit для тестов.
Сборка веб-версии автоматизирована PowerShell-скриптом, который патчит API_URL перед
expo exportи восстанавливает оригиналы после.Вывод
Mama Calendar — это полнофункциональное кроссплатформенное приложение, которое покрывает полный цикл: от мобильного и веб-фронтенда на React Native до двух вариантов серверной части. Проект интересен своей архитектурой, использованием современных возможностей Expo SDK и двойной реализацией бэкенда.
Ссылки
https://github.com/zefir1990/Mama-Calendar
https://demensdeum.com/software/mama-calendar/events -
Donki Hills
Donki Hills — это приключенческий комедийный хоррор от первого лица, в котором игроку предстоит погрузиться в загадочную историю, сочетающую напряженную атмосферу с элементами неожиданного юмора.
Главный герой Джеймс отправляется на поиски своей интернет-знакомой Марии, связь с которой внезапно оборвалась. Единственной уликой является случайная фотография, указывающая на отдаленную деревню Доньки Хиллс в Новосибирской области. Движимый желанием докопаться до истины, Джеймс начинает собственное расследование, чтобы выяснить все обстоятельства исчезновения Марии.Игра доступна в Steam:
https://store.steampowered.com/app/3476390/Donki_Hills/ -
Masonry AR
Masonry AR — это геолокационная многопользовательская игра с элементами дополненной реальности (AR), погружающая вас в мир тайных обществ. Исследуйте улицы вашего города, собирайте масонские книги знаний, основывайте собственные ложи и соревнуйтесь за влияние на карте реального мира.
Ключевые особенности
- Геолокационный геймплей: передвигайтесь в реальном мире, используя GPS вашего устройства для поиска секретных книг и ресурсов.
- Режим автоходьбы (Autowalk): если доступ к GPS ограничен, вы можете запустить режим автоходьбы, выбрав в качестве отправной точки одну из мировых столиц.
- Создание лож: основывайте масонские ложи на реальной карте и расширяйте влияние вашего ордена.
- Внутриигровая экономика: зарабатывайте игровую валюту (MOS), развивайте свои территории и делитесь реферальными ссылками с друзьями.
- Кроссплатформенность: игра работает непосредственно в веб-браузерах на мобильных устройствах и ПК благодаря игровому движку Flame Steel Engine 2 с рендерингом на базе Three.js.
-
Teflecher

Teflecher — это быстрое, интерактивное, кроссплатформенное приложение-квиз, созданное на основе Kotlin Multiplatform (KMP) и Compose Multiplatform. Оно позволяет пользователям интуитивно загружать викторины из локальных JSON-файлов или удаленных URL-адресов, отвечать на вопросы с несколькими вариантами ответа, мгновенно видеть обратную связь о правильности ответов и отслеживать свои результаты.Web:
https://demensdeum.com/software/teflecher/GitHub:
https://github.com/zefir1990/teflecherТакже редактор квизов формата Teflecher Editor на основе технологий Ionic + Capacitor
-
Ghost Contacts

Ghost Contacts — это простое веб-приложение, созданное с целью скрыть ваши контакты от стандартных системных API и телефонных книг. Вся информация хранится исключительно локально в вашем браузере и не передается на внешние сервера.Основные возможности
- Скрытие от системных API: Ваши контакты не синхронизируются со стандартными системными API контактов и телефонной книгой устройства.
- Экстренный пароль (Panic Password): Специальный пароль, при вводе которого вся база контактов моментально и безвозвратно удаляется.
- Импорт и экспорт: Удобный перенос базы контактов через файлы формата CSV для создания резервных копий.
Приложение онлайн:
https://demensdeum.com/software/ghost-contacts/ -
Cube Art Project 2
Добро пожаловать в Cube Art Project 2 — медитативный трехмерный холст, где вы можете дать волю своему воображению. Создавайте воксельные картины, экспериментируйте с цветами и воплощайте уникальные 3D-модели прямо в вашем браузере.
Что такое Cube Art Project 2?
Это творческая игра, превращающая ваш экран в интерактивный холст для объемной живописи. Перед вами чистое трехмерное пространство, готовое наполниться вашими идеями, фигурами и яркими красками.
Ключевые особенности
- Трехмерное рисование: расслабляющий творческий процесс, сфокусированный на создании воксельного искусства и 3D-геометрии.
- Палитра цветов: точная настройка оттенков каждого блока с помощью удобных RGB-слайдеров.
- Свобода перемещения: исследуйте свои картины под любым углом с помощью удобного управления камерой.
- Сохранение холстов: сохраняйте ваши работы в файлы и возвращайтесь к рисованию в любое время, либо делитесь своими работами с другими.
Управление
- WASD — перемещение камеры
- Мышь — вращение камеры и осмотр
- Интерфейс (GUI) — выбор и настройка цвета
-
Raiden Video Ripper
Raiden Video Ripper — это проект с открытым исходным кодом, предназначенный для редактирования видео и конвертации форматов. Он создан с использованием Qt 6 (Qt Creator) и позволяет осуществлять монтаж и конвертировать видео в форматы MP4, GIF и WebM. Вы также можете извлекать аудио из видео и конвертировать его в формат MP3.
Microsoft Store:
https://apps.microsoft.com/detail/9nvzjs98smgcGitHub:
https://github.com/demensdeum/RaidenVideoRipper/releases -
Mars Miners
В суровых условиях красной планеты каждая секунда и каждый сектор на счету. Мы рады представить Mars Miners — пошаговую стратегическую игру, где вам предстоит бороться за выживание колонии и контроль над ценными марсианскими ресурсами.
Что такое Mars Miners?
В Mars Miners вы управляете добывающей корпорацией на Марсе. Ваша задача — строить базы, захватывать ресурсные секторы и координировать действия автономных шахтерских юнитов в условиях жесткой конкуренции с искусственным интеллектом или другими игроками.
Ключевые особенности
- Тактическая стратегия: планируйте развитие базы и захват территории, просчитывая ходы соперников наперед.
- Автономные юниты: координируйте действия роботов-добытчиков и настраивайте их логику для максимальной эффективности.
- Разнообразные режимы: оттачивайте свои навыки на одиночных учебных полигонах или соревнуйтесь с другими колонистами в многопользовательском режиме.
- Продвинутый ИИ: ведите борьбу за ресурсы против умных автоматонов, которые не прощают тактических ошибок.
-
Flame Steel: Death Mask 2
В бескрайних, залитых холодным светом коридорах индустриальной мегаструктуры вас ждет новое испытание. Мы рады представить Flame Steel: Death Mask 2 — трехмерный dungeon crawler, сочетающий классическую эстетику с современным игровым процессом в реальном времени.
Что такое Flame Steel: Death Mask 2?
Представьте, что вы просыпаетесь в процедурно генерируемом лабиринте, где за каждым поворотом может скрываться враждебная сущность «Фильтр». В Flame Steel: Death Mask 2 вы примерите на себя роль Искателя, исследующего мир, построенный на движке Flame Steel Engine 2 (с графическим рендером Three.js).
Ключевые особенности
- Процедурные подземелья: каждая попытка уникальна. Сервер создает новые карты, полные тайн и опасностей.
- Терминал: для тех, кто предпочитает полный контроль — встроенный интерфейс командной строки позволяет взаимодействовать с системой напрямую: выполнять продвинутые действия, проводить отладку или отправлять команды.
- Бой и выживание: сражайтесь с Фильтрами, чтобы зарабатывать биты, а затем используйте их для открытия сундуков и улучшения своих характеристик. Следите за здоровьем — выживание не гарантировано.
- Индустриальная эстетика: высококонтрастная визуализация и стерильная атмосфера гигантской мегаструктуры.
Технологии под маской
Игра создана для браузера и использует:
- Frontend: чистый JavaScript и движок Flame Steel Engine 2 (с графическим рендером Three.js) для плавного трехмерного рендеринга.
- Backend: Node.js для работы серверной части.
- Инфраструктура: MongoDB для постоянного хранения данных и Redis для пространственного индексирования в реальном времени.
-
Ushki Radio
Ushki-Radio — это кроссплатформенный радиоплеер для онлайн-радио, сделанный с упором на простоту и удовольствие от прослушивания. Без лишних функций, без перегруженных интерфейсов — просто включил и слушаешь.

https://demensdeum.com/software/ushki-radioПроект использует открытую базу Radio Browser, благодаря чему в приложении доступны тысячи радиостанций со всего мира. Их можно искать по названию, жанрам или популярности, добавлять в избранное и быстро возвращаться к любимым станциям.
Ushki-Radio отлично подходит именно для роли фонового радиоплеера: он запоминает последнюю станцию, позволяет управлять громкостью и не требует сложной настройки. Интерфейс лаконичный и понятный — всё сделано так, чтобы ничего не отвлекало от музыки, разговоров и эфира.
Технически проект построен на React Native и Expo, поэтому работает как в браузере, так и в виде нативного приложения. Под капотом используется expo-av для воспроизведения аудио, а пользовательские настройки хранятся локально. Есть поддержка нескольких языков, включая русский и английский.
Ushki-Radio — это хороший пример того, каким может быть современный интернет-радиоплеер: открытый, лёгкий, расширяемый и ориентированный в первую очередь на слушателя. Проект распространяется под лицензией MIT и отлично подойдёт как для личного использования, так и как база для собственных экспериментов с аудио-приложениями.
GitHub:
https://github.com/demensdeum/Ushki-RadioGoogle Play:
https://play.google.com/store/apps/details?id=com.demensdeum.ushkiradio -
Glazki TV: Современный плеер для интернет-телевидения
Glazki TV — это современный, высокопроизводительный плеер для интернет-телевидения (IPTV), построенный на базе React Native и Expo. Проект ориентирован на простоту использования и скорость работы, предоставляя удобный интерфейс для просмотра IPTV-каналов как на мобильных устройствах, так и в браузере.
Основные возможности
- Просмотр каналов: Просматривайте тысячи каналов, разделенных по категориям для удобной навигации.
- Поиск: Быстро находите нужные каналы по названию.
- Избранное: Сохраняйте любимые каналы для быстрого доступа (данные сохраняются локально).
- Deep Linking: Делитесь прямыми ссылками на каналы, которые открываются автоматически.
- Поддержка тем: Интерфейс автоматически адаптируется к системной темной или светлой теме.
- Веб-поддержка: Плеер полностью функционален в браузере с синхронизацией URL.
Технологический стек
В основе проекта лежат современные инструменты разработки:
- Framework: React Native + Expo
- Video Player: expo-video (замена устаревшему expo-av)
- UI Toolkit: react-native-paper
- Playlist Parser: iptv-playlist-parser
Веб версия:
https://demensdeum.com/software/glazki-tv/Google Play версия:
https://play.google.com/store/apps/details?id=com.demensdeum.glazkitv -
Zefir1990

Zefir1990 — Илья Прохоров, являюсь разработчиком с более чем 15-летним стажем коммерческой разработки. Основатель студии Demens Deum, занимающейся разработкой игр и приложений для мобильных, веб, десктоп систем. Первая 3D OpenGL ES 2 игра Mad Racer на Android 2 была выпущена в 2010 году, на проекте был программистом и дизайнером игры, также привлек к разработке композитора Антона Дмитриева (coolspotdreamer), после успешного запуска игры занимался заказной разработкой full-time и проектной в рамках контрактов. В числе клиентов — Декатлон, Playboy, Fitbit.Также являюсь автором статей на тему разработки программного обеспечения, игр, паттернов проектирования, алгоритмов, AI, в планах написать книгу об энтропии программного обеспечения.
Предпочитаемые языки программирования: ASM, C, C++, ObjC, Python, Kotlin, Swift, Java, Rust, Go, TypeScript, JavaScript, C#, Dart, PHP.
LinkedIn: linkedin.com/in/zefir1990
GitHub: github.com/zefir1990
Telegram: t.me/zefir1990
Email: ceo@demensdeum.com
Twitch: twitch.tv/zefir1990
Youtube: youtube.com/zefir1990








