Locus Privacy Policy
This Privacy Policy explains how Locus collects, stores, processes, and protects your personal information and third-party data when you use our web application, API services, and YouTube-focused learning environment.
Quick Summary: What You Need to Know
We believe in full transparency without legalese. Here are the core pillars of our data practices:
youtube.readonly. We cannot like, comment, subscribe, or alter your YouTube profile.1. Overview & Core Philosophy
Locus is a focused learning platform designed to help engineers, students, and professionals organize and discover technical YouTube content without the distractions, rabbit holes, and cognitive fatigue of conventional recommendation algorithms.
This Privacy Policy is issued by [LEGAL ENTITY NAME / OPERATOR NAME] ("Locus", "we", "us", or "our"). It applies to your interaction with our web application at locus.teampoint.online, our backend API services, and any related software or tools provided by Locus.
Honest Engineering Disclosure:
Unlike conventional privacy policies filled with generalized boilerplate, this document is based directly on an exhaustive audit of our actual code repository, database schema, and third-party integrations. Where an intended user control is not yet implemented in software, we explicitly state it as an implementation gap rather than pretending it exists.
2. Information We Collect
We collect only the minimum personal information required to deliver, secure, and personalize your distraction-free learning workspace. We do not engage in behavioral surveillance or data broking.
| Data Category | Specific Elements | Source | Purpose & Storage |
|---|---|---|---|
| Account Credentials | Email address, display name, avatar image URL, cryptographically hashed password (for email/password accounts). | Directly provided or OAuth provider. | Authentication and account identification. Stored in user and account tables. |
| Authentication Sessions | Cryptographic session token, client IP address, User-Agent browser string, expiration timestamp. | Client HTTP requests. | Session verification, active login state, brute-force protection. Stored in session table. |
| YouTube OAuth Tokens | Google OAuth access token, Google refresh token, token expiration timestamp, granted scopes. | Google OAuth 2.0 service. | Syncing followed channels and video metadata. Encrypted with AES-256-GCM before storage in integrations table. |
| User Library & Activity | Watch status (isWatched), favorites, learning queue, playback progress seconds, timestamps. | User interaction in player/feed. | Maintaining personal queue and bookmarking. Stored in video_library table. |
| Personal Notes | Markdown text content, video association, creation/modification timestamps. | User written notes. | Private study notes. Stored in video_notes table. Never shared publicly. |
| Preferences & Follows | Followed channel IDs, topic interests, UI theme, default feed mode, pagination settings. | Settings and onboarding. | Feed customization. Stored in user_preferences, source_subscriptions, and user_topics. |
| Voluntary Feedback & Diagnostics | Feedback title, description, category, OS family, browser, viewport, console error buffer (passwords redacted), route breadcrumbs. | User voluntary bug report submission. | Bug triage and application support. Stored in feedback table. |
3. Google Sign-In & YouTube Authorization
Locus integrates with Google in two distinct, optional ways. It is important to understand the difference between them:
When you click "Continue with Google" on the login page, Google authenticates your identity. Locus receives your basic Google profile information: your name, verified email address, avatar image URL, and unique Google account ID. This is managed through our authentication engine (Better Auth) and used strictly to log you into your Locus account.
To import your subscribed YouTube channels into Locus, you may explicitly authorize Locus to connect to your YouTube account. This flow requests a single, read-only OAuth permission:
We initiate this request using Google's OAuth 2.0 authorization endpoint with access_type=offline and prompt=consent so that Google issues a refresh token, enabling ongoing background synchronization of your followed channel uploads. Every OAuth request is protected with a single-use cryptographically random state parameter to prevent CSRF and replay attacks.
4. Google API Services & Limited Use Requirements
Locus's use and transfer of information received from Google APIs to any other app will adhere to the Google API Services User Data Policy, including the Limited Use requirements.
In accordance with the Limited Use requirements, Locus strictly adheres to the following principles:
- Feature-Restricted Use: We only use access to Google user data to provide and improve user-facing features that are prominent in the Locus interface (e.g., importing subscribed channels, displaying chronological video updates, and organizing learning feeds).
- No Third-Party Transfers: We do not transfer Google user data to third parties, unless necessary to provide or improve these features, comply with applicable law, or as part of a merger, acquisition, or sale of assets with explicit prior user consent.
- No Advertising Use: We never use or transfer Google user data to serve advertisements, including personalized, re-targeted, or interest-based advertising.
- No Data Brokering: We do not sell, rent, or monetize Google user data to data brokers, advertising networks, or any commercial entities.
- No Human Review: We do not allow humans to read Google user data unless: (1) we have obtained your affirmative agreement for specific messages or records; (2) it is necessary for security purposes such as investigating technical errors, bug triage, or system abuse; (3) it is required to comply with applicable law; or (4) the data is aggregated and anonymized for internal system operations.
5. YouTube API Data & Permitted Uses
Locus uses YouTube API Services to access YouTube video metadata and channel subscriptions. By using Locus, you agree to be bound by the YouTube Terms of Service and acknowledge that your use of YouTube services is subject to the Google Privacy Policy.
Specifically, when you connect your YouTube account, Locus queries the following YouTube Data API v3 endpoints:
channels?mine=true)Resolves your primary YouTube Channel ID and channel title. Used to identify the external linked account in our integrations table.subscriptions?mine=true)Fetches your public subscriptions so you can choose which channels to follow inside Locus. Channel metadata is deduplicated in the shared sources catalog.channels?contentDetails)Retrieves the uploads playlist ID for each channel you follow in Locus to facilitate chronological synchronization.playlistItems & videos)Retrieves public titles, descriptions, publication dates, durations, and thumbnails. Stored in our shared videos table.YouTube Video Playback via IFrame Player:
When you watch a video in Locus, it is rendered using the official YouTube IFrame Player API. The video is streamed directly from YouTube servers. YouTube may collect device identifiers, IP addresses, viewing duration, and telemetry directly in the iframe context, governed by Google's Privacy Policy. Locus does not receive or store this playback telemetry beyond your local progress bar state.
Strict Read-Only Enforcement:
Locus cannot like videos, leave comments, subscribe or unsubscribe from channels on YouTube on your behalf, edit your playlists, or modify your YouTube account in any way.
6. User-Generated Content, Notes & AI Privacy
Locus empowers you to take notes, bookmark videos, and build a focused engineering learning queue:
Personal markdown notes taken while watching videos are stored in our video_notes table. Each note is strictly tied to your authenticated user account and is completely private. Other Locus users, public search engines, and third parties cannot view or access your notes.
Your favorites, watch queue, and playback timestamps are stored in the video_library table to resume playback smoothly across devices.
Locus uses OpenAI batch completion APIs exclusively to categorize public YouTube videos into standardized technical topic tags (e.g., "Distributed Systems", "TypeScript", "DevOps"). We send only public YouTube video titles and truncated descriptions to OpenAI. Your personal identity, account details, watch history, and private notes are NEVER shared with or processed by OpenAI.
8. Transactional Email Communications
Locus dispatches emails strictly for critical account operations using standard Nodemailer SMTP. In our production infrastructure, emails are routed through Brevo (Sendinblue SAS).
- Account Verification: An email containing a secure link to verify ownership of your email address upon initial registration.
- Password Reset: An email containing a single-use time-limited token to reset your password if requested.
Zero Marketing Emails: Locus does not send marketing newsletters, promotional blasts, or third-party promotional material. You will never receive unsolicited marketing emails from Locus.
9. Third-Party Service Providers & Processors
To provide a reliable, high-performance service, Locus partners with reputable cloud infrastructure and service providers. All processors are bound by strict data protection agreements:
| Service Provider | Role / Service | Location | Privacy Policy |
|---|---|---|---|
| Neon (Neon, Inc.) | Serverless PostgreSQL database hosting our user data, encrypted tokens, and video catalogs. | AWS Singapore (ap-southeast-1) | neon.tech/privacy |
| Render (Render Services, Inc.) | Backend API server hosting and background synchronization tasks. | United States / Global | render.com/privacy |
| Google LLC / YouTube | OAuth authentication, YouTube Data API v3 metadata queries, and IFrame video player. | Global | policies.google.com |
| GitHub, Inc. (Microsoft) | Optional developer OAuth social sign-in. | United States | github.com/privacy |
| Brevo (Sendinblue SAS) | SMTP relay service for transactional verification and password-reset emails. | European Union / France | brevo.com/privacy |
| OpenAI, L.L.C. | Batch LLM topic classification of public YouTube video titles/descriptions only. | United States | openai.com/privacy |
10. Data Retention, Cascading Deletion & Implementation Gap
We retain your account details, notes, preferences, and YouTube connection data for as long as your account is active.
Our PostgreSQL database is architected with strict foreign key constraints. All user-specific tables (session, account, integrations, user_preferences, video_library, video_notes, source_subscriptions, and user_topics) have ON DELETE CASCADE rules linked to the primary user account. When a user account is deleted, all personal records, notes, session keys, and encrypted tokens are permanently eradicated.
Please Note: Locus currently does not have a self-service "Delete Account" button or automated deletion endpoint in the user settings UI.
While the underlying database cascade is fully implemented, building a self-service account deletion UI is currently on our active engineering roadmap. In the interim, to permanently delete your account and all associated data, you must submit a manual deletion request by emailing [PRIVACY CONTACT EMAIL].
Upon identity confirmation, our administrative team will purge your primary user record within 30 days, automatically triggering the database cascade deletion of all your personal data.
11. Disconnecting Accounts & Revoking Permissions
Please Note: Locus currently does not have an in-app "Disconnect YouTube" button or automated token revocation endpoint in the Settings interface.
Although our database supports a 'disconnected' / 'revoked' integration status enum, a one-click in-app disconnect button is currently an unfulfilled capability undergoing development.
You can immediately revoke Locus's access to your Google and YouTube data at any time directly through Google's centralized permissions manager:
- Visit your Google Account Permissions portal: https://myaccount.google.com/permissions
- Locate Locus in the list of third-party apps with account access.
- Click "Remove Access" or "Revoke".
Once revoked via Google, Google immediately invalidates our refresh token. The next time Locus attempts to synchronize channel data or refresh an access token, Google rejects the request, and Locus automatically flags your integration status as 'expired' / 'revoked'.
To request complete manual deletion of the stored encrypted token records from our database prior to the release of our in-app disconnect tool, please email [PRIVACY CONTACT EMAIL].
12. Security Architecture & Inherent Limitations
We take security seriously and implement defense-in-depth engineering practices to safeguard your data:
All YouTube OAuth access tokens and refresh tokens are encrypted at rest using AES-256-GCM authenticated encryption with a 256-bit secret key before database insertion. Payloads carry authenticated IVs and tags.
Passwords are cryptographically salted and hashed by Better Auth before reaching database disks. Plaintext passwords are never logged or stored. Session tokens are unique cryptographically generated strings.
All data in transit between your browser, our API backend on Render, and our Neon database is encrypted using modern TLS 1.3/1.2 protocols with strict SSL mode required.
Database queries use strict parameterization through Drizzle ORM to eliminate SQL injection risks. OAuth handshakes utilize single-use cryptographically random state tokens to thwart CSRF and replay attacks.
While we implement rigorous, industry-recognized controls, no electronic transmission over the internet or digital storage architecture can be guaranteed 100% impenetrable. We cannot guarantee absolute security against unforeseen zero-day vulnerabilities or sophisticated intrusions.
13. International Data Processing & Transfers
Locus operates globally. Depending on your physical location, your personal information may be transferred to, stored, and processed in jurisdictions other than your country of residence:
- Primary Database: Hosted in AWS Asia Pacific (Singapore) region (
ap-southeast-1) via Neon. - Application Servers: Hosted across Render cloud facilities in the United States and the European Union.
- Third-Party Partners: Google, GitHub, and OpenAI maintain distributed global cloud servers primarily centered in the United States.
If you are located in the European Economic Area (EEA), United Kingdom, or Switzerland, please be aware that data protection laws in these transfer destinations may differ from those in your jurisdiction. Where required, transfers are executed under standard contractual clauses or recognized adequacy frameworks.
14. Children's Privacy
Locus is a technical learning and productivity application intended for software engineers, university students, and adult professionals. It is not directed at or designed to attract children under the age of 13 (or 16 within the European Economic Area).
We do not knowingly solicit or collect personal information from children. If you believe that a child has provided us with personal data without parental or guardian consent, please notify us immediately at [PRIVACY CONTACT EMAIL]. Upon verification, we will promptly delete the data and terminate the account.
15. Your Privacy Rights & How to Exercise Them
Under privacy regulations such as the General Data Protection Regulation (GDPR), the California Consumer Privacy Act (CCPA/CPRA), and equivalent state and national frameworks, you have significant rights regarding your personal data:
Because automated self-service export and deletion portals are currently under development, please email your formal privacy requests to:
To protect your account security, we may request verification of your identity before completing the request. We respond to all legitimate requests without undue delay and within 30 days (or within timelines mandated by applicable jurisdiction).
16. Changes to this Policy
We may periodically update this Privacy Policy to reflect enhancements in Locus's feature set, shifts in our cloud architecture, new regulatory mandates, or changes in third-party API requirements.
When changes are published, we will update the "Last Updated" date at the top and bottom of this document. For significant material alterations, we will provide prominent notice through an in-app banner or direct communication prior to the changes taking effect. Continued use of Locus following such notice constitutes your acknowledgment of the updated terms.
17. Contact & Legal Entity Information
If you have questions, concerns, or feedback regarding this Privacy Policy, our data practices, or your dealings with Locus, please reach out through our designated contact channels: