yoDEV — Privacy Policy
Last Updated: October 7, 2026
Effective Date:July 1, 2025
1. Introduction
This Privacy Policy describes how yoDEV (“Platform,” “we,” “us,” or “our”), operated by yoDEV, collects, uses, stores, and shares your personal information when you use our services:
- yoDEV Community (forum and community)
- yoDEV Workplace (collaborative document workspace)
- yoDEV worX (freelance administration)
- yoDEV Decisions (comparison of decision models with large language models)
- yoDEV Homepage (authentication and account management)
By using any yoDEV service, you consent to the practices described in this policy.
2. Information We Collect
2.1 Account Information
When you register, we collect:
- Full name
- Email address
- Username
- Profile photo (optional)
- Country and city (optional)
Your account is created through our Community platform (Discourse) and shared across all yoDEV services via our authentication system (OIDC).
If you choose to sign in with Google, Google shares your email address, name, profile picture, and Google account identifier with us. We request only the minimum sign-in permissions (openid, email, profile). yoDEV Workplace separately offers an optional Google integration, off unless you connect it, which requests its own permissions — see Section 4.7.
2.2 Profile Information
Depending on your role, you may provide:
Developers:
- Professional headline and bio (multiple languages)
- Skills, specializations, and AI tool expertise
- Portfolio projects and certifications
- Hourly reference rate and project budget range
- Work preferences (availability, arrangement, duration)
- Contact information (phone, calendar URL, social links)
- Billing information (legal name, tax ID, billing address)
Businesses:
- Entity name and type
- Company description and website
- Logo and banner images
- Contact information
- Billing information (legal name, tax ID, billing address)
2.3 Usage Data
We automatically collect:
- IP addresses and server logs (retained up to 90 days)
- Browser type, device information, and operating system
- Pages visited, features used, and interaction patterns
- Timestamps of activity
We also measure page visits using a cookieless analytics service that records aggregate figures only and does not identify you or store anything on your device. See Section 6.2.
2.4 Communication Data
- Messages sent through the Platform’s messaging system
- Translated message content (when auto-translation is used)
- Support requests submitted through the support form
- Email communications related to your account
2.5 Transaction Data
- Project details, contract terms, and milestone information
- Invoice records and payment history
- Application proposals and supporting documents
- Workplace AI credit purchases, AI Monthly subscription status, and your AI credit balance and usage
2.6 Uploaded Files
- Profile photos, banner images, and portfolio thumbnails
- Project documents (PDF, DOCX, Markdown)
- Application attachments
- Invoice PDFs
- Datasets you upload to yoDEV Decisions (see Section 4.9)
3. How We Use Your Information
We use your information to:
- Provide services— Operate and maintain all Platform features
- Authentication— Verify your identity across all yoDEV services
- Communication— Send notifications about account activity, messages, contract updates, and application status
- Translation— Translate messages between users who use different languages
- Billing— Process purchases and subscriptions (such as Workplace AI credits and AI Monthly) and generate invoices
- Matching— Help businesses find developers and vice versa through search and filtering
- Improvement— Analyze usage patterns to improve the Platform
- Security— Detect and prevent fraud, abuse, and unauthorized access
- Support— Respond to your inquiries and resolve issues
- Legal compliance— Meet legal obligations and enforce our Terms
4. How We Share Your Information
4.1 Public Profile Information
Your profile information (name, headline, skills, rates, availability, portfolio) is publicly visible on the Platform to other registered users. You control what information you include in your profile.
4.2 Other Platform Users
- Messaging content is shared with your conversation partners
- Proposals are shared with the business party
- Contract terms are shared between contracting parties
- Reviews are publicly visible
- Where a developer connects Linear to a contract’s workspace, the issue tracking for that one linked project is visible to the other party on the contract (see Section 4.8)
4.3 Third-Party Service Providers
We share data with third-party services that help us operate the Platform:
| Service | Purpose | Data Shared |
|---|---|---|
| Discourse | Community forum, identity provider | Account info, profile data, forum content |
| Optional sign-in; optional Workplace integration for sending documents by email (see Section 4.7) | Email address, name, profile picture. If you connect the Workplace integration: the recipients, subject, message and attachment of each email you choose to send | |
| Linear | Optional Workplace issue tracking for a worX contract, connected by the developer (see Section 4.8) | The issues, comments, labels and workflow states of the single Linear project linked to that contract |
| OpenRouter | Routes yoDEV Decisions requests to AI models (see Section 4.9) | The text of the dataset rows being evaluated, with the question and its answer options. Requests to Jev use yoDEV’s account; requests to the model you choose use your own OpenRouter account and are sent from your browser |
| TypeSafe AI | Provides the Jev model used in yoDEV Decisions, reached through OpenRouter (see Section 4.9) | The text of the dataset rows being evaluated, with the question and its answer options |
| Plausible Analytics | Cookieless visit measurement (see Section 6.2) | The page address visited, the referring site, and the browser, operating system and country derived from your request. No cookies, no identifiers, nothing stored on your device |
| Wise | Project payments and payouts | Billing info, transaction amounts |
| DeepL | Message translation | Message text content |
| Railway | Application hosting | All application data (hosted infrastructure) |
| Cloudflare/R2 | File storage and CDN | Uploaded files, images, documents |
| AWS SES | Email delivery | Email addresses, notification content |
| Stripe | Payments for Workplace AI credits and AI Monthly | Email address, account identifier, and purchase details. Your card or other payment details are entered directly with Stripe; we do not receive or store your full card number |
4.4 Legal Requirements
We may disclose your information if required by law, legal process, government request, or to protect the rights, property, or safety of yoDEV, our users, or the public.
4.5 Business Transfers
In the event of a merger, acquisition, or sale of assets, your information may be transferred to the acquiring entity.
4.6 What We Do NOT Do
- We do not sell your personal information to third parties
- We do not use your content to train AI models
- We do not share your information with advertisers
4.7 Google User Data and Limited Use
Google Sign-In
You may choose to create or access your yoDEV account using your Google account. If you do, Google shares a limited set of information with us:
| Data | Why we use it |
|---|---|
| Email address | To identify your account and communicate with you about the service |
| Name and profile picture | To populate your community profile |
| Google account identifier | To link your sign-in to your existing yoDEV account on subsequent visits |
We request only the minimum sign-in scopes (openid, email, profile). Signing in with Google does not give us access to your Gmail messages, Google Drive files, Google Calendar events, contacts, or your Google password — none of those are included in these scopes. The yoDEV Workplace integration described below is separate: it is off unless you explicitly connect it, and the permissions it requests are listed there.
This information is stored with your yoDEV account for as long as the account exists. You may disconnect Google Sign-In at any time from your account settings, or delete your account by contacting team@yodev.dev. We do not sell this information, and we do not use it for advertising.
yoDEV’s use and transfer of information received from Google APIs adheres to the Google API Services User Data Policy, including the Limited Use requirements.
Connecting your Google account to yoDEV Workplace
yoDEV Workplace offers an optional integration with Google. It is off until you explicitly connect it, and it is entirely separate from Google Sign-In — connecting or disconnecting it never affects your ability to sign in.
When you connect it, we request three permissions and use them only for the actions you initiate:
| Permission | What it allows | What we do with it |
|---|---|---|
gmail.send |
Send email as you | Send the document you are viewing, as an attachment, to recipients you type in, when you click Send. This permission is send-only: it does not allow reading, searching or listing your mail, and we do none of those things. |
contacts.readonly |
Read your saved contacts | Suggest addresses as you type a recipient. |
contacts.other.readonly |
Read your “other contacts” — people you have corresponded with but never saved | The same suggestions, so that someone you have emailed before but never added to Contacts still appears. |
Every one of these happens only when you act. Sending happens when you click Send; contact suggestions are fetched while you are typing a recipient. Nothing runs in the background, and nothing is accessed on a schedule.
What we store.
- The access and refresh tokens Google issues, so you do not have to reconnect on every visit. They are held on our servers and used only to carry out actions you initiate.
- An audit entry for each send — who sent it, when, the recipients, the subject, whether it succeeded, and the message identifier Gmail returned. This exists so that email sent in your name is accountable. We do not record the message body or the attachment.
- Nothing from your contacts. Contact suggestions are passed to your browser as you type and are never written to our database. The only thing we keep is a short-lived marker that a first lookup has been made for your account, which expires by itself.
What we never do. We do not read, search or list your mailbox — the permission we hold does not permit it. We do not store copies of your email. We do not sell your Google data, use it for advertising, or use it to train any AI or machine-learning model, including Workplace’s own AI features.
Disconnecting. You can disconnect at any time from Workplace settings. That deletes the tokens we hold, and we can no longer act on your behalf. Deleting your yoDEV account deletes them too.
To withdraw the permission itself, visit myaccount.google.com/permissions and remove yoDEV Workplace. Disconnecting inside Workplace removes our copy of the keys; only Google can retire the grant on its side. Emails you have already sent are unaffected.
yoDEV’s use and transfer of information received from Google APIs adheres to the Google API Services User Data Policy, including the Limited Use requirements.
4.8 Linear (issue tracking inside yoDEV Workplace)
yoDEV Workplace offers an optional integration with Linear, an issue-tracking service. It is off until a developer explicitly connects it, it is separate from every other integration, and connecting or disconnecting it never affects your ability to sign in.
Who connects it, and who can see it
Only the developer on a worX contract connects Linear, using their own Linear account. The employer never connects anything and never needs a Linear account.
Instead, the issue state of the one Linear project linked to the contract is shown to the other party inside the shared Workplace workspace that the contract already provisions. This is a disclosure of information from the developer’s Linear workspace to the other party on that contract, and it follows from the contract itself. A developer who does not want that disclosure should not connect Linear to that workspace.
What we ask Linear for
| Permission | What it allows | What we do with it |
|---|---|---|
read |
Read the developer’s Linear workspace | Read the issues, comments, labels and workflow states of the one project linked to the contract |
write |
Modify existing issues | Apply changes the developer makes in Workplace — title, status, assignee, labels |
issues:create |
Create issues | Create an issue when the developer creates one in Workplace |
comments:create |
Create comments | Post a comment when the developer writes one in Workplace |
We do not request Linear’s admin permission.
What the permission covers, as distinct from what we do
This distinction matters and we state it plainly rather than implying the permission is narrower than it is.
Linear’s access tokens cannot be restricted to a single team or project. A token issued for this integration technically reaches everything the developer can see in their Linear workspace, which for many developers includes work for other clients.
yoDEV restricts itself in software to the single project linked to the contract: every read is filtered by that project before any data leaves our servers, every write is refused unless the issue is first confirmed to belong to it, and update notifications about any other project are discarded on arrival. That restriction is ours, not Linear’s. It is enforced by our code, not by the scope of the permission you grant.
What we store
- The access and refresh tokens Linear issues, so the developer does not have to reconnect on every visit. They are held on our servers and used only for the linked project.
- A copy of the linked project’s issues and comments — identifier, title, description, workflow state, assignee name, labels, and the text and author of comments. This copy is what the employer reads. It exists so that the employer never holds a Linear token, so that their browsing does not consume the developer’s Linear rate limit, and so that the record of work done survives the connection being removed.
- Identifiers for the update notifications Linear sends us, so that a repeated notification is not applied twice.
We store nothing from any other Linear project.
How long we keep it
The copied issue and comment data is kept for as long as the contract’s Workplace workspace exists, and is deleted when that workspace is deleted.
Disconnecting Linear does not delete it. Disconnecting deletes the tokens we hold and stops us reading from Linear, but the employer keeps the record of work already done — which they have no other way to retrieve, having never had a Linear account. To remove the copied data, delete the workspace.
What we never do
We do not read, or store anything from, any Linear project other than the one linked to the contract. We do not sell Linear data, use it for advertising, or use it to train any AI or machine-learning model, including Workplace’s own AI features.
Disconnecting
A developer can disconnect at any time from Workplace settings, which deletes the tokens we hold and ends our access. Deleting your yoDEV account deletes them too.
To withdraw the permission itself, remove yoDEV Workplace from your applications in Linear’s own settings. Disconnecting inside Workplace removes our copy of the keys; only Linear can retire the grant on its side. Issues and comments already created in Linear are unaffected and remain yours.
4.9 yoDEV Decisions
yoDEV Decisions (decisions.yodev.dev) lets members compare decision models, such as Jev from TypeSafe AI, with a large language model (LLM) of their choice, on public datasets or on a labelled dataset they upload. It is optional. You can run its public datasets without an account; uploading your own data, saving results to Workplace and keeping your runs require signing in with your yoDEV account.
What we store
- If you use it without an account: the runs you make on the public datasets and their results, linked to a random identifier kept in a cookie in your browser (Section 6.1). We do not store your IP address, name, email or any other personal data with them. If you choose to compare with an LLM, the same rules as for members apply: the comparison runs from your browser on your own OpenRouter account.
- Your account link: your yoDEV account identifier, email address, name and language, and which yoDEV page or post first brought you to Decisions.
- Datasets you upload: the dataset’s name, the question and its answer options, and its rows — the text of each row and the answer you expect.
- Run results: for each row, each model’s answer, probability, confidence, response time and cost. Results do not include the text of your rows.
- Your monthly usage, and any request you make for extra usage, including the reason you give.
- If you turn on saving to Workplace: the workspace you chose, and an encrypted, time-limited access token for it.
- An audit log of usage changes, administrative actions and each automatic deletion pass.
Where the text of your rows is sent
To produce a comparison, the text of the rows being evaluated, with the question and its answer options, is sent to two model providers:
- Jev, through OpenRouter, on yoDEV’s own account. yoDEV pays for these requests.
- The LLM you choose, through OpenRouter, on your OpenRouter account. These requests go directly from your browser to OpenRouter and do not pass through our servers. They are governed by your OpenRouter account and OpenRouter’s terms.
OpenRouter and TypeSafe AI process that text under their own privacy policies. Do not upload data you are not permitted to share with them.
Your OpenRouter key stays in your browser
When you connect OpenRouter, your key is kept in your browser’s local storage for decisions.yodev.dev. It is never sent to our servers, stored in our database or logged. To remove it, disconnect OpenRouter in Decisions or clear your browser’s site data for decisions.yodev.dev. To retire the key itself, revoke it in your OpenRouter account.
Saving to yoDEV Workplace
If you turn on saving to Workplace, a report of each run is saved as a document in the workspace you chose. For datasets you upload, the report contains the metrics and row numbers only — never the text of your rows. For public datasets, it may quote short excerpts of their rows.
How long we keep it
- Runs made without an account are deleted 7 days after your first one. The automatic deletion runs once a day, so they are gone within 8 days. If you sign in with your yoDEV account before then, in the same browser, they move to your account and are kept like any other run.
- Uploaded rows are deleted automatically 30 days after the last run on that dataset, or 30 days after upload if it was never run. The dataset’s name, its question and your run results are kept, so your past results remain viewable.
- You can delete an uploaded dataset at any time. Deleting it deletes its rows and the runs made with it.
- Everything else is kept for as long as your account exists.
- Backups. We keep daily backups of yoDEV Decisions for 6 days so we can restore the service after a failure. Deleted data, including uploaded rows removed after 30 days, can remain in those backups until they expire, and is gone within 6 days of deletion.
- Keep your own copy. yoDEV Decisions is not a storage service. We cannot restore an individual dataset, whether you deleted it or it was deleted after 30 days, and our backups are not a way to recover your data. Keep the original of anything you upload.
What we never do
We do not sell your datasets or results, use them for advertising, or use them to train AI or machine-learning models. We do not show your datasets or results to other members. The public results pages show only public datasets.
5. Data Storage and Security
5.1 Data Residency
- Application data is hosted on Railway (United States)
- File storage uses Cloudflare R2 (distributed globally)
- Community data is hosted on Discourse (cloud infrastructure)
- Workspace data is hosted on Railway (United States)
- yoDEV Decisions data is hosted on Railway (United States)
5.2 Security Measures
We implement industry-standard security measures including:
- Encrypted sessions (AES-256-GCM)
- HTTPS/TLS for all data transmission
- Encrypted storage for sensitive credentials
- OIDC-based authentication with PKCE
- HttpOnly, Secure session cookies
- Regular security reviews
5.3 Sensitive Data
Financial credentials (such as payment account details) are encrypted at rest using AES-256 encryption and are never logged or exposed in API responses.
6. Cookies and Tracking
6.1 Essential Cookies
We use essential cookies for:
- Session management—
yodev_sessionencrypted cookie for authentication - yoDEV Decisions—
yodev_decisions_sessionencrypted cookie for authentication; thejev_guestencrypted cookie, set only when you start a run without an account so that you can see your runs, which holds a random identifier and expires after 7 days; theNEXT_LOCALEcookie, which remembers the language you chose (1 year); and browser local storage for your OpenRouter key and last-chosen model (Section 4.9) - OIDC flow— Temporary cookies for the authentication process (state, code verifier)
- Locale preferences— Language selection
These are required for the Platform to work and are set without consent, as permitted for strictly necessary cookies.
yoDEV Decisions also sets one first-party cookie that is not strictly necessary. When you follow a link to Decisions from another yoDEV page, such as the homepage, or from a link in one of our posts, it records which one, so that we know which of our pages and posts bring members to Decisions. It holds only a short name for that page or post and no identifier for you, is never shared, and is deleted when you sign in, or after 7 days if you do not.
6.2 Analytics — cookieless, and no consent banner
We measure how our public pages are used with Plausible Analytics, on the yoDEV Homepage (yodev.dev), the yoDEV Community forum (www.yodev.dev) and yoDEV Decisions (decisions.yodev.dev).
Plausible sets no cookies. It stores nothing on your device, creates no persistent identifier for you, and does not follow you between visits or across other websites. What it records is aggregate: the page address visited, the site that referred you, and the browser, operating system and country derived from your request. None of it is linked to your yoDEV account.
Because nothing is stored on or read from your device and no profile of you is built, no cookie consent banner is required and none is shown. There is nothing to opt into and nothing to withdraw.
Previously: until 2 September 2026 we used Google Analytics, which set _ga cookies on both the Homepage and the Community forum. It has been removed from both and those cookies are no longer set. If your browser still holds a _ga cookie from before that date it is inactive and receives nothing; you can remove it through your browser’s site-data settings.
6.3 No Advertising Cookies
We do not use advertising cookies, we do not serve ads on the Platform, we do not track you across other websites, and we do not sell or share your data with advertisers.
6.4 Third-Party Cookies
Third-party services integrated into the Platform (Discourse) may set their own cookies subject to their privacy policies.
7. Data Retention
| Data Type | Retention Period |
|---|---|
| Account information | Duration of account + 30 days after deletion |
| Server logs (IP addresses) | 90 days |
| Messages | Duration of account |
| Project/contract records | Duration of account + 2 years (for legal/tax purposes) |
| Invoices | 5 years (legal/tax requirement) |
| Uploaded files | Duration of account (or until manually deleted) |
| Linear issue and comment copies | Duration of the contract’s Workplace workspace — deleted with the workspace, not deleted by disconnecting Linear (Section 4.8) |
| Linear access tokens | Until the developer disconnects, or the account is deleted |
| yoDEV Decisions uploaded rows | 30 days after the last run on the dataset (or after upload, if never run), or sooner if you delete the dataset; removed from backups within 6 days after that (Section 4.9) |
| yoDEV Decisions dataset details and run results | Duration of account, or until you delete the dataset |
| yoDEV Decisions runs made without an account | 7 days after the first run (deleted in a daily pass, so within 8 days), or moved to your account if you sign in (Section 4.9) |
| OpenRouter key for yoDEV Decisions | Kept only in your browser, never on our servers (Section 4.9) |
| Session cookies | 7 days |
| Analytics cookies | None — our analytics sets no cookies (Section 6.2) |
8. Your Rights
You have the right to:
- Access— Request a copy of the personal data we hold about you
- Correction— Request correction of inaccurate or incomplete data
- Deletion— Request deletion of your account and associated data
- Portability— Request your data in a structured, machine-readable format
- Restriction— Request restriction of processing in certain circumstances
- Objection— Object to processing of your data for specific purposes
- Withdrawal of consent— Where we rely on your consent, withdraw it at any time, as easily as it was given
To exercise these rights, contact us at team@yodev.dev. We will respond within 30 days.
8.1 Account Deletion
When you request account deletion:
- Your profile is removed from public view immediately
- Your personal data is deleted within 30 days
- Transaction records may be retained for legal/tax compliance (anonymized where possible)
- Content posted to the Community forum may remain but will be anonymized
- Workspace documents shared with others may remain accessible to collaborators
9. International Data Transfers
Your data may be transferred to and processed in countries outside your country of residence, including the United States (where our infrastructure is hosted). By using the Platform, you consent to such transfers. We ensure appropriate safeguards are in place for international data transfers.
10. Children’s Privacy
yoDEV is not intended for individuals under 18 years of age. We do not knowingly collect personal information from children under 18. If we become aware that we have collected data from a child under 18, we will delete it promptly.
11. Regional Privacy Considerations
11.1 Brazil (LGPD)
If you are a resident of Brazil, you have additional rights under the Lei Geral de Proteção de Dados (LGPD), including the right to confirmation of data processing, access, correction, anonymization, portability, and deletion. Our legal basis for processing is consent (provided at registration) and legitimate interest (for Platform operation).
11.2 European Economic Area (GDPR)
If you are located in the EEA, we process your data based on: (a) your consent, (b) contractual necessity, (c) legal obligations, and (d) legitimate interests. You have additional rights including the right to lodge a complaint with your local data protection authority.
The aggregate analytics described in Section 6.2 involve no cookies and no identifier for you, and are processed on the basis of our legitimate interest in understanding how our public pages are used.
11.3 Chile (Law 19.628 and Law 21.096)
If you are a resident of Chile, you have rights under Chilean data protection laws (Law 19.628 on the Protection of Private Life and Law 21.096 on the constitutional protection of personal data), including the right to access, correct, and delete your personal data held by us.
12. Changes to This Policy
We may update this Privacy Policy from time to time. We will notify you of material changes by email or through the Platform. The “Last Updated” date at the top indicates when the policy was last revised.
13. Contact
For privacy-related inquiries or to exercise your rights:
yoDEV, LLC
Gregory Willis
169 Madison Ave STE 49589
New York, NY 10016
Email: team@yodev.dev
Website: www.yodev.dev
For data protection concerns, you may also contact our Data Protection contact at: privacy@yodev.dev
This Privacy Policy applies to all yoDEV platform services.