Privacy Ratings

Як долучитися

Усе відбувається на GitHub. Немає жодного іншого форуму, чату чи облікового запису, який треба створювати.

Щоб зробити це Використовуйте
Запропонувати застосунок чи сервіс Створіть issue «Suggest»
Повідомити про неправильну відповідь чи непрацююче посилання Створіть issue «Correction» або скористайтеся кнопкою «Повідомити про виправлення» на будь-якій сторінці рейтингу
Запропонувати або змінити критерії Створіть issue «Criteria change»
Виправити самостійно Скористайтеся кнопкою «Редагувати на GitHub» на будь-якій сторінці рейтингу або створіть pull request
Поставити запитання чи обговорити наш вибір GitHub Discussions

Редагування рейтингу

Кожен застосунок чи сервіс — це один файл Markdown у ratings/<category>/<name>.md. Верхня частина файлу — YAML. Усе нижче — необов’язкові примітки в Markdown, що показуються на сторінці.

---
name: Example Mail
description: >-
  One or two plain sentences about what it is.
website: https://example.com
source: https://github.com/example/example      # необов’язково
platforms: [web, android, ios]                  # необов’язково
jurisdiction: CH                                # необов’язково, код країни з jurisdictions.yml
mainstream: true                                # необов’язково, додає сторінку «альтернативи»
aliases: [Example Office, Example Docs]         # необов’язково, інші назви, за якими шукають
also_in: [macos-hardening]                      # необов’язково, також показує запис у таблиці іншої категорії
alternatives_page: true                         # необов’язково, додає сторінку «альтернативи» без mainstream
domain: mail.example.com                        # лише сервіси, використовується для автоматичних тестів
mail_domain: example.com                        # лише поштові категорії
imap_host: imap.example.com                     # лише поштові сервіси; false, якщо не пропонується
pop3_host: pop3.example.com                     # необов’язково, за відсутності береться з SRV-записів
smtp_host: smtp.example.com                     # необов’язково, за відсутності береться з SRV-записів
criteria:
  open_source:
    answer: partial
    evidence: https://github.com/example/example/blob/main/LICENSE
    note: Apps are open source. The server is not.
  no_ads:
    answer: yes
    evidence: https://example.com/pricing
---

Optional notes in Markdown.

Правила (автоматично перевіряються командою npm test):

Критерії для кожної категорії та значення кожної відповіді наведено в criteria/ і на сторінці критеріїв.

Додавання застосунку чи сервісу

npm ci
npm run new -- vpns "Example VPN" https://example.com

Це створює файл, у якому кожен критерій позначено як unknown. Заповніть те, що можете довести, видаліть решту, потім запустіть npm test.

Стиль написання

Локальний запуск сайту

Потрібен Node.js 18 або новішої версії.

npm ci
npm test           # перевірити дані та зібрати сайт
npm run serve      # попередній перегляд на http://localhost:8080

Додавання сторінки

Покладіть файл Markdown із title і description у pages/. Його буде опубліковано за адресою /<file-name>/ разом із копією в Markdown, структурованими даними та записом у карті сайту.

Додавання категорії чи критерію

  1. Додайте категорію до categories.yml у відповідну групу.
  2. За бажанням додайте criteria/<category-id>.yml із критеріями, специфічними для категорії. Скопіюйте формат з наявного файлу.
  3. Створіть ratings/<category-id>/ і додайте записи.
  4. Зміни критеріїв проходять перевірку за правилами з GOVERNANCE.md.

Переклади

Сайт публікується 25 мовами. Англійська є мовою оригіналу, а кожна інша мова розміщена в i18n/<code>/:

Файл Містить
ui.json Текст інтерфейсу: заголовки, кнопки та речення з {placeholders}
data.json Назви категорій, критерії, посібники та примітки щодо країн
entries.json Описи рейтингів, обґрунтування вибору та розкриття інформації
pages/*.md Цілі документи, як-от цей

Кожен файл JSON зіставляє англійський текст із його перекладом. Коли англійський текст змінюється, старий переклад більше не відповідає йому, тому показується англійський текст, доки хтось не перекладе новий. Застарілий текст ніколи не показується.

  1. Виконайте npm run build. Команда записує поточні англійські списки в i18n/source/.
  2. Виконайте npm run i18n:check, щоб побачити, чого бракує в кожній мові, або node scripts/i18n-check.js de ui, щоб отримати подробиці щодо однієї мови та файлу.
  3. Додайте або виправте переклади, зберігаючи кожен {placeholder} точно без змін.
  4. Для документа скопіюйте англійський текст із i18n/source/pages/, збережіть його перший рядок (<!-- source: … -->, який прив’язує переклад до цієї версії англійського тексту) і перекладіть решту.

Примітки та докази до окремих відповідей залишаються англійською. Порівняння та більшість окремих рейтингів доступні лише англійською; вибір редакції, категорії, посібники, альтернативи, списки відкритого коду, юрисдикції та документи перекладаються. Меню мов і автоматичне перенаправлення використовують посилання hreflang на кожній сторінці.

Контрольний список для pull request

Редагувати цю сторінку на GitHub Markdown