Please open Telegram to view this post
VIEW IN TELEGRAM
2👏14🔥7👍1😎1
🚀 YDX | GNOME — Фундамент готов
Еще один этап разработки позади — база первого нативного приложения заложена:
🧠 Rust Core
- Вся логика в Rust.
- GJS — тонкий UI.
🧭 Навигация
- Гость (
- Полная анимация переключений через GtkStack.
🔐 Безопасность | LibSecret
- Токены в зашифрованном хранилище.
- Автоочистка при смене версии.
⚙️ Настройки | GSettings
- Размеры окна.
- Версия для обновлений.
🎨 UI
- Валидация форм.
- Темная и светлая тема.
- Языки EN, RU, ZH.
📦 Стек
- Rust + GJS/GTK4/Adwaita + Meson + i18n.
🔗 https://gitcode.com/keygenqt_vz/ydx
Еще один этап разработки позади — база первого нативного приложения заложена:
🧠 Rust Core
- Вся логика в Rust.
- GJS — тонкий UI.
🧭 Навигация
- Гость (
Welcome → SignIn → SignUp) и Пользователь (Home).- Полная анимация переключений через GtkStack.
🔐 Безопасность | LibSecret
- Токены в зашифрованном хранилище.
- Автоочистка при смене версии.
⚙️ Настройки | GSettings
- Размеры окна.
- Версия для обновлений.
🎨 UI
- Валидация форм.
- Темная и светлая тема.
- Языки EN, RU, ZH.
📦 Стек
- Rust + GJS/GTK4/Adwaita + Meson + i18n.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7👍3
🚀 YDX | WinUI 3 — Фундамент готов
Windows-версия готова. Начинал на WPF — столкнулся с миганиями, тормозами и вечной борьбой с рендерингом. Понял, что выиграть эту битву не выйдет, переписал всё на WinUI 3. Костыли остались, но то, что на WPF было нерешаемо, на WinUI 3 хотя бы работает.
🧠 Rust Core
- Вся логика в Rust.
- WinUI 3 — тонкий UI.
- Архитектура — MVVM.
🪟 Навигация
- Гость (
- Плавная смена страниц с анимацией.
🔐 Безопасность | Windows Credential Manager
- Токены в защищенном хранилище.
- Проверка токена на сервере.
🎨 UI | WinUI 3
- Валидация форм с динамическими ошибками.
- Темная и светлая тема.
- Кастомные диалоги (About, Confirm).
- Языки EN, RU, ZH.
📦 Стек
- Rust + C# + WinUI 3.
🔗 https://gitcode.com/keygenqt_vz/ydx
Windows-версия готова. Начинал на WPF — столкнулся с миганиями, тормозами и вечной борьбой с рендерингом. Понял, что выиграть эту битву не выйдет, переписал всё на WinUI 3. Костыли остались, но то, что на WPF было нерешаемо, на WinUI 3 хотя бы работает.
🧠 Rust Core
- Вся логика в Rust.
- WinUI 3 — тонкий UI.
- Архитектура — MVVM.
🪟 Навигация
- Гость (
Welcome → SignIn → SignUp) и Пользователь (Home).- Плавная смена страниц с анимацией.
🔐 Безопасность | Windows Credential Manager
- Токены в защищенном хранилище.
- Проверка токена на сервере.
🎨 UI | WinUI 3
- Валидация форм с динамическими ошибками.
- Темная и светлая тема.
- Кастомные диалоги (About, Confirm).
- Языки EN, RU, ZH.
📦 Стек
- Rust + C# + WinUI 3.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4👍2🥱1
Идеальное приложение.
Начиная новый проект, вам всегда предстоит выбрать для него стек технологий. Обычно он ограничен задачами и навыками. Например, если вы знаете Kotlin — вы берёте Kotlin, если Swift — тянете его везде, если C++ — лучше даже не начинайте, если только вы не мазохист.
Но что, если для вас нет ограничений и вы хотите создать «идеальное приложение»? Вы можете выбрать любой стек на ваше усмотрение, а задачи и сроки вас не сдерживают. Какой стек вам покажется идеальным? Неужели Qt, KMP, Flutter, MAUI и прочее?
Когда пользователь открывает приложение и оно не реагирует на смену темы на вашей платформе, контролы из другого мира, нестандартные скроллбары, которые не живут там, где ожидаешь, — всё это мгновенно выдаёт «пришельца». Такое приложение заставляет пользователя подстраиваться под себя, вместо того чтобы вписаться в привычное окружение.
Платформ много, а если вы простой бизнесмен — ваш выбор прост: одна команда на каком-нибудь кроссплатформенном фреймворке, покрывающая максимальное количество популярных платформ. Вам нужно приложение не самое лучшее, а получить максимальный баланс между ценой и качеством. Ну не будет у вас приложения на HarmonyOS — да и ладно, не больно-то и надо (да и что это вообще за OHOS?). Но если у вас уже компания, ценящая своё приложение и пытающаяся в конкуренцию — тут выбор уже не так однозначен, и он не в пользу кроссплатформы.
Идеальное приложение — это приложение, написанное под платформу. Оно не заставляет пользователя гадать, как его закрыть, где искать настройки или почему оно ведёт себя не так, как все остальные программы. Оно живёт по правилам системы, а не создаёт свои. Создаёт у пользователя ощущение, что над приложением работали, а не сделали на скорую руку.
Если у нас большая компания и мы пишем какой-нибудь IMAX. У нас много конкурентов, которые давно на этом рынке — что мы можем предложить? Может быть, скорость и нативный экспириенс под все платформы? Да, это бы отличало приложение от многих других. Сложно ли это? Нужна ли под каждую платформу целая команда? Будут ли приложения дублировать бизнес-логику?
На все эти вопросы уже отвечает приложение YDX, разрабатываемое после работы, в одиночку. Мне не сложно, команда не нужна, бизнес-логика одна для всех платформ ;)
Начиная новый проект, вам всегда предстоит выбрать для него стек технологий. Обычно он ограничен задачами и навыками. Например, если вы знаете Kotlin — вы берёте Kotlin, если Swift — тянете его везде, если C++ — лучше даже не начинайте, если только вы не мазохист.
Но что, если для вас нет ограничений и вы хотите создать «идеальное приложение»? Вы можете выбрать любой стек на ваше усмотрение, а задачи и сроки вас не сдерживают. Какой стек вам покажется идеальным? Неужели Qt, KMP, Flutter, MAUI и прочее?
Когда пользователь открывает приложение и оно не реагирует на смену темы на вашей платформе, контролы из другого мира, нестандартные скроллбары, которые не живут там, где ожидаешь, — всё это мгновенно выдаёт «пришельца». Такое приложение заставляет пользователя подстраиваться под себя, вместо того чтобы вписаться в привычное окружение.
Платформ много, а если вы простой бизнесмен — ваш выбор прост: одна команда на каком-нибудь кроссплатформенном фреймворке, покрывающая максимальное количество популярных платформ. Вам нужно приложение не самое лучшее, а получить максимальный баланс между ценой и качеством. Ну не будет у вас приложения на HarmonyOS — да и ладно, не больно-то и надо (да и что это вообще за OHOS?). Но если у вас уже компания, ценящая своё приложение и пытающаяся в конкуренцию — тут выбор уже не так однозначен, и он не в пользу кроссплатформы.
Идеальное приложение — это приложение, написанное под платформу. Оно не заставляет пользователя гадать, как его закрыть, где искать настройки или почему оно ведёт себя не так, как все остальные программы. Оно живёт по правилам системы, а не создаёт свои. Создаёт у пользователя ощущение, что над приложением работали, а не сделали на скорую руку.
Если у нас большая компания и мы пишем какой-нибудь IMAX. У нас много конкурентов, которые давно на этом рынке — что мы можем предложить? Может быть, скорость и нативный экспириенс под все платформы? Да, это бы отличало приложение от многих других. Сложно ли это? Нужна ли под каждую платформу целая команда? Будут ли приложения дублировать бизнес-логику?
На все эти вопросы уже отвечает приложение YDX, разрабатываемое после работы, в одиночку. Мне не сложно, команда не нужна, бизнес-логика одна для всех платформ ;)
👍4❤2🔥1
Надеюсь, доживу до вакансий "Multiplatform Engineer", а не бесконечных "Android разработчик" и "iOS разработчик". (Вакансия шуточная, вдруг ещё такие найдутся 😁)
ВАКАНСИЯ: Multiplatform Engineer
Требуется:
Языки:
- Rust (чтобы core не падал)
- Swift (чтобы Apple нас любили)
- Kotlin (Google же попросил)
- C# (Windows без WPF/WinUI — не Windows)
- C++ (Qt — это классика, куда без неё)
- ArkTS (HarmonyOS — потому что можем)
- JavaScript (GTK под Linux, ну и веб тоже надо)
- Английский, Русский, Китайский (локализацию писать)
Фреймворки:
- SwiftUI (macOS, iOS — красиво)
- WinUI 3 (Windows 11 — нативно)
- GTK (Linux — без сюрпризов)
- Jetpack Compose (Android — современно)
- Qt/QML (Aurora OS — стандарт)
- ArkUI (HarmonyOS — и это тоже)
- React (фронтенд, потому все равно все знают)
- Axum (бэкенд, Rust — экономно)
- WASM, JNI, FFI (ядро на Rust надо с чем-то связать)
Будет плюсом:
- Умение спать меньше 4 часов
- Любовь к красоте и нативным скроллбарам
- Опыт отладки багов, которые не воспроизводятся днём
- Навык убеждать заказчика, что HarmonyOS — это не Android
- Готовность спорить с borrow checker'ом (и побеждать)
- Навык не путать WinUI 3 с WPF и не проклинать Microsoft при каждом обновлении SDK
Мы предлагаем:
- Зарплату, которой хватит на психотерапевта
- Возможность работать на 7 платформах одновременно
- Свободу в выборе технологий (всё равно выберете всё)
- Коллег, плачущих от восхищения над вашим кодом
- Возможность не объяснять на собеседованиях, зачем вы знаете 7 языков (сами догадаются)
ВАКАНСИЯ: Multiplatform Engineer
Требуется:
Языки:
- Rust (чтобы core не падал)
- Swift (чтобы Apple нас любили)
- Kotlin (Google же попросил)
- C# (Windows без WPF/WinUI — не Windows)
- C++ (Qt — это классика, куда без неё)
- ArkTS (HarmonyOS — потому что можем)
- JavaScript (GTK под Linux, ну и веб тоже надо)
- Английский, Русский, Китайский (локализацию писать)
Фреймворки:
- SwiftUI (macOS, iOS — красиво)
- WinUI 3 (Windows 11 — нативно)
- GTK (Linux — без сюрпризов)
- Jetpack Compose (Android — современно)
- Qt/QML (Aurora OS — стандарт)
- ArkUI (HarmonyOS — и это тоже)
- React (фронтенд, потому все равно все знают)
- Axum (бэкенд, Rust — экономно)
- WASM, JNI, FFI (ядро на Rust надо с чем-то связать)
Будет плюсом:
- Умение спать меньше 4 часов
- Любовь к красоте и нативным скроллбарам
- Опыт отладки багов, которые не воспроизводятся днём
- Навык убеждать заказчика, что HarmonyOS — это не Android
- Готовность спорить с borrow checker'ом (и побеждать)
- Навык не путать WinUI 3 с WPF и не проклинать Microsoft при каждом обновлении SDK
Мы предлагаем:
- Зарплату, которой хватит на психотерапевта
- Возможность работать на 7 платформах одновременно
- Свободу в выборе технологий (всё равно выберете всё)
- Коллег, плачущих от восхищения над вашим кодом
- Возможность не объяснять на собеседованиях, зачем вы знаете 7 языков (сами догадаются)
🤣5🔥3😁2
Я остаюсь в Telegram.
Первое и самое важное — я не блогер, я программист. Я часто вынужден использовать ресурсы, которым замены у нас просто нет: языки программирования, библиотеки, фреймворки, информацию. Всё, что у нас есть для замены, — это полный стыд. Впечатление, что квоты на должности процветают не на западе, а у нас.
Я перепробовал кучу разных сервисов для блога, пробовал и наши, и китайские. По нашим скажу так: наши социальные сети — это позор, мне вот за них стыдно. Китайские сервисы… я честно пытался найти аналоги — блок, блок, блок, блок. У меня есть китайский номер, я пробовал регистрироваться на него и на российский номер — блокировки без возможности доказать, что ты реальный человек, не бот, не спамер… не вариант.
Ну а так как я не блогер, а лишь хочу поделиться своим опытом и наработками, мне хватает Telegram — удобная площадка. Telegram, как и многие другие сервисы, сталкивается с блокировками, но пока я имею право его использовать — я буду это делать. Законы нарушать я не собираюсь. Если его по закону заблокируют, придётся бросить вести блог, и каждый останется просто при своём. Если какой-нибудь iMAX превратят в достойную замену, можно будет попробовать, или если китайцы решат ослабить блокировки для дружественных стран (сервисы для своих у них достойные) — можно будет попробовать ещё раз. Сейчас это тухляк.
Первое и самое важное — я не блогер, я программист. Я часто вынужден использовать ресурсы, которым замены у нас просто нет: языки программирования, библиотеки, фреймворки, информацию. Всё, что у нас есть для замены, — это полный стыд. Впечатление, что квоты на должности процветают не на западе, а у нас.
Я перепробовал кучу разных сервисов для блога, пробовал и наши, и китайские. По нашим скажу так: наши социальные сети — это позор, мне вот за них стыдно. Китайские сервисы… я честно пытался найти аналоги — блок, блок, блок, блок. У меня есть китайский номер, я пробовал регистрироваться на него и на российский номер — блокировки без возможности доказать, что ты реальный человек, не бот, не спамер… не вариант.
Ну а так как я не блогер, а лишь хочу поделиться своим опытом и наработками, мне хватает Telegram — удобная площадка. Telegram, как и многие другие сервисы, сталкивается с блокировками, но пока я имею право его использовать — я буду это делать. Законы нарушать я не собираюсь. Если его по закону заблокируют, придётся бросить вести блог, и каждый останется просто при своём. Если какой-нибудь iMAX превратят в достойную замену, можно будет попробовать, или если китайцы решат ослабить блокировки для дружественных стран (сервисы для своих у них достойные) — можно будет попробовать ещё раз. Сейчас это тухляк.
👍14💩1😐1
Теперь, когда я закончил с Linux и Windows, я могу перейти на macOS и закрыть вопрос архитектур всех остальных платформ. И больше никакого XML! 🎉
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4👍3