Use HTML for admonitions (#2367)

Signed-off-by: Daniel Gray <dngray@privacyguides.org>
This commit is contained in:
Jonah Aragon 2024-01-14 23:22:32 -06:00
parent 9e40a3ece5
commit 7ebe767518
No known key found for this signature in database
13 changed files with 600 additions and 197 deletions

View File

@ -155,6 +155,7 @@ nav:
- Contributing:
- Writing Guide:
- 'meta/writing-style.md'
- 'meta/admonitions.md'
- 'meta/brand.md'
- 'meta/translations.md'
- Technical Guides:

View File

@ -142,6 +142,7 @@ nav:
- Contributing:
- Writing Guide:
- 'meta/writing-style.md'
- 'meta/admonitions.md'
- 'meta/brand.md'
- 'meta/translations.md'
- Technical Guides:

View File

@ -104,6 +104,7 @@ nav:
- 'dns.md'
- 'email.md'
- 'financial-services.md'
- 'photo-management.md'
- 'search-engines.md'
- 'vpn.md'
- Software:
@ -139,6 +140,7 @@ nav:
- Contribuir:
- "Guía de redacción":
- 'meta/writing-style.md'
- 'meta/admonitions.md'
- 'meta/brand.md'
- 'meta/translations.md'
- "Guías técnicas":

View File

@ -140,6 +140,7 @@ nav:
- "Contribuer":
- "Guide de rédaction":
- 'meta/writing-style.md'
- 'meta/admonitions.md'
- 'meta/brand.md'
- 'meta/translations.md'
- "Guides techniques":

View File

@ -144,6 +144,7 @@ nav:
- Contributing:
- Writing Guide:
- 'meta/writing-style.md'
- 'meta/admonitions.md'
- 'meta/brand.md'
- 'meta/translations.md'
- Technical Guides:

View File

@ -104,6 +104,7 @@ nav:
- 'dns.md'
- 'email.md'
- 'financial-services.md'
- 'photo-management.md'
- 'search-engines.md'
- 'vpn.md'
- Software:
@ -139,6 +140,7 @@ nav:
- Contribuisci:
- Guida alla scrittura:
- 'meta/writing-style.md'
- 'meta/admonitions.md'
- 'meta/brand.md'
- 'meta/translations.md'
- Guide tecniche:

View File

@ -140,6 +140,7 @@ nav:
- Bijdragen:
- Schrijfgids:
- 'meta/writing-style.md'
- 'meta/admonitions.md'
- 'meta/brand.md'
- 'meta/translations.md'
- Technische gids:

View File

@ -106,6 +106,7 @@ nav:
- 'dns.md'
- 'email.md'
- 'financial-services.md'
- 'photo-management.md'
- 'search-engines.md'
- 'vpn.md'
- Программное обеспечение:
@ -141,7 +142,9 @@ nav:
- Помощь проекту:
- Руководство по написанию:
- 'meta/writing-style.md'
- 'meta/admonitions.md'
- 'meta/brand.md'
- 'meta/translations.md'
- Технические руководства:
- 'meta/uploading-images.md'
- 'meta/git-recommendations.md'

View File

@ -106,6 +106,7 @@ nav:
- 'dns.md'
- 'email.md'
- 'financial-services.md'
- 'photo-management.md'
- 'search-engines.md'
- 'vpn.md'
- 軟體:
@ -141,7 +142,9 @@ nav:
- 貢獻:
- 寫作指南:
- 'meta/writing-style.md'
- 'meta/admonitions.md'
- 'meta/brand.md'
- 'meta/translations.md'
- 技術指導:
- 'meta/uploading-images.md'
- 'meta/git-recommendations.md'

View File

@ -7,10 +7,13 @@ cover: device-integrity.webp
These tools can be used to validate the integrity of your mobile devices and check them for indicators of compromise by spyware and malware such as Pegasus, Predator, or KingsPawn. This page focuses on **mobile security**, because mobile devices typically have read-only systems with well-known configurations, so detecting malicious modifications is easier than on traditional desktop systems. We may expand the focus of this page in the future.
!!! note "This is an advanced topic"
<div class="admonition note" markdown>
<p class="admonition-title">This is an advanced topic</p>
These tools may provide utility for certain individuals. They provide functionality which most people do not need to worry about, and often require more in-depth technical knowledge to use effectively.
</div>
It is **critical** to understand that scanning your device for public indicators of compromise is **not sufficient** to determine that a device is "clean", and not targeted with a particular spyware tool. Reliance on these publicly-available scanning tools can miss recent security developments and give you a false sense of security.
## General Advice
@ -44,7 +47,8 @@ These tools provide analysis based on the information they have the ability to a
External verification tools run on your computer and scan your mobile device for forensic traces which are helpful to identify potential compromise.
!!! danger
<div class="admonition danger" markdown>
<p class="admonition-title">Danger</p>
Public indicators of compromise are insufficient to determine that a device is "clean", and not targeted with a particular spyware tool. Reliance on public indicators alone can miss recent forensic traces and give a false sense of security.
@ -52,11 +56,13 @@ External verification tools run on your computer and scan your mobile device for
Such support is available to civil society through [Amnesty International's Security Lab](https://www.amnesty.org/en/tech/) or [Access Nows Digital Security Helpline](https://www.accessnow.org/help/).
</div>
These tools can trigger false-positives. If any of these tools finds indicators of compromise, you need to dig deeper to determine your actual risk. Some reports may be false positives based on websites you've visited in the past, and findings which are many years old are likely either false-positives or indicate previous (and no longer active) compromise.
### Mobile Verification Toolkit
!!! recommendation
<div class="admonition recommendation" markdown>
![MVT logo](assets/img/device-integrity/mvt.webp){ align=right }
@ -65,15 +71,23 @@ These tools can trigger false-positives. If any of these tools finds indicators
[:octicons-home-16: Homepage](https://mvt.re/){ .md-button .md-button--primary }
[:octicons-code-16:](https://github.com/mvt-project/mvt){ .card-link title="Source Code" }
??? downloads
<details class="downloads" markdown>
<summary>Downloads</summary>
- [:simple-apple: macOS](https://docs.mvt.re/en/latest/install/)
- [:simple-linux: Linux](https://docs.mvt.re/en/latest/install/)
!!! warning
</details>
</div>
<div class="admonition warning" markdown>
<p class="admonition-title">Warning</p>
Using MVT is insufficient to determine that a device is "clean", and not targeted with a particular spyware tool.
</div>
MVT is *most* useful for scanning iOS devices. Android stores very little diagnostic information useful to triage potential compromises, and because of this `mvt-android` capabilities are limited as well. On the other hand, encrypted iOS iTunes backups provide a large enough subset of files stored on the device to detect suspicious artifacts in many cases. This being said, MVT does still provide fairly useful tools for both iOS and Android analysis.
If you use iOS and are at high-risk, we have three additional suggestions for you:
@ -89,7 +103,7 @@ MVT allows you to perform deeper scans/analysis if your device is jailbroken. Un
### iMazing (iOS)
!!! recommendation
<div class="admonition recommendation" markdown>
![iMazing logo](assets/img/device-integrity/imazing.png){ align=right }
@ -99,24 +113,32 @@ MVT allows you to perform deeper scans/analysis if your device is jailbroken. Un
[:octicons-eye-16:](https://imazing.com/privacy-policy){ .card-link title="Privacy Policy" }
[:octicons-info-16:](https://imazing.com/spyware-analyzer){ .card-link title=Documentation}
??? downloads
<details class="downloads" markdown>
<summary>Downloads</summary>
- [:simple-windows11: Windows](https://imazing.com/download)
- [:simple-apple: macOS](https://imazing.com/download)
</details>
</div>
iMazing automates and interactively guides you through the process of using [MVT](#mobile-verification-toolkit) to scan your device for publicly-accessible indicators of compromise published by various threat researchers. All of the information and warnings which apply to MVT apply to this tool as well, so we suggest you also familiarize yourself with the notes on MVT in the sections above.
## On-Device Verification
These are apps you can install which check your device and operating system for signs of tampering, and validate the identity of your device.
!!! warning
<div class="admonition warning" markdown>
<p class="admonition-title">Warning</p>
Using these apps is insufficient to determine that a device is "clean", and not targeted with a particular spyware tool.
</div>
### Auditor (Android)
!!! recommendation
<div class="admonition recommendation" markdown>
![Auditor logo](assets/img/device-integrity/auditor.svg#only-light){ align=right }
![Auditor logo](assets/img/device-integrity/auditor-dark.svg#only-dark){ align=right }
@ -129,12 +151,17 @@ These are apps you can install which check your device and operating system for
[:octicons-code-16:](https://attestation.app/source){ .card-link title="Source Code" }
[:octicons-heart-16:](https://attestation.app/donate){ .card-link title=Contribute }
??? downloads
<details class="downloads" markdown>
<summary>Downloads</summary>
- [:simple-googleplay: Google Play](https://play.google.com/store/apps/details?id=app.attestation.auditor.play)
- [:simple-github: GitHub](https://github.com/GrapheneOS/Auditor/releases)
- [:material-cube-outline: GrapheneOS App Store](https://github.com/GrapheneOS/Apps/releases)
</details>
</div>
Auditor is not a scanning/analysis tool like some other tools on this page, rather it uses your device's hardware-backed keystore to allow you to verify the identity of your device and gain assurance that the operating system itself hasn't been tampered with or downgraded via verified boot. This provides a very robust integrity check of your device itself, but doesn't necessarily check whether the user-level apps running on your device are malicious.
Auditor performs attestation and intrusion detection with **two** devices, an *auditee* (the device being verified) and an *auditor* (the device performing the verification). The auditor can be any Android 10+ device (or a remote web service operated by [GrapheneOS](android.md#grapheneos)), while the auditee must be a specifically [supported device](https://attestation.app/about#device-support). Auditor works by:
@ -155,13 +182,16 @@ If your [threat model](basics/threat-modeling.md) requires privacy, you could co
These are apps you can install on your device which scan your device for signs of compromise.
!!! warning
<div class="admonition warning" markdown>
<p class="admonition-title">Warning</p>
Using these apps is insufficient to determine that a device is "clean", and not targeted with a particular spyware tool.
</div>
### Hypatia (Android)
!!! recommendation
<div class="admonition recommendation" markdown>
![Hypatia logo](assets/img/device-integrity/hypatia.svg#only-light){ align=right }
![Hypatia logo](assets/img/device-integrity/hypatia-dark.svg#only-dark){ align=right }
@ -173,15 +203,20 @@ These are apps you can install on your device which scan your device for signs o
[:octicons-code-16:](https://github.com/divested-mobile/hypatia){ .card-link title="Source Code" }
[:octicons-heart-16:](https://divested.dev/pages/donate){ .card-link title=Contribute }
??? downloads
<details class="downloads" markdown>
<summary>Downloads</summary>
- [:simple-android: F-Droid](https://f-droid.org/packages/us.spotco.malwarescanner/)
</details>
</div>
Hypatia is particularly good at detecting common stalkerware: If you suspect you are a victim of stalkerware, you should [visit this page](https://stopstalkerware.org/information-for-survivors/) for advice.
### iVerify (iOS)
!!! recommendation
<div class="admonition recommendation" markdown>
![iVerify logo](assets/img/device-integrity/iverify.webp){ align=right }
@ -191,10 +226,15 @@ Hypatia is particularly good at detecting common stalkerware: If you suspect you
[:octicons-eye-16:](https://www.iverify.io/privacy-policy){ .card-link title="Privacy Policy" }
[:octicons-info-16:](https://www.iverify.io/frequently-asked-questions#iVerify-General){ .card-link title=Documentation}
??? downloads
<details class="downloads" markdown>
<summary>Downloads</summary>
- [:simple-appstore: App Store](https://apps.apple.com/us/app/iverify/id1466120520)
</details>
</div>
Like all iOS apps, iVerify is restricted to what it can observe about your device from within the iOS App Sandbox. It will not provide nearly as robust analysis as a full-system analysis tool like [MVT](#mobile-verification-toolkit). Its primary function is to detect whether your device is jailbroken, which it is effective at, however a hypothetical threat which is *specifically* designed to bypass iVerify's checks would likely succeed at doing so.
iVerify is **not** an "antivirus" tool, and will not detect non-system-level malware such as malicious custom keyboards or malicious Wi-Fi Sync configurations, for example.

View File

@ -28,15 +28,18 @@ These providers natively support OpenPGP encryption/decryption and the [Web Key
</div>
!!! warning
<div class="admonition warning" markdown>
<p class="admonition-title">Warning</p>
When using E2EE technology like OpenPGP your email will still have some metadata that is not encrypted in the header of the email, generally including the subject line! Read more about [email metadata](basics/email-security.md#email-metadata-overview).
OpenPGP also does not support Forward secrecy, which means if either your or the recipient's private key is ever stolen, all previous messages encrypted with it will be exposed. [How do I protect my private keys?](basics/email-security.md#how-do-i-protect-my-private-keys)
</div>
### Proton Mail
!!! recommendation
<div class="admonition recommendation" markdown>
![Proton Mail logo](assets/img/email/protonmail.svg){ align=right }
@ -48,7 +51,8 @@ These providers natively support OpenPGP encryption/decryption and the [Web Key
[:octicons-info-16:](https://proton.me/support/mail){ .card-link title=Documentation}
[:octicons-code-16:](https://github.com/ProtonMail){ .card-link title="Source Code" }
??? downloads
<details class="downloads" markdown>
<summary>Downloads</summary>
- [:simple-googleplay: Google Play](https://play.google.com/store/apps/details?id=ch.protonmail.android)
- [:simple-appstore: App Store](https://apps.apple.com/app/apple-store/id979659905)
@ -58,6 +62,10 @@ These providers natively support OpenPGP encryption/decryption and the [Web Key
- [:simple-linux: Linux](https://proton.me/mail/bridge#download)
- [:octicons-browser-16: Web](https://mail.proton.me)
</details>
</div>
Free accounts have some limitations, such as not being able to search body text and not having access to [Proton Mail Bridge](https://proton.me/mail/bridge), which is required to use a [recommended desktop email client](email-clients.md) (e.g. Thunderbird). Paid accounts include features like Proton Mail Bridge, additional storage, and custom domain support. A [letter of attestation](https://proton.me/blog/security-audit-all-proton-apps) was provided for Proton Mail's apps on 9th November 2021 by [Securitum](https://research.securitum.com).
If you have the Proton Unlimited, Business, or Visionary Plan, you also get [SimpleLogin](#simplelogin) Premium for free.
@ -100,7 +108,7 @@ Proton Mail doesn't offer a digital legacy feature.
### Skiff Mail
!!! recommendation
<div class="admonition recommendation" markdown>
![Skiff Mail logo](assets/img/email/skiff-mail.svg){ align=right }
@ -111,12 +119,17 @@ Proton Mail doesn't offer a digital legacy feature.
[:octicons-info-16:](https://skiff.com/help){ .card-link title=Documentation}
[:octicons-code-16:](https://github.com/skiff-org/skiff-apps){ .card-link title="Source Code" }
??? downloads
<details class="downloads" markdown>
<summary>Downloads</summary>
- [:simple-android: Android](https://play.google.com/store/apps/details?id=com.skemailmobileapp&pli=1)
- [:simple-appstore: iOS](https://apps.apple.com/us/app/skiff-mail/id1619168801)
- [:octicons-browser-16: Web](https://app.skiff.com/mail)
</details>
</div>
Skiff has undergone a few [audits](https://skiff.com/transparency) during its development.
#### :material-check:{ .pg-green } Custom Domains and Aliases
@ -155,7 +168,7 @@ Skiff Mail does not offer a digital legacy feature.
### Mailbox.org
!!! recommendation
<div class="admonition recommendation" markdown>
![Mailbox.org logo](assets/img/email/mailboxorg.svg){ align=right }
@ -165,10 +178,15 @@ Skiff Mail does not offer a digital legacy feature.
[:octicons-eye-16:](https://mailbox.org/en/data-protection-privacy-policy){ .card-link title="Privacy Policy" }
[:octicons-info-16:](https://kb.mailbox.org/en/private){ .card-link title=Documentation}
??? downloads
<details class="downloads" markdown>
<summary>Downloads</summary>
- [:octicons-browser-16: Web](https://login.mailbox.org)
</details>
</div>
#### :material-check:{ .pg-green } Custom Domains and Aliases
Mailbox.org lets you use your own domain, and they support [catch-all](https://kb.mailbox.org/display/MBOKBEN/Using+catch-all+alias+with+own+domain) addresses. Mailbox.org also supports [subaddressing](https://kb.mailbox.org/display/BMBOKBEN/What+is+an+alias+and+how+do+I+use+it), which is useful if you don't want to purchase a domain.
@ -217,7 +235,7 @@ These providers store your emails with zero-knowledge encryption, making them gr
### Tuta
!!! recommendation
<div class="admonition recommendation" markdown>
![Tuta logo](assets/img/email/tuta.svg){ align=right }
@ -229,7 +247,8 @@ These providers store your emails with zero-knowledge encryption, making them gr
[:octicons-code-16:](https://github.com/tutao/tutanota){ .card-link title="Source Code" }
[:octicons-heart-16:](https://tuta.com/community/){ .card-link title=Contribute }
??? downloads
<details class="downloads" markdown>
<summary>Downloads</summary>
- [:simple-googleplay: Google Play](https://play.google.com/store/apps/details?id=de.tutao.tutanota)
- [:simple-appstore: App Store](https://apps.apple.com/app/tutanota/id922429609)
@ -239,6 +258,10 @@ These providers store your emails with zero-knowledge encryption, making them gr
- [:simple-linux: Linux](https://tuta.com/#download)
- [:octicons-browser-16: Web](https://app.tuta.com/)
</details>
</div>
Tuta doesn't support the [IMAP protocol](https://tuta.com/faq/#imap) or the use of third-party [email clients](email-clients.md), and you also won't be able to add [external email accounts](https://github.com/tutao/tutanota/issues/544#issuecomment-670473647) to the Tuta app. [Email import](https://github.com/tutao/tutanota/issues/630) is not currently supported either, though this is [due to be changed](https://tuta.com/blog/posts/kickoff-import). Emails can be exported [individually or by bulk selection](https://tuta.com/howto#generalMail) per folder, which may be inconvenient if you have many folders.
#### :material-check:{ .pg-green } Custom Domains and Aliases
@ -303,7 +326,7 @@ Using an aliasing service requires trusting both your email provider and your al
### addy.io
!!! recommendation
<div class="admonition recommendation" markdown>
![addy.io logo](assets/img/email/addy.svg#only-light){ align=right }
![addy.io logo](assets/img/email/addy-dark.svg#only-dark){ align=right }
@ -316,13 +339,18 @@ Using an aliasing service requires trusting both your email provider and your al
[:octicons-code-16:](https://github.com/anonaddy){ .card-link title="Source Code" }
[:octicons-heart-16:](https://addy.io/donate){ .card-link title=Contribute }
??? downloads
<details class="downloads" markdown>
<summary>Downloads</summary>
- [:simple-android: Android](https://addy.io/faq/#is-there-an-android-app)
- [:material-apple-ios: iOS](https://addy.io/faq/#is-there-an-ios-app)
- [:simple-firefoxbrowser: Firefox](https://addons.mozilla.org/firefox/addon/addy_io/)
- [:simple-googlechrome: Chrome](https://chrome.google.com/webstore/detail/addyio-anonymous-email-fo/iadbdpnoknmbdeolbapdackdcogdmjpe)
</details>
</div>
The number of shared aliases (which end in a shared domain like @addy.io) that you can create is limited to 10 on addy.io's free plan, 50 on their $1/month plan and unlimited on the $4/month plan (billed $3 for a year). You can create unlimited standard aliases (which end in a domain like @[username].addy.io or a custom domain on paid plans), however, as previously mentioned, this can be detrimental to privacy because people can trivially tie your standard aliases together based on the domain name alone. They are useful where a shared domain might be blocked by a service. Securitum [audited](https://addy.io/blog/addy-io-passes-independent-security-audit/) addy.io in September 2023 and no significant vulnerabilities [were identified](https://addy.io/addy-io-security-audit.pdf).
Notable free features:
@ -335,7 +363,7 @@ Notable free features:
### SimpleLogin
!!! recommendation
<div class="admonition recommendation" markdown>
![Simplelogin logo](assets/img/email/simplelogin.svg){ align=right }
@ -346,7 +374,8 @@ Notable free features:
[:octicons-info-16:](https://simplelogin.io/docs/){ .card-link title=Documentation}
[:octicons-code-16:](https://github.com/simple-login){ .card-link title="Source Code" }
??? downloads
<details class="downloads" markdown>
<summary>Downloads</summary>
- [:simple-googleplay: Google Play](https://play.google.com/store/apps/details?id=io.simplelogin.android)
- [:simple-appstore: App Store](https://apps.apple.com/app/id1494359858)
@ -356,6 +385,10 @@ Notable free features:
- [:simple-microsoftedge: Edge](https://microsoftedge.microsoft.com/addons/detail/simpleloginreceive-sen/diacfpipniklenphgljfkmhinphjlfff)
- [:simple-safari: Safari](https://apps.apple.com/app/id1494051017)
</details>
</div>
SimpleLogin was [acquired by Proton AG](https://proton.me/news/proton-and-simplelogin-join-forces) as of April 8, 2022. If you use Proton Mail for your primary mailbox, SimpleLogin is a great choice. As both products are now owned by the same company you now only have to trust a single entity. We also expect that SimpleLogin will be more tightly integrated with Proton's offerings in the future. SimpleLogin continues to support forwarding to any email provider of your choosing. Securitum [audited](https://simplelogin.io/blog/security-audit/) SimpleLogin in early 2022 and all issues [were addressed](https://simplelogin.io/audit2022/web.pdf).
You can link your SimpleLogin account in the settings with your Proton account. If you have the Proton Unlimited, Business, or Visionary Plan, you will have SimpleLogin Premium for free.
@ -374,7 +407,7 @@ Advanced system administrators may consider setting up their own email server. M
### Combined software solutions
!!! recommendation
<div class="admonition recommendation" markdown>
![Mailcow logo](assets/img/email/mailcow.svg){ align=right }
@ -385,7 +418,9 @@ Advanced system administrators may consider setting up their own email server. M
[:octicons-code-16:](https://github.com/mailcow/mailcow-dockerized){ .card-link title="Source Code" }
[:octicons-heart-16:](https://www.servercow.de/mailcow?lang=en#sal){ .card-link title=Contribute }
!!! recommendation
</div>
<div class="admonition recommendation" markdown>
![Mail-in-a-Box logo](assets/img/email/mail-in-a-box.svg){ align=right }
@ -395,6 +430,8 @@ Advanced system administrators may consider setting up their own email server. M
[:octicons-info-16:](https://mailinabox.email/guide.html){ .card-link title=Documentation}
[:octicons-code-16:](https://github.com/mail-in-a-box/mailinabox){ .card-link title="Source Code" }
</div>
For a more manual approach we've picked out these two articles:
- [Setting up a mail server with OpenSMTPD, Dovecot and Rspamd](https://poolp.org/posts/2019-09-14/setting-up-a-mail-server-with-opensmtpd-dovecot-and-rspamd/) (2019)

293
docs/meta/admonitions.md Normal file
View File

@ -0,0 +1,293 @@
---
title: Admonitions
---
**Admonitions** (or "call-outs") are a choice writers can use to include side content in an article without interrupting the document flow.
<div class="admonition example" markdown>
<p class="admonition-title">Example Admonition</p>
This is an example of an admonition. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla et euismod nulla. Curabitur feugiat, tortor non consequat finibus, justo purus auctor massa, nec semper lorem quam in massa.
</div>
<details class="example" markdown>
<summary>Example Collapsible Admonition</summary>
This is an example of a collapsible admonition. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla et euismod nulla. Curabitur feugiat, tortor non consequat finibus, justo purus auctor massa, nec semper lorem quam in massa.
</details>
## Formatting
To add an admonition to a page, you can use the following code:
```markdown title="Admonition"
<div class="admonition TYPE" markdown>
<p class="admonition-title">TITLE</p>
ENCLOSED TEXT
</div>
```
```markdown title="Collapsible Admonition"
<details class="TYPE" markdown>
<summary>TITLE</summary>
ENCLOSED TEXT
</details>
```
The `TITLE` must be specified, if you don't want a specific title you can set it to the same text as the `TYPE` (see below) in title case, e.g. `Note`. The `ENCLOSED TEXT` should be Markdown formatted.
### Regular types
Replace `TYPE` in the examples above with one of the following:
#### `note`
<div class="admonition note" markdown>
<p class="admonition-title">Note</p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
</div>
#### `abstract`
<div class="admonition abstract" markdown>
<p class="admonition-title">Abstract</p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
</div>
#### `info`
<div class="admonition info" markdown>
<p class="admonition-title">Info</p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
</div>
#### `tip`
<div class="admonition tip" markdown>
<p class="admonition-title">Tip</p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
</div>
#### `success`
<div class="admonition success" markdown>
<p class="admonition-title">Success</p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
</div>
#### `question`
<div class="admonition question" markdown>
<p class="admonition-title">Question</p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
</div>
#### `warning`
<div class="admonition warning" markdown>
<p class="admonition-title">Warning</p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
</div>
#### `failure`
<div class="admonition failure" markdown>
<p class="admonition-title">Failure</p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
</div>
#### `danger`
<div class="admonition danger" markdown>
<p class="admonition-title">Danger</p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
</div>
#### `bug`
<div class="admonition bug" markdown>
<p class="admonition-title">Bug</p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
</div>
#### `example`
<div class="admonition example" markdown>
<p class="admonition-title">Example</p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
</div>
#### `quote`
<div class="admonition quote" markdown>
<p class="admonition-title">Quote</p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
</div>
### Special Types
#### `recommendation`
This format is used to generate recommendation cards. Notably it is missing the `<p class="admonition-title">` element.
``` markdown title="Recommendation Card"
<div class="admonition recommendation" markdown>
![PhotoPrism logo](assets/img/photo-management/photoprism.svg){ align=right }
**PhotoPrism** is a self-hostable platform for managing photos. It supports album syncing and sharing as well as a variety of other [features](https://www.photoprism.app/features). It does not include E2EE, so it's best hosted on a server that you trust and is under your control.
[:octicons-home-16: Homepage](https://www.photoprism.app){ .md-button .md-button--primary }
[:octicons-eye-16:](https://www.photoprism.app/privacy){ .card-link title="Privacy Policy" }
[:octicons-info-16:](https://www.photoprism.app/kb){ .card-link title=Documentation}
[:octicons-code-16:](https://github.com/photoprism){ .card-link title="Source Code" }
<details class="downloads" markdown>
<summary>Downloads</summary>
- [:simple-github: GitHub](https://github.com/photoprism)
</details>
</div>
```
<div class="result" markdown>
<div class="admonition recommendation" markdown>
![PhotoPrism logo](../assets/img/photo-management/photoprism.svg){ align=right }
**PhotoPrism** is a self-hostable platform for managing photos. It supports album syncing and sharing as well as a variety of other [features](https://www.photoprism.app/features). It does not include E2EE, so it's best hosted on a server that you trust and is under your control.
[:octicons-home-16: Homepage](https://www.photoprism.app){ .md-button .md-button--primary }
[:octicons-eye-16:](https://www.photoprism.app/privacy){ .card-link title="Privacy Policy" }
[:octicons-info-16:](https://www.photoprism.app/kb){ .card-link title=Documentation}
[:octicons-code-16:](https://github.com/photoprism){ .card-link title="Source Code" }
<details class="downloads" markdown>
<summary>Downloads</summary>
- [:simple-github: GitHub](https://github.com/photoprism)
</details>
</div>
</div>
#### `downloads`
This is a special type of collapsible admonition, used to generate the download links section. It is only used within recommendation cards, as shown in the example above.
```markdown title="Downloads Section"
<details class="downloads" markdown>
<summary>Downloads</summary>
- [:simple-googleplay: Google Play](https://play.google.com/store/apps/details?id=ch.protonmail.android)
- [:simple-appstore: App Store](https://apps.apple.com/app/apple-store/id979659905)
- [:simple-github: GitHub](https://github.com/ProtonMail/proton-mail-android/releases)
- [:simple-windows11: Windows](https://proton.me/mail/bridge#download)
- [:simple-apple: macOS](https://proton.me/mail/bridge#download)
- [:simple-linux: Linux](https://proton.me/mail/bridge#download)
- [:octicons-browser-16: Web](https://mail.proton.me)
</details>
```
<div class="result" markdown>
<details class="downloads" markdown>
<summary>Downloads</summary>
- [:simple-googleplay: Google Play](https://play.google.com/store/apps/details?id=ch.protonmail.android)
- [:simple-appstore: App Store](https://apps.apple.com/app/apple-store/id979659905)
- [:simple-github: GitHub](https://github.com/ProtonMail/proton-mail-android/releases)
- [:simple-windows11: Windows](https://proton.me/mail/bridge#download)
- [:simple-apple: macOS](https://proton.me/mail/bridge#download)
- [:simple-linux: Linux](https://proton.me/mail/bridge#download)
- [:octicons-browser-16: Web](https://mail.proton.me)
</details>
</div>
## Old Format
Throughout the site, you may see some admonitions formatted similarly to these examples:
``` markdown title="Admonition"
!!! note
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla et euismod
nulla. Curabitur feugiat, tortor non consequat finibus, justo purus auctor
massa, nec semper lorem quam in massa.
```
<div class="result" markdown>
<div class="admonition note" markdown>
<p class="admonition-title">Note</p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla et euismod
nulla. Curabitur feugiat, tortor non consequat finibus, justo purus auctor
massa, nec semper lorem quam in massa.
</div>
</div>
``` markdown title="Collapsible Admonition"
??? example "Custom Title"
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla et euismod
nulla. Curabitur feugiat, tortor non consequat finibus, justo purus auctor
massa, nec semper lorem quam in massa.
```
<div class="result" markdown>
<details class="example" markdown>
<summary>Custom Title</summary>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla et euismod
nulla. Curabitur feugiat, tortor non consequat finibus, justo purus auctor
massa, nec semper lorem quam in massa.
</details>
</div>
**This format is no longer used going forward,** because it is incompatible with newer versions of our translation software at Crowdin. When adding a new page to the site, only the newer HTML-based format should be used.
There is no rush to convert admonitions with the old format to the new format. Pages currently using this formatting should continue to work, but we will be updating them to use the newer HTML-based format above over time as we continue to update the site.

View File

@ -8,7 +8,7 @@ Most cloud photo management solutions like Google Photos, Flickr, and Amazon Pho
## ente
!!! recommendation
<div class="admonition recommendation" markdown>
![ente logo](assets/img/photo-management/ente.svg#only-light){ align=right }
![ente logo](assets/img/photo-management/ente-dark.svg#only-dark){ align=right }
@ -20,7 +20,8 @@ Most cloud photo management solutions like Google Photos, Flickr, and Amazon Pho
[:octicons-info-16:](https://ente.io/faq){ .card-link title=Documentation}
[:octicons-code-16:](https://github.com/ente-io){ .card-link title="Source Code" }
??? downloads
<details class="downloads" markdown>
<summary>Downloads</summary>
- [:simple-googleplay: Google Play](https://play.google.com/store/apps/details?id=io.ente.photos)
- [:simple-android: Android](https://ente.io/download)
@ -31,9 +32,13 @@ Most cloud photo management solutions like Google Photos, Flickr, and Amazon Pho
- [:simple-linux: Linux](https://ente.io/download)
- [:octicons-globe-16: Web](https://web.ente.io)
</details>
</div>
## Stingle
!!! recommendation
<div class="admonition recommendation" markdown>
![Stingle logo](assets/img/photo-management/stingle.png#only-light){ align=right }
![Stingle logo](assets/img/photo-management/stingle-dark.png#only-dark){ align=right }
@ -45,16 +50,21 @@ Most cloud photo management solutions like Google Photos, Flickr, and Amazon Pho
[:octicons-info-16:](https://stingle.org/faq/){ .card-link title=Documentation}
[:octicons-code-16:](https://github.com/stingle){ .card-link title="Source Code" }
??? downloads
<details class="downloads" markdown>
<summary>Downloads</summary>
- [:simple-googleplay: Google Play](https://play.google.com/store/apps/details?id=io.ente.photos)
- [:simple-android: Android](https://play.google.com/store/apps/details?id=org.stingle.photos)
- [:simple-appstore: App Store](https://apps.apple.com/in/app/stingle-photos/id1582535448)
- [:simple-github: GitHub](https://github.com/stingle)
</details>
</div>
## PhotoPrism
!!! recommendation
<div class="admonition recommendation" markdown>
![PhotoPrism logo](assets/img/photo-management/photoprism.svg){ align=right }
@ -65,18 +75,26 @@ Most cloud photo management solutions like Google Photos, Flickr, and Amazon Pho
[:octicons-info-16:](https://www.photoprism.app/kb){ .card-link title=Documentation}
[:octicons-code-16:](https://github.com/photoprism){ .card-link title="Source Code" }
??? downloads
<details class="downloads" markdown>
<summary>Downloads</summary>
- [:simple-github: GitHub](https://github.com/photoprism)
</details>
</div>
## Criteria
**Please note we are not affiliated with any of the projects we recommend.** In addition to [our standard criteria](about/criteria.md), we have developed a clear set of requirements to allow us to provide objective recommendations. We suggest you familiarize yourself with this list before choosing to use a project, and conduct your own research to ensure it's the right choice for you.
!!! example "This section is new"
<div class="admonition example" markdown>
<p class="admonition-title">This section is new</p>
We are working on establishing defined criteria for every section of our site, and this may be subject to change. If you have any questions about our criteria, please [ask on our forum](https://discuss.privacyguides.net/latest) and don't assume we didn't consider something when making our recommendations if it is not listed here. There are many factors considered and discussed when we recommend a project, and documenting every single one is a work-in-progress.
</div>
### Minimum Requirements
- Cloud-hosted providers must enforce end-to-end encryption.