Skip to content

Latest commit

 

History

10 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Songie – MusicXML Generator & Player

Songie je aplikace pro generování a přehrávání hudby ve formátu MusicXML. Umožňuje kreativní tvorbu hudebních partitur, jejich úpravu a export v jednom přehledném prostředí. Cílem aplikace je usnadnit proces kompozice a poskytovat moderní nástroje pro hudebníky i skladatele.

Klíčové funkce

Generování a export do MusicXML Možnost přehrávání vytvořené hudby Editace a úpravy partitur Uživatelsky přívětivé rozhraní pro rychlou práci s notami Přihlašování pomocí Google účtu

Technologie

Frontend

React Tailwind CSS Vite

Backend

FastAPI (Python) OAuth2 pro autentizaci MusicXML jako výstupní formát

Struktura projektu

songie/
├── .env            # Konfigurační soubor (CLIENT_ID, CLIENT_SECRET, ...)
├── client/         # React aplikace
└── server/         # FastAPI backend
├── auth/       # Autentizační logika
├── core/       # Základní konfigurace
└── main.py     # Hlavní aplikační soubor

Instalace a spuštění

Příprava

Naklonujte repozitář Vytvořte soubor .env v root složce s následujícími proměnnými:

CLIENT_ID=váš_google_client_id
CLIENT_SECRET=váš_google_client_secret

Backend (FastAPI)

Otevřete PowerShell a přejděte do složky server:

cd path\to\project\songie\server

Aktivujte virtuální prostředí:

venv\Scripts\activate

Nainstalujte závislosti:

pip install fastapi uvicorn python-dotenv authlib httpx starlette itsdangerous

Spusťte server:

uvicorn main:app --reload

Server běží na: http://127.0.0.1:8000

Frontend (React)

Otevřete nový PowerShell a přejděte do složky client:

cd path\to\project\songie\client

Nainstalujte závislosti:

npm install

Spusťte vývojový server:

npm run dev

Klient běží na: http://127.0.0.1:5173

Řešení problémů

Zamrzlý server

Pokud server nejde vypnout pomocí CTRL+C, použijte:

taskkill /IM python.exe /F

Dostupné endpointy

/auth/login/google - přihlášení přes Google /auth/google/callback - callback po přihlášení /auth/logout - odhlášení /auth/me - info o přihlášeném uživateli /test - testovací endpoint

Přihlášení:

http://localhost:8000/auth/login/google

Získání informací o přihlášeném uživateli:

http://localhost:8000/auth/me

Test chráněného endpointu:

http://localhost:8000/auth/protected-test

Odhlášení (POST request):

http://localhost:8000/auth/logout

Vývoj

V produkci nastavit https_only=True pro SessionMiddleware Session vyprší po 24 hodinách Pro vývoj je CORS povoleno pro http://localhost:5173

About

Songen je aplikace pro generování a přehrávání hudby ve formátu MusicXML. Umožňuje kreativní tvorbu hudebních partitur, jejich úpravu a export v jednom přehledném prostředí. Cílem aplikace je usnadnit proces kompozice a poskytovat moderní nástroje pro hudebníky i skladatele.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages