diff --git a/.svelte-kit/types/route_meta_data.json b/.svelte-kit/types/route_meta_data.json index 37cb1f1..21eb41d 100644 --- a/.svelte-kit/types/route_meta_data.json +++ b/.svelte-kit/types/route_meta_data.json @@ -13,6 +13,10 @@ "src/routes/+layout.js", "src/routes/+layout.server.js" ], + "/privacy-policy": [ + "src/routes/+layout.js", + "src/routes/+layout.server.js" + ], "/viewer": [ "src/routes/+layout.js", "src/routes/+layout.server.js" diff --git a/.svelte-kit/types/src/routes/$types.d.ts b/.svelte-kit/types/src/routes/$types.d.ts index 6adbf91..baaa08d 100644 --- a/.svelte-kit/types/src/routes/$types.d.ts +++ b/.svelte-kit/types/src/routes/$types.d.ts @@ -12,7 +12,7 @@ type EnsureDefined = T extends null | undefined ? {} : T; type OptionalUnion, A extends keyof U = U extends U ? keyof U : never> = U extends unknown ? { [P in Exclude]?: never } & U : never; export type Snapshot = Kit.Snapshot; type PageParentData = EnsureDefined; -type LayoutRouteId = RouteId | "/" | "/about" | "/donate" | "/viewer" | null +type LayoutRouteId = RouteId | "/" | "/about" | "/donate" | "/privacy-policy" | "/viewer" | null type LayoutParams = RouteParams & { } type LayoutServerParentData = EnsureDefined<{}>; type LayoutParentData = EnsureDefined<{}>; diff --git a/src/lib/components/Footer.svelte b/src/lib/components/Footer.svelte index 8b1b1d0..56b2357 100644 --- a/src/lib/components/Footer.svelte +++ b/src/lib/components/Footer.svelte @@ -24,7 +24,7 @@ diff --git a/src/lib/translations/en-US/privacy-policy.json b/src/lib/translations/en-US/privacy-policy.json new file mode 100644 index 0000000..90df598 --- /dev/null +++ b/src/lib/translations/en-US/privacy-policy.json @@ -0,0 +1,5 @@ +{ + "title": "🔐 Privacy Policy", + "last.update": "Last updated: May 9, 2025", + "content": "

At Embroidery Viewer (embroideryviewer.xyz), we respect your privacy and are committed to protecting any information you share while using our service.

1. Personal Information

Embroidery Viewer does not collect or store any personal information. You do not need to create an account, and we do not ask for your name, email address, or any identifying details.

2. File Uploads

When you upload an embroidery file to the viewer, the file is processed in your browser or temporarily on our server (if required) for preview purposes only. No uploaded files are stored, saved, or shared.

Please avoid uploading any copyrighted or sensitive material unless you have permission to use it.

3. Analytics

We use Umami to collect anonymous usage statistics about our website, such as the number of visitors, page views, device types, and referral sources. This data helps us understand how the site is being used and improve it over time.

Umami is a privacy-friendly, cookie-free analytics tool. It does not track users across sites, collect personal data, or use cookies. All data is aggregated and anonymized.

4. Cookies

Embroidery Viewer does not use cookies or other tracking mechanisms in your browser.

5. Third-Party Services

We do not use third-party advertising, embed external trackers, or share data with third parties.

6. Changes to This Policy

We may update this Privacy Policy from time to time. All updates will be posted on this page with the updated date.

7. Contact

If you have any questions about this Privacy Policy, you can reach us at leo@leomurca.xyz.

" +} diff --git a/src/lib/translations/index.js b/src/lib/translations/index.js index 679a74f..3466faa 100644 --- a/src/lib/translations/index.js +++ b/src/lib/translations/index.js @@ -47,6 +47,12 @@ const config = { routes: ['/donate'], loader: async () => (await import('./en-US/donate.json')).default, }, + { + locale: SUPPORTED_LOCALES.EN_US, + key: 'privacy.policy', + routes: ['/privacy-policy'], + loader: async () => (await import('./en-US/privacy-policy.json')).default, + }, { locale: SUPPORTED_LOCALES.PT_BR, key: 'header', @@ -75,6 +81,12 @@ const config = { routes: ['/donate'], loader: async () => (await import('./pt-BR/donate.json')).default, }, + { + locale: SUPPORTED_LOCALES.PT_BR, + key: 'privacy.policy', + routes: ['/privacy-policy'], + loader: async () => (await import('./pt-BR/privacy-policy.json')).default, + }, ], }; diff --git a/src/lib/translations/pt-BR/privacy-policy.json b/src/lib/translations/pt-BR/privacy-policy.json new file mode 100644 index 0000000..626d5c0 --- /dev/null +++ b/src/lib/translations/pt-BR/privacy-policy.json @@ -0,0 +1,5 @@ +{ + "title": "🔐 Política de Privacidade", + "last.update": "Última atualização: 9 de maio de 2025", + "content": "

No Embroidery Viewer (embroideryviewer.xyz), respeitamos sua privacidade e estamos comprometidos em proteger qualquer informação que você compartilhe ao usar nosso serviço.

1. Informações Pessoais

O Embroidery Viewer não coleta nem armazena informações pessoais. Você não precisa criar uma conta e não pedimos seu nome, e-mail ou qualquer dado identificável.

2. Envio de Arquivos

Quando você envia um arquivo de bordado para o visualizador, o arquivo é processado no seu navegador ou temporariamente em nosso servidor (se necessário) apenas para fins de visualização. Nenhum arquivo enviado é armazenado, salvo ou compartilhado.

Evite enviar materiais sensíveis ou protegidos por direitos autorais, a menos que tenha permissão para usá-los.

3. Análises

Utilizamos o Umami para coletar estatísticas anônimas de uso do site, como número de visitantes, visualizações de página, tipos de dispositivo e fontes de acesso. Esses dados nos ajudam a entender como o site está sendo utilizado e melhorá-lo com o tempo.

O Umami é uma ferramenta de análise que respeita a privacidade, não usa cookies e não rastreia os usuários entre sites. Todos os dados são agregados e anonimizados.

4. Cookies

O Embroidery Viewer não utiliza cookies ou outros mecanismos de rastreamento em seu navegador.

5. Serviços de Terceiros

Não utilizamos publicidade de terceiros, nem incorporamos rastreadores externos, nem compartilhamos dados com terceiros.

6. Alterações nesta Política

Podemos atualizar esta Política de Privacidade ocasionalmente. Todas as atualizações serão publicadas nesta página com a data de modificação.

7. Contato

Se você tiver dúvidas sobre esta Política de Privacidade, entre em contato pelo e-mail leo@leomurca.xyz.

" +} diff --git a/src/routes/privacy-policy/+page.svelte b/src/routes/privacy-policy/+page.svelte new file mode 100644 index 0000000..37cd274 --- /dev/null +++ b/src/routes/privacy-policy/+page.svelte @@ -0,0 +1,26 @@ + + +
+

{$t('privacy.policy.title')}

+

{$t('privacy.policy.last.update')}

+ + {@html $t('privacy.policy.content')} +
+ +