Some checks failed
ci / 정본·보안·린트·타입·테스트 (push) Successful in 53s
ci / 모바일 린트·타입·Jest (push) Successful in 45s
ci / Supabase Edge Functions + Cloudflare Worker (push) Successful in 21s
ci / .NET API 서버 테스트 (push) Successful in 13s
deploy-site / deploy (push) Failing after 27s
ci / 워크스페이스 빌드 검증 (push) Successful in 36s
Crawlers received an empty client-rendered shell (107 characters of text); most AI crawlers do not run JavaScript, so the product was invisible to them. - Build renders each locale to static HTML (/ for Korean, /en/ … /vi/) with src/entry-server.tsx + scripts/prerender.mjs; the browser hydrates the same locale. The language menu links to those pages instead of switching in place. - Per-locale head: title, description, canonical, hreflang (+ x-default /en/), Open Graph and X cards with a per-locale 1200x630 image. - JSON-LD graph: Organization, WebSite, WebPage, SoftwareApplication (KRW offers, version, release date, download URL from the canonical sources), HowTo and FAQPage. No invented ratings. - robots.txt (search, ai-input and ai-train allowed; /app, /api, invites excluded), sitemap.xml with language alternates, llms.txt and llms-full.txt generated from the same translations and canonical values. - IndexNow key and a post-deploy ping (Bing, Naver, Yandex). - A factual "at a glance" section and two FAQ answers (recognised languages, where data is stored) in all 10 languages. - Icons, apple-touch-icon and web manifest; asset base is now absolute so sub-path pages load the same bundle. Verified: 3.6k-7.7k characters of text per page, no hydration warnings, no overflow at 320/1440 in six locales, axe 0, Lighthouse mobile SEO, accessibility and best practices 100.
133 lines
3 KiB
Text
133 lines
3 KiB
Text
node_modules/
|
|
dist/
|
|
out/
|
|
.next/
|
|
.expo/
|
|
.env
|
|
.env.*
|
|
!.env.example
|
|
*.log
|
|
.DS_Store
|
|
Thumbs.db
|
|
.claude/settings.local.json
|
|
|
|
# Electron release artifacts. Keep only release identity/public-key SSOT files.
|
|
release/
|
|
!/release/
|
|
/release/*
|
|
!/release/product-version.json
|
|
!/release/android-release-identity.json
|
|
!/release/mobile-release-evidence-public.pem
|
|
!/release/update-policy.json
|
|
*.unpacked
|
|
/.ci-tools/
|
|
|
|
# Build
|
|
*.tsbuildinfo
|
|
build/
|
|
# PyInstaller build artifacts (sidecar) — regenerated by `npm run sidecar:build`
|
|
apps/desktop/build/sidecar-build/
|
|
apps/desktop/build/sidecar.spec
|
|
|
|
!apps/desktop/build/
|
|
!apps/desktop/build/entitlements.mac.plist
|
|
sidecar-dist/
|
|
|
|
# Bundled binaries (download via scripts; SoX는 직접 커밋)
|
|
resources/sox/*.exe
|
|
resources/sox/*.dll
|
|
apps/desktop/resources/ollama/
|
|
apps/desktop/build/installer.nsh
|
|
!apps/desktop/build/installer.nsh
|
|
|
|
# IDE
|
|
.idea/
|
|
.vscode/
|
|
*.swp
|
|
*.swo
|
|
|
|
# Site build
|
|
site/dist/
|
|
site/node_modules/
|
|
|
|
# OS
|
|
.DS_Store
|
|
Thumbs.db
|
|
Desktop.ini
|
|
|
|
# Python
|
|
__pycache__/
|
|
*.pyc
|
|
*.pyo
|
|
venv/
|
|
.venv/
|
|
|
|
# Whisper models (large files)
|
|
resources/models/
|
|
apps/mobile-rn/android/app/src/main/assets/models/ggml-tiny.bin
|
|
apps/mobile-rn/android/app/src/main/assets/index.android.bundle
|
|
apps/mobile-rn/.maestro-output/
|
|
apps/mobile-rn/.maestro/*.junit.xml
|
|
|
|
# Chrome / Playwright Profiles
|
|
.chrome-*
|
|
.playwright-*
|
|
.chrome-debug-profile/
|
|
.chrome-interactive-profile/
|
|
.chrome-playwright-profile/
|
|
.playwright-oauth-profile/
|
|
|
|
# Local browser/account automation. These scripts may reference developer-only
|
|
# credential sources and must never be part of a release checkout.
|
|
/scripts/capture-forgejo-release-live.js
|
|
/scripts/capture-forgejo-repo.js
|
|
/scripts/inspect-forgejo-runners.js
|
|
/scripts/playwright-fill-all-live-ad-portals.js
|
|
/scripts/playwright-live-ad-portals-signup.js
|
|
/scripts/playwright-submit-applovin.js
|
|
/scripts/register-and-inspect-ad-portals.js
|
|
|
|
# Local-only automation, scratch captures, and one-off dev helpers.
|
|
# `scripts/local/` keeps them out of the release checkout while remaining runnable locally.
|
|
/scripts/local/
|
|
/junk/
|
|
/scratch/
|
|
*.st.txt
|
|
/launch-debug-chrome.bat
|
|
/open-oauth.bat
|
|
/run-admob-login.bat
|
|
/*-boundary.png
|
|
/apps/mobile-rn/*-boundary.png
|
|
/docs/v3/play/assets/screenshots/
|
|
|
|
# .NET build output
|
|
apps/api-server/bin/
|
|
apps/api-server/obj/
|
|
apps/api-server.Tests/bin/
|
|
apps/api-server.Tests/obj/
|
|
|
|
# Playwright run output
|
|
test-results/
|
|
apps/web/test-results/
|
|
apps/web/playwright-report/
|
|
apps/desktop/test-results/
|
|
|
|
# Gradle-generated vector-icon drawables (react-native-vector-icons), not source.
|
|
apps/mobile-rn/android/app/src/main/res/drawable-*/node_modules_*
|
|
# Supabase CLI local state
|
|
/supabase/.branches/
|
|
/supabase/.temp/
|
|
|
|
# Release binaries are never committed: the only distribution channel is the
|
|
# Forgejo update feed (release/update-policy.json). Landing/download/legal/invite
|
|
# pages live only in site/, so the API server has no wwwroot at all.
|
|
/site/public/releases/
|
|
/apps/web/public/releases/
|
|
/apps/api-server/wwwroot/
|
|
*.apk
|
|
*.aab
|
|
*.blockmap
|
|
D3RO-Voice-Setup-*.exe
|
|
|
|
# site 빌드 중간 산출물(서버 렌더링 번들)
|
|
site/dist-ssr/
|