enderlit.

enderlit.

Пишу код для того, что мне интересно. Сейчас это порт Persona 3 Portable на New 3DS, офлайн-библиотека аниме и музыкальный плеер.

Иногда это веб-бэкенд, иногда C++ и дизассемблер. Если задача интересная, стек вторичен.

Проекты

P3P3DS

C++ / New Nintendo 3DS

Persona 3 Portable, которая запускается на New Nintendo 3DS нативно. Без эмулятора: код PSP статически перекомпилирован в C++ и собран под ARM-процессор консоли.

  • 751 674 инструкции PSP перекомпилированы в 237 файлов C++; то, что пропустил статический анализ, исполняет интерпретатор.
  • На настоящей New 3DS: титульный экран, новая игра и первые дни до 30 fps, отрисовка на GPU PICA200. Сохранения работают.

AnimeBox

Python / FastAPI / React / TypeScript

Локальная библиотека аниме: поиск по нескольким источникам, онлайн-просмотр, загрузка серий и просмотр без интернета.

  • Один портативный архив для Windows, Linux (включая Steam Deck) и macOS. Python и FFmpeg уже внутри, ставить ничего не нужно.
  • Серии хранятся обычными файлами; библиотека и прогресс просмотра работают офлайн.

Enderlit Player

Python / PySide6 / Windows

Небольшой десктопный плеер для тех, кто хранит музыку по папкам.

  • Альбомы группируются по папкам, а не по тегам. Обложки из файла или cover.jpg.
  • Плейлисты, порядок треков и редактирование тегов, интерфейс на русском и английском. Готовый .exe для Windows.

Проекты поменьше — на GitHub.

Чем пользуюсь

Низкий уровень
C++, MIPS и ARM, статическая рекомпиляция, devkitARM и homebrew для 3DS, кодовые базы эмуляторов и рекомпиляторов
Веб и бэкенд
Python, FastAPI, TypeScript, React, Next.js, PostgreSQL, SQLAlchemy
Десктоп
PySide6 (Qt), портативные сборки со всем необходимым внутри
Серверы
Linux, nginx, Docker. Этот сайт работает на моём сервере.

Связаться

Есть интересная задача, идея или вопрос по проектам? Быстрее всего ответа можно дождаться в Telegram.