1
0
mirror of https://github.com/privacyguides/privacyguides.org.git synced 2025-07-15 16:02:37 +00:00

Compare commits

..

3 Commits

Author SHA1 Message Date
81e71ec060 Apply suggestions from code review
Co-authored-by: redoomed1 <redoomed1@privacyguides.org>
Signed-off-by: Jonah Aragon <jonah@triplebit.net>
2025-05-15 12:53:51 -05:00
5e490a424a Update docs/language-tools.md
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Jonah Aragon <jonah@triplebit.net>
2025-05-06 22:49:36 -05:00
28167360c6 update!: Add LibreTranslate 2025-05-06 22:47:25 -05:00
6 changed files with 50 additions and 131 deletions

View File

@ -11,23 +11,62 @@ cover: language-tools.webp
Text inputted to grammar, spelling, and style checkers, as well as translation services, can contain sensitive information which may be stored on their servers for an indefinite amount of time and sold to third parties. The language tools listed on this page do not store your submitted text to a server, and can be self-hosted and used offline for maximum control of your data.
## LTeX for VS Code
## Grammar & Spelling
### LanguageTool
<div class="admonition recommendation" markdown>
![LTeX logo](assets/img/language-tools/ltex-for-vscode.svg){ align=right }
![LanguageTool logo](assets/img/language-tools/languagetool.svg#only-light){ align=right }
![LanguageTool logo](assets/img/language-tools/languagetool-dark.svg#only-dark){ align=right }
**LTeX** is a multilingual grammar, style, and spell checker for VS Code (or VSCodium) that supports more than 20 languages. It uses the open-source [LanguageTool](https://languagetool.org) spell checker on the backend to check against not just dictionary spelling, but thousands of grammar rules and stylistic errors.
**LanguageTool** is a multilingual grammar, style, and spell checker that supports more than 20 languages. According to their privacy policy, they do not store any content sent to their service for review, but for higher assurance the software is [self-hostable](https://dev.languagetool.org/http-server).
[:material-microsoft-visual-studio-code: VS Code Extension](https://marketplace.visualstudio.com/items?itemName=valentjn.vscode-ltex){ .md-button .md-button--primary }
[:octicons-info-16:](https://valentjn.github.io/ltex/index.html){ .card-link title="Documentation" }
[:octicons-code-16:](https://github.com/valentjn/vscode-ltex){ .card-link title="Source Code" }
[:octicons-home-16: Homepage](https://languagetool.org){ .md-button .md-button--primary }
[:octicons-eye-16:](https://languagetool.org/legal/privacy){ .card-link title="Privacy Policy" }
[:octicons-info-16:](https://languagetooler.freshdesk.com/en/support/solutions){ .card-link title=Documentation}
[:octicons-code-16:](https://github.com/languagetool-org){ .card-link title="Source Code" }
<details class="downloads" markdown>
<summary>Downloads</summary>
- [:simple-appstore: App Store](https://apps.apple.com/app/id1534275760)
- [:fontawesome-brands-windows: Windows](https://languagetool.org/windows-desktop)
- [:simple-apple: macOS](https://languagetool.org/mac-desktop)
- [:simple-firefoxbrowser: Firefox](https://addons.mozilla.org/firefox/addon/languagetool)
- [:simple-googlechrome: Chrome](https://chrome.google.com/webstore/detail/grammar-and-spell-checker/oldceeleldhonbafppcapldpdifcinji)
- [:fontawesome-brands-edge: Edge](https://microsoftedge.microsoft.com/addons/detail/hfjadhjooeceemgojogkhlppanjkbobc)
- [:simple-safari: Safari](https://apps.apple.com/app/id1534275760)
</details>
</div>
LanguageTool offers integration with a variety of [office suites](https://languagetool.org/services#text_editors) and [email clients](https://languagetool.org/services#mail_clients).
## Translation Tools
### LibreTranslate
<div class="admonition recommendation" markdown>
![LibreTranslate logo](assets/img/language-tools/libretranslate.png){ align=right }
**LibreTranslate** is a free and open-source machine translation web interface and API server. It uses [Argos Translate](https://github.com/argosopentech/argos-translate) models on the backend for translations.
[:octicons-home-16: Homepage](https://libretranslate.com){ .md-button .md-button--primary }
[:octicons-server-16:](https://github.com/LibreTranslate/LibreTranslate#mirrors){ .card-link title="Public Instances" }
[:octicons-code-16:](https://github.com/LibreTranslate/LibreTranslate){ .card-link title="Source Code" }
</div>
You can use LibreTranslate through a number of public instances, with some that offer a [Tor](tor.md) onion service or an [I2P](alternative-networks.md#i2p-the-invisible-internet-project) eepsite. You can also host the software yourself for maximum control over the text submitted for translation.
We use a self-hosted instance of LibreTranslate to automatically translate posts on our [forum](https://discuss.privacyguides.net) to multiple languages.
## 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.
- Must be open source.
- Must run completely offline.
- Must be possible to self-host.

View File

@ -499,7 +499,8 @@ For encrypting your OS drive, we typically recommend using the encryption tool y
<div class="grid cards" markdown>
- ![LTeX logo](assets/img/language-tools/ltex-for-vscode.svg){ .twemoji loading=lazy } [LTeX for VS Code](language-tools.md#ltex-for-vs-code)
- ![LanguageTool logo](assets/img/language-tools/languagetool.svg#only-light){ .twemoji loading=lazy }![LanguageTool logo](assets/img/language-tools/languagetool-dark.svg#only-dark){ .twemoji loading=lazy } [LanguageTool](language-tools.md#languagetool)
- ![LibreTranslate logo](assets/img/language-tools/libretranslate.png){ .twemoji } [LibreTranslate](language-tools.md#libretranslate)
</div>

View File

@ -0,0 +1 @@
<svg width="128" height="128" version="1.1" viewBox="0 0 33.867 33.867" xmlns="http://www.w3.org/2000/svg"><g stroke-width=".39547"><path d="m4.8224 4.1176h3.2876a2.4717 2.4717 0 0 1 2.4717 2.4717v9.5902h6.4264v3.4604h-7.4151a2.4717 2.4717 0 0 1-2.4717-2.4717v-9.5902h-2.2989zm25.137 2.4717v2.5706h-3.4604v-1.5819h-2.7193v12.062h-3.4604v-12.062h-2.7185v1.5819h-3.4604v-2.5706a2.4717 2.4717 0 0 1 2.4717-2.4717h10.876a2.4717 2.4717 0 0 1 2.4717 2.4717z" clip-rule="evenodd" fill="#fff" fill-rule="evenodd"/><path d="m3.2184 28.921-3.2184-2.2985c0.94518-1.3236 1.9208-2.3475 2.9471-3.0661 1.1405-0.79807 2.3523-1.2224 3.6055-1.2224 1.1635 0 2.1711 0.28236 3.072 0.8226a6.969 6.969 0 0 1 1.0342 0.76722c0.23253 0.20485 0.39903 0.3662 0.7522 0.71976 0.53587 0.53546 0.75852 0.73202 1.0251 0.89178 0.28909 0.17362 0.5944 0.25905 1.0373 0.25905 0.44333 0 0.74982-0.0858 1.0405-0.25982 0.26773-0.16017 0.49236-0.35791 1.0282-0.89259l0.0045-0.0045c0.35197-0.35118 0.51926-0.51333 0.75219-0.71858a6.975 6.975 0 0 1 1.0322-0.76445c0.89892-0.53863 1.9038-0.82022 3.0629-0.82022 1.1591 0 2.164 0.28159 3.0625 0.82022 0.36264 0.21751 0.69604 0.46784 1.0326 0.76445 0.23294 0.20485 0.40061 0.3674 0.7522 0.71858l0.0045 0.0045c0.53548 0.53468 0.7601 0.73242 1.0278 0.89259 0.29068 0.174 0.59716 0.25982 1.0405 0.25982 0.39468 0 0.83049-0.15265 1.3379-0.5078 0.62169-0.43502 1.294-1.1413 1.9964-2.1245l3.2184 2.2985c-0.94558 1.3236-1.9208 2.3475-2.9471 3.0661-1.1405 0.79807-2.3523 1.2224-3.6055 1.2224-1.1631 0-2.1712-0.28198-3.0724-0.82179a6.971 6.971 0 0 1-1.0358-0.76644c-0.23332-0.20525-0.4014-0.36779-0.75417-0.71976l-0.0045-0.0045c-0.53428-0.5331-0.75813-0.73043-1.0243-0.88981-0.28791-0.17282-0.59084-0.25745-1.0294-0.25745-0.43859 0-0.74152 0.0846-1.0294 0.25745-0.26616 0.15938-0.48999 0.35671-1.0243 0.88981l-0.0045 0.0045c-0.35276 0.35197-0.52084 0.51451-0.75417 0.71976-0.33813 0.2974-0.6723 0.54892-1.0361 0.76644-0.90089 0.53981-1.9086 0.82179-3.072 0.82179-1.1635 0-2.1711-0.28236-3.072-0.82258a6.9837 6.9837 0 0 1-1.0342-0.76683c-0.23293-0.20525-0.39903-0.36661-0.75258-0.71976-0.53548-0.53587-0.75813-0.73242-1.0247-0.89219-0.28909-0.17361-0.5944-0.25903-1.0373-0.25903-0.39468 0-0.83049 0.15264-1.3379 0.50778-0.62169 0.43502-1.294 1.1413-1.9964 2.1245z" fill="#45a1fc"/></g></svg>

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

@ -0,0 +1 @@
<svg width="128" height="128" version="1.1" viewBox="0 0 33.867 33.867" xmlns="http://www.w3.org/2000/svg"><g stroke-width=".39547"><path d="m4.8224 4.1176h3.2876a2.4717 2.4717 0 0 1 2.4717 2.4717v9.5902h6.4264v3.4604h-7.4151a2.4717 2.4717 0 0 1-2.4717-2.4717v-9.5902h-2.2989zm25.137 2.4717v2.5706h-3.4604v-1.5819h-2.7193v12.062h-3.4604v-12.062h-2.7185v1.5819h-3.4604v-2.5706a2.4717 2.4717 0 0 1 2.4717-2.4717h10.876a2.4717 2.4717 0 0 1 2.4717 2.4717z" clip-rule="evenodd" fill-rule="evenodd"/><path d="m3.2184 28.921-3.2184-2.2985c0.94518-1.3236 1.9208-2.3475 2.9471-3.0661 1.1405-0.79807 2.3523-1.2224 3.6055-1.2224 1.1635 0 2.1711 0.28236 3.072 0.8226a6.969 6.969 0 0 1 1.0342 0.76722c0.23253 0.20485 0.39903 0.3662 0.75219 0.71976 0.53587 0.53546 0.75852 0.73202 1.0251 0.89178 0.28909 0.17362 0.5944 0.25905 1.0373 0.25905 0.44333 0 0.74982-0.0858 1.0405-0.25982 0.26773-0.16017 0.49236-0.35791 1.0282-0.89259l0.0045-0.0045c0.35197-0.35118 0.51926-0.51333 0.7522-0.71858a6.975 6.975 0 0 1 1.0322-0.76445c0.89891-0.53863 1.9038-0.82022 3.0629-0.82022 1.1591 0 2.164 0.28159 3.0625 0.82022 0.36264 0.21751 0.69604 0.46784 1.0326 0.76445 0.23293 0.20485 0.40061 0.3674 0.7522 0.71858l0.0045 0.0045c0.53548 0.53468 0.7601 0.73242 1.0278 0.89259 0.29068 0.174 0.59716 0.25982 1.0405 0.25982 0.39468 0 0.83049-0.15265 1.3379-0.5078 0.62169-0.43502 1.294-1.1413 1.9964-2.1245l3.2184 2.2985c-0.94558 1.3236-1.9208 2.3475-2.9471 3.0661-1.1405 0.79807-2.3523 1.2224-3.6055 1.2224-1.1631 0-2.1712-0.28198-3.0724-0.82179a6.971 6.971 0 0 1-1.0358-0.76644c-0.23332-0.20525-0.4014-0.36779-0.75417-0.71976l-0.0045-0.0045c-0.53428-0.5331-0.75813-0.73043-1.0243-0.88981-0.28791-0.17282-0.59084-0.25745-1.0294-0.25745-0.43859 0-0.74152 0.0846-1.0294 0.25745-0.26616 0.15938-0.48999 0.35671-1.0243 0.88981l-0.0045 0.0045c-0.35276 0.35197-0.52084 0.51451-0.75417 0.71976-0.33813 0.2974-0.6723 0.54892-1.0361 0.76644-0.90089 0.53981-1.9086 0.82179-3.072 0.82179-1.1635 0-2.1711-0.28236-3.072-0.82258a6.9837 6.9837 0 0 1-1.0342-0.76683c-0.23293-0.20525-0.39903-0.36661-0.75258-0.71976-0.53548-0.53587-0.75813-0.73242-1.0247-0.89219-0.28909-0.17361-0.5944-0.25903-1.0373-0.25903-0.39468 0-0.83049 0.15264-1.3379 0.50778-0.62169 0.43502-1.294 1.1413-1.9964 2.1245z" fill="#45a1fc"/></g></svg>

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.0 KiB

View File

@ -1,123 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
id="svg8"
version="1.1"
viewBox="0 0 67.733333 67.733336"
height="256"
width="256"
inkscape:version="1.0.1 (3bc2e813f5, 2020-09-07)"
sodipodi:docname="logo-ltex.svg"
inkscape:export-filename="logo-ltex.png"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96">
<sodipodi:namedview
inkscape:window-maximized="1"
inkscape:window-y="0"
inkscape:window-x="1920"
inkscape:window-height="975"
inkscape:window-width="1920"
showgrid="false"
inkscape:current-layer="svg8"
inkscape:document-units="px"
inkscape:cy="126.14618"
inkscape:cx="88.251512"
inkscape:zoom="2.7078432"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
borderopacity="1.0"
bordercolor="#666666"
pagecolor="#ffffff"
id="base"
units="px"
fit-margin-left="5"
fit-margin-bottom="5"
fit-margin-top="5"
fit-margin-right="5"
borderlayer="true"
inkscape:document-rotation="0" />
<defs
id="defs2" />
<metadata
id="metadata5">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<rect
style="opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.359601;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:stroke markers fill"
id="rect921"
width="66.675003"
height="66.675003"
x="0.52916574"
y="0.52916574"
rx="11.982941" />
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(-14.972574,-214.55667)" />
<g
id="g1757">
<g
word-spacing="normal"
letter-spacing="normal"
font-size-adjust="none"
font-stretch="normal"
font-weight="normal"
font-variant="normal"
font-style="normal"
stroke-miterlimit="10.433"
xml:space="preserve"
transform="matrix(0.64219257,0,0,-0.64219257,-289.95251,303.68773)"
id="content"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;letter-spacing:normal;word-spacing:normal;text-anchor:start;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10.433;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"><polygon
id="polygon879"
points="456.86,439.64 456.86,437.64 460,437.34 460.85,436.64 460.85,409.18 460,408.5 456.86,408.25 456.86,406.2 480.72,406.2 480.72,415.26 478.14,415.26 477.29,409.29 476.6,408.5 465.33,408.5 465.33,436.64 466.18,437.34 469.02,437.64 469.02,439.64 "
style="fill:#5555ff;fill-opacity:1;stroke-width:0" /><polygon
id="polygon881"
points="485.73,406.2 498.73,406.2 498.73,408.25 495.39,408.5 494.5,409.18 494.5,437.34 502.17,437.34 502.88,436.59 503.56,431.95 506.31,431.95 506.31,439.64 478.16,439.64 478.16,431.95 480.89,431.95 481.59,436.59 482.3,437.34 489.97,437.34 489.97,409.18 489.06,408.5 485.73,408.25 "
style="fill:#5555ff;fill-opacity:1;stroke-width:0" /><polygon
id="polygon883"
points="500.48,396.25 500.48,394.2 526.14,394.2 526.14,402.32 523.56,402.32 522.7,397.29 522.01,396.5 508.65,396.5 508.65,410.43 516.82,410.43 517.53,409.7 518.03,406.11 520.35,406.11 520.35,417.07 518.03,417.07 517.53,413.43 516.82,412.73 508.65,412.73 508.65,425.34 520.17,425.34 520.85,424.59 521.56,420.36 524.35,420.36 524.35,427.64 500.48,427.64 500.48,425.64 503.32,425.34 504.17,424.64 504.17,397.18 503.32,396.5 "
style="fill:#000000;stroke-width:0" /><polygon
id="polygon885"
points="530.84,437.34 533.84,437.64 533.84,439.64 521.83,439.64 521.83,437.64 525.12,437 534.14,422.89 524.12,408.89 520.83,408.25 520.83,406.2 531.44,406.2 531.44,408.25 528.11,408.54 527.81,409.43 535.67,420.59 542.7,409.29 542.36,408.59 539.02,408.25 539.02,406.2 551.62,406.2 551.62,408.25 548.23,408.84 538.56,424.14 547.69,437.14 550.88,437.64 550.88,439.64 540.72,439.64 540.72,437.64 543.59,437.18 544.05,436.54 536.97,426.48 530.45,436.75 "
style="fill:#000000;stroke-width:0" /></g>
<g
id="g1745">
<path
style="fill:none;stroke:#5555ff;stroke-width:1.58750003;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
d="m 4.1031314,46.927624 3.8701309,0"
id="path985"
sodipodi:nodetypes="cc" />
<path
style="fill:none;stroke:#5555ff;stroke-width:1.58750003;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
d="M 11.596679,46.927624 H 15.46681"
id="path987"
sodipodi:nodetypes="cc" />
<path
style="fill:none;stroke:#5555ff;stroke-width:1.58750003;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
d="m 19.090226,46.927624 h 3.870131"
id="path989"
sodipodi:nodetypes="cc" />
<path
style="fill:none;stroke:#5555ff;stroke-width:1.58750003;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
d="m 26.583775,46.927624 h 3.870131"
id="path991"
sodipodi:nodetypes="cc" />
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 5.9 KiB