Профессиональная MIDI-студия в браузере с Telegram интеграцией
# Клонируйте репозиторий
git clone https://github.com/Pitrat-wav/Midi-Studio.git
cd Midi-Studio-local
# Установите зависимости
npm install
# Запустите dev-сервер
npm run devnpm run build
npm run preview # Preview production сборки| Клавиша | Действие |
|---|---|
| SPACE | Play/Stop |
| 1-7 | Выбор инструмента (Drums, Bass, Harmony, Pads, Sequencer, Drone, Master) |
| B | Переключение темы фона (Космос → Студия → South Park) |
| H | Скрыть/Показать HUD |
| ? | Help overlay |
| Tab | Переключение вида (3D / Nodes / Live / Arrange) |
| ` (backtick) | Terminal overlay |
| P | Panic (остановить все звуки) |
- 🥁 Drums — TR-808/909 Drum Machine
- 🎸 Bass — TB-303 Acid Bass / FM Synth
- 🎹 Harmony — Buchla 259 Complex Oscillator
- ☁️ Pads — Ambient Pad Engine
- 🎬 Sequencer — Turing Machine & ML-185
- ☄️ Drone — Drone Engine
- 🎚️ Master — Master Control Center
Приложение поддерживает 3 визуальные темы:
| Тема | Описание | Как активировать |
|---|---|---|
| 🌌 Deep Space | Космическая сцена с звёздами | Нажимать B пока не увидите "🌌 Space" |
| 🏭 Studio 2026 | Профессиональная студия с неоновым освещением | Нажимать B пока не увидите "🏭 Studio" |
| 🎨 South Park | Стилизованная тема | Нажимать B пока не увидите "🎨 South Park" |
- Frontend: React 18, TypeScript, Vite
- 3D Graphics: Three.js, React Three Fiber, Drei
- Audio: Tone.js, Web Audio API
- State Management: Zustand
- Telegram Integration: Telegram WebApp SDK
src/
├── components/
│ ├── HUD/ # 2D контроллеры инструментов
│ ├── WebGL/ # 3D компоненты
│ └── VisualEngine/ # Визуализаторы
├── store/ # Zustand stores
├── logic/ # Бизнес-логика
├── lib/ # Утилиты
└── shaders/ # GLSL шейдеры
Создайте файл .env в корне проекта:
# Frontend
VITE_API_URL=http://localhost:3001
VITE_APP_MODE=developmentBackend находится в папке backend/:
cd backend
cp .env.example .env
# Отредактируйте .env и добавьте BOT_TOKEN
npm install
npm run dev- Bundle size: 2.77MB JS, 129KB CSS (gzipped)
- Build time: ~3.3s
- FPS: 60 (на современных устройствах)
- Fork репозиторий
- Создайте feature branch (
git checkout -b feature/amazing-feature) - Commit изменения (
git commit -m 'Add amazing feature') - Push на branch (
git push origin feature/amazing-feature) - Откройте Pull Request
MIT
- GitHub: https://github.com/Pitrat-wav/Midi-Studio
- Telegram: @yourbot