Česká verze
Krátká verze: osobní zpěvník je primárně uložený v prohlížeči nebo nainstalované PWA. Online služby se použijí jen pro funkci, kterou si vyžádáš — například hledání, Táborák, synchronizaci nebo odeslání hlášení.
1. Jaká data aplikace používá
- Lokální knihovna: písničky, playlisty, oblíbené položky, historie, transpozice, velikost textu a další nastavení se ukládají do úložiště tohoto zařízení, zejména pomocí IndexedDB a localStorage.
- Online hledání: hledaný výraz a požadavek na vybraný zdroj procházejí přes proxy iZpěvníku na Cloudflare. Do rozhraní se vrací jen normalizovaný výsledek, ne libovolný kód cizí stránky.
- Táborák: kód místnosti a právě sdílená píseň se dočasně uloží v Cloudflare Durable Objectu, aby ji dostali i nově připojení účastníci. Relace skončí na pokyn hostitele nebo nejpozději po 12 hodinách.
- Synchronizace zařízení: knihovna se přenáší přímo mezi dvěma zařízeními přes šifrovaný WebRTC DataChannel. Cloudflare zajišťuje pouze krátkodobé navázání spojení a knihovnu při tom neukládá.
- Hlášení chyb a nápadů: dobrovolný formulář odesílá napsaný text, volitelné kroky, typ hlášení, verzi aplikace, aktuální sekci a základní údaj o prohlížeči. Neodesílá knihovnu, jméno ani e-mail, pokud je sám nenapíšeš do textu.
2. Volitelná cloudová synchronizace
Google Drive: po připojení používá iZpěvník pouze oprávnění drive.appdata. Synchronizační soubor ukládá do skrytého prostoru appDataFolder tvého Google účtu a nemá tím obecný přístup k dokumentům, fotografiím ani ostatním souborům. Krátkodobý přístupový token se drží jen v paměti aplikace.
iCloud: pokud je tato možnost v aplikaci dostupná a zvolíš ji, data se ukládají po menších částech do soukromé CloudKit databáze přihlášeného Apple účtu. Nejde o veřejnou databázi projektu.
Cloudová synchronizace je dobrovolná. Bez ní zůstává osobní zpěvník pouze lokální. iZpěvník neukládá cloudovou kopii knihovny do vlastní Cloudflare databáze.
3. Technické a bezpečnostní údaje
GitHub Pages a Cloudflare mohou při běžném provozu zpracovávat standardní technické údaje, například IP adresu, čas požadavku, typ prohlížeče a bezpečnostní metadata. Proxy používá náhodný identifikátor instalace a síťový údaj pouze k omezení zneužití; před uložením do D1 se oba převádějí na SHA-256 hash. Texty písní ani obsah hlášení se do této databáze neukládají.
Aplikace neobsahuje reklamní SDK. Přihlášení ke Google nebo Apple službám může používat vlastní přihlašovací mechanismy a cookies těchto poskytovatelů.
4. GitHub a dobrovolná hlášení
Statická aplikace je hostovaná na GitHub Pages. Odeslané hlášení projde přes Cloudflare Worker přímo do neveřejného Issue v soukromém GitHub repozitáři. IP adresa ani identifikátor instalace se do Issue nepřidávají. Do formuláře nevkládej citlivé osobní údaje ani celé texty písní.
5. Externí zdroje písní
Online hledání pracuje s nezávislými weby s texty a akordy. Tyto služby mají vlastní pravidla a iZpěvník neodpovídá za jejich obsah. Otevřeš-li přímo odkaz na externí web, další zpracování se řídí jeho zásadami.
6. Odpovědné používání a autorská práva
iZpěvník smíš používat pouze v souladu s platnými právními předpisy a právy třetích stran. Za obsah, který do aplikace uložíš, importuješ, upravíš, synchronizuješ nebo sdílíš, odpovídáš ty.
Neoprávněné kopírování, zveřejňování, šíření nebo jiné užití textů písní, chráněných aranží či dalšího chráněného obsahu v rozporu s autorským právem je proti pravidlům používání iZpěvníku. Aplikaci nepoužívej k obcházení omezení zdrojových webů ani k hromadnému získávání či dalšímu šíření obsahu bez potřebného oprávnění.
iZpěvník sám neuděluje licenci k obsahu třetích stran. Vždy respektuj autora, licenci, podmínky konkrétního zdroje a zákonné výjimky platné pro tvé použití.
7. Jak dlouho data zůstávají
- Lokální data zůstávají v zařízení, dokud je nesmažeš v aplikaci, prohlížeči nebo odstraněním PWA.
- Google Drive nebo iCloud kopie zůstává v tvém účtu, dokud ji nesmažeš podle možností dané služby. Samotné odpojení poskytovatele vzdálenou kopii automaticky nemaže.
- Táborák expiruje nejpozději po 12 hodinách; párovací místnosti pro synchronizaci zařízení jsou krátkodobé.
- Hashované záznamy pro provozní limity se průběžně promazávají. Hlášení může zůstat v soukromém repozitáři po dobu potřebnou k vyřešení a správě projektu.
8. Tvoje kontrola nad daty
V aplikaci můžeš exportovat zálohu, importovat ji na jiné zařízení, odpojit cloudovou synchronizaci nebo smazat lokální data. Přístup iZpěvníku můžeš také odebrat přímo v nastavení svého Google nebo Apple účtu. Smazání dat webu může být nevratné, proto je před ním vhodné vytvořit JSON zálohu.
Platební QR pro dobrovolnou podporu vzniká lokálně v zařízení. iZpěvník neprovozuje platební bránu a nedostává od banky údaje o transakci.
9. Co neděláme
- Neprodáváme osobní údaje ani obsah knihovny.
- Nepoužíváme písničky k reklamnímu profilování.
- Nevytváříme centrální databázi osobních zpěvníků.
- Nepožadujeme účet pro základní používání.
10. Změny a kontakt
Pokud se podstatně změní zpracování dat nebo pravidla používání, upravíme tento dokument a datum nahoře. Dotaz nebo žádost můžeš poslat přes anonymní formulář Nahlásit chybu nebo poslat nápad v části O aplikaci.
English version
Short version: your personal songbook is primarily stored in your browser or installed PWA. Online services are used only for a feature you request, such as search, Campfire, synchronization or submitting feedback.
1. Data used by the app
- Local library: songs, playlists, favourites, history, transposition, text size and other settings are stored on this device, mainly using IndexedDB and localStorage.
- Online search: the search phrase and request for a selected source pass through the iZpěvník Cloudflare proxy. The app receives a normalized result rather than arbitrary third-party page code.
- Campfire: the room code and currently shared song are temporarily stored in a Cloudflare Durable Object so newly connected participants can receive the song. A session ends when the host ends it or after no more than 12 hours.
- Device sync: the library is transferred directly between two devices over an encrypted WebRTC DataChannel. Cloudflare only provides short-lived signaling and does not store the library.
- Bug reports and ideas: the voluntary form sends the entered message, optional steps, report type, app version, current section and basic browser information. It does not send your library, name or email unless you type them into the message yourself.
2. Optional cloud synchronization
Google Drive: when connected, iZpěvník requests only the drive.appdata scope. It stores the sync file in the hidden appDataFolder of your Google account and does not gain general access to your documents, photos or other Drive files. The short-lived access token is kept in application memory only.
iCloud: if this option is available in the app and you select it, data is stored in chunks in the private CloudKit database of the signed-in Apple account. It is not a public project database.
Cloud synchronization is optional. Without it, the personal songbook stays local. iZpěvník does not store a cloud copy of your library in its own Cloudflare database.
3. Technical and security data
GitHub Pages and Cloudflare may process ordinary technical information such as IP address, request time, browser type and security metadata. The proxy uses a random installation identifier and network information only for abuse prevention; both are converted to SHA-256 hashes before being stored in D1. Song lyrics and feedback content are not stored in that database.
The app contains no advertising SDK. Signing in to Google or Apple services may use those providers' own login mechanisms and cookies.
4. GitHub and voluntary reports
The static app is hosted on GitHub Pages. A submitted report passes through a Cloudflare Worker directly into a non-public Issue in the project's private GitHub repository. The IP address and installation identifier are not included in the Issue. Do not include sensitive personal data or complete song lyrics in the form.
5. Third-party song sources
Online search works with independent lyrics and chord websites. Those services have their own policies and iZpěvník is not responsible for their content. If you open an external website directly, its own privacy policy applies.
6. Responsible use and copyright
You may use iZpěvník only in compliance with applicable law and third-party rights. You are responsible for content you save, import, edit, synchronize or share through the app.
Unauthorized copying, publication, distribution or other use of lyrics, protected arrangements or other protected content in breach of copyright is against the iZpěvník rules. Do not use the app to circumvent source-site restrictions or to collect and redistribute content in bulk without the necessary permission.
iZpěvník does not grant a licence to third-party content. Always respect the author, applicable licence, source terms and any statutory exceptions that apply to your use.
7. Retention
- Local data remains on the device until you delete it in the app, clear browser data or remove the PWA.
- A Google Drive or iCloud copy remains in your account until you remove it using the provider's available tools. Disconnecting a provider does not automatically delete the remote copy.
- Campfire expires after no more than 12 hours; device-pairing rooms are short-lived.
- Hashed rate-limit records are cleaned up regularly. A report may remain in the private repository as long as needed to resolve it and manage the project.
8. Your control
You can export a backup, import it on another device, disconnect cloud sync or delete local data from the app. You can also revoke iZpěvník access in your Google or Apple account settings. Clearing website data may be irreversible, so creating a JSON backup first is recommended.
The optional support-payment QR code is generated locally. iZpěvník does not operate a payment gateway and receives no transaction data from your bank.
9. What we do not do
- We do not sell personal data or library content.
- We do not use songs for advertising profiles.
- We do not maintain a central database of personal songbooks.
- We do not require an account for basic use.
10. Changes and contact
If data processing or these rules change materially, we will update this document and the date above. Questions and requests can be sent through the anonymous Report a bug or send an idea form in the app's About section.