PRIVACY — LAST UPDATED 2026-05-11
Privacy,
plain and honest.
No legalese overkill for a personal portfolio.
This is a static portfolio. We don't sell data, don't build profiles, and don't store your chat messages. Vercel Analytics counts anonymous events (no PII, no chat content). RAG chat runs on Jina embeddings and streams answers — nothing you type is saved as identifiable data.
What this site is
Vonssy Portfolio (www.vonssy-portfolio.web.id) is a static Next.js site. There's no account system, no checkout, and no contact form that writes to a database. Contact is via Telegram t.me/vonssy_part_2 or email — those are third-party services with their own policies.
What we don't collect
- No personal data collection beyond what you voluntarily send via Telegram/email.
- No cross-site profiling, no ad targeting, no sale of data — ever.
- No chat content stored with identity — see RAG note below.
RAG chat (Jina + LLM router)
The floating chat widget answers from a pre-built embeddings index (src/data/rag/embeddings.json). Your question is embedded via Jina jina-embeddings-v3 and sent to an LLM router for a streamed answer.
How we handle chat data
- No data retention for chat content — messages are processed per request, not saved as identifiable user data (src/lib/analytics.ts tracks only chat_open / chat_message_sent (count) / chat_source_click, never message text).
- Embeddings are pre-computed at build time; chat history lives only in your browser (session) and is not written to a database.
- Provider calls go to Jina and your configured LLM router — same data-minimization applies on their side per their policies.
Analytics — Vercel Web Analytics (anonymous)
We use Vercel Web Analytics with custom track() events (src/components/analytics-tracker.tsx) to understand which sections help: page_view_classified, section_view, cta_telegram_click, cta_email_click, github_profile_click, demo_click, chat_open/message_sent/source_click.
- Anonymous — no PII, no IP stored by us, no chat content, no wallet data. Vercel aggregates counts.
- Referrer classification is best-effort (lib/analytics.ts:11 checks utm_source + document.referrer for ChatGPT/Perplexity/Claude) — many AI clients strip referrer.
- Enable happens on Vercel deploy with no extra cookie banner for this static case; if you self-host elsewhere, the same anonymous counts apply.
Details of events: .agents/analytics.md — Tracking Plan.
Cookies & local storage
No tracking cookies. The site only uses browser storage for UX: localStorage vonssy-theme (your dark/light preference), sessionStorage vonssy-intro-seen (intro seen), and a couple of sessionStorage keys for analytics dedupe (vonssy-section-viewed, vonssy-page-view-classified). Clear storage anytime in your browser.
Third parties
- Vercel — hosting + analytics (anonymous).
- GitHub / Telegram / X — when you click out, their policies apply.
- Jina AI / LLM router — only for chat embedding + answer streaming.
- Avatars from avatars.githubusercontent.com via Next Image.
Your choices & contact
You can block analytics with a content blocker, clear localStorage/sessionStorage, or just not use the chat widget — the portfolio remains fully readable without JavaScript (view-source has all text). For questions or deletion requests, reach out via Telegram or email. We'll respond directly.
This policy is for a personal portfolio, not a regulated SaaS. If requirements change (e.g., adding a contact form that stores data), this page will be updated and the “Last updated” date bumped.
Last updated: 2026-05-11
Canonical: www.vonssy-portfolio.web.id/privacy — also linked in footer & sitemap.xml