Оцініть ідею сервісу інтерактивних діаграм зі спільним редагуванням
Вже 5 років я працюю над своїм проєктом і ось нарешті вирішив його відкрити та поділитися із DOU спільнотою. schem.io — це сервіс для спільного (але поки що не в «лайв» режимі) малювання інтерактивних діаграм. Я вже раніше викладав відкриту версію цього проєкту з бекендом на Google Drive, а також з можливістю запуску локально, та у вигляді Electron програми. Але потім я зрозумів, що основний потенціал Schemio буде повністю розкритий, якщо люди зможуть працювати разом і робити свої діаграми публічно доступними. І ось зараз я прохаю DOU спільноту оцінити саму ідею та її реалізацію.
Можливості Schemio
Спочатку Schemio мав бути простою програмою для створення діаграм, проте після реалізації головних фіч, я зрозумів, що його можна застосовувати і для таких речей як прототипування, слайд шоу або використовувати як векторний редактор SVG. Ось список загальних фіч:
- Опис та лінки для кожного елемента діаграми
- Relative transformation — можна будь-який елемент причепити до іншого елементу та створити ієрархічну структуру. Таким чином можна групувати різні елементи, щоб їх ховати, показувати або анімувати.
- Event handling — можна задати різні ефекти на різні події, такі як натискання, наведення курсору або кастомні події.
- Різні функції анімації (рухи, системи часток та інше)
- Динамічне завантаження діаграм — можна підвантажувати діаграми будь-якого рівня вкладеності. Так можно грузити більш детальні діграмми для якихось елементів.
- Компонентні елементи — можна будь-який елемент діаграми повторно використовувати як внутрішню компоненту
- Frame Animation — покадрова анімація дозволяє більш тонко налаштувати анімацію сцени.
- Скриптінг — можна запускати власний код мовою Schemio Script
- Малювання будь-яких фігур та експорт у SVG або PNG
- Templated Items — можна використовувати шаблони для створення слайд-шоу, дропдаун, панелі з табами і т.д. Щоправда, поки що вони дуже обмежені, але я планую додати більше шаблонів у майбутньому.
- Patch Requests — можливо надсилати будь-кому запит на зміну діаграми.
Демо
Ось демка, яка показує різні можливості Schemio — schem.io/...G0b/docs/USqkMRHEY7JZav9t. Ця демка є відповіддю на відоме питання на технічних співбесідах «Що відбувається коли користувач вбиває адресу сайту в браузері». Демка складається з різніх діаграм, які динамічно навантажуються при натисканні на «Show more».
Є ще такі демо:
- Траблшутінг в Linux: schem.io/...shooting-ZfColapYyxEdqbjD
- Прототипування — schem.io/...totyping-LECRuZzMDM9ipFzJ
Open-Source
Основна частина проєкту викладена в опен-соурс на GitHub github.com/ishubin/schemio та розповсюджується за ліцензією Mozilla Public License Version 2.0. Проєкт написаний на JavaScript, Vue.js, а рендеринг реалізовано на SVG. Бекендова частина schem.io написана на Go, але поки що закрита.
Команди у мене немає, працюю сам у вільний від основної роботи час. Буду радий будь-якій критиці, відгукам, ідеям, а також допомоги у тестуванні.
9 коментарів
Додати коментар Підписатись на коментаріВідписатись від коментарів