Compare commits

...

2 Commits

Author SHA1 Message Date
Alicia Sykes e693931474 Adds site config 2024-04-17 21:10:08 +01:00
Alicia Sykes 138d578710 Adds app links for notes services 2024-04-17 21:00:24 +01:00
3 changed files with 208 additions and 180 deletions

View File

@ -509,6 +509,7 @@ categories:
iosApp: https://apps.apple.com/us/app/signal-private-messenger/id874139669
androidApp: org.thoughtcrime.securesms
icon: https://signal.org/assets/images/favicon/android-chrome-192x192.png
subreddit: signal
description: |
Probably one of the most popular, secure private messaging apps that combines
strong encryption (see [Signal Protocol](https://en.wikipedia.org/wiki/Signal_Protocol))
@ -2910,6 +2911,9 @@ categories:
securityAudited: true
icon: https://standardnotes.com/favicon.ico
tosdrId: 2116
androidApp: com.standardnotes
iosApp: https://apps.apple.com/us/app/standard-notes/id1285392450
subreddit: StandardNotes
description: |
S.Notes is a free, open-source, and completely encrypted private notes app. It has a simple UI,
yet packs in a lot of features, thanks to the Extensions Store, allowing for: To-Do lists, Spreadsheets,
@ -2923,6 +2927,7 @@ categories:
followWith: Linux, MacOS, Windows, Android (iOS and web in development)
securityAudited: true
github: turtl/desktop
androidApp: com.lyonbros.turtl
description: |
A secure, collaborative notebook. Self-host it yourself, or use their hosted plan (free edition
or $3/ month for premium).
@ -2933,6 +2938,7 @@ categories:
github: notable/notable
icon: https://notable.app/favicon.ico
securityAudited: false
subreddit: Notable
description: |
An offline markdown-based note editor for desktop, with a simple, yet feature-rich UI.
All notes are saved individually as .md files, making them easy to manage.
@ -2945,7 +2951,10 @@ categories:
followWith: Windows, MacOS, Linux, Android, iOS
icon: https://joplinapp.org/images/favicon.png
securityAudited: true
androidApp: net.cozic.joplin
iosApp: https://apps.apple.com/gb/app/joplin/id1315599797
tosdrId: 9477
subreddit: JoplinApp
description: |
Cross-platform desktop and mobile note-taking and todo app. Easy organisation into notebooks and
sections, revision history and a simple UI. Allows for easy import and export of notes to or from
@ -2957,6 +2966,8 @@ categories:
icon: https://logseq.com/logo-with-border.5bf84f43.png
securityAudited: false
github: logseq/logseq
iosApp: https://apps.apple.com/us/app/logseq/id1601013908
subreddit: Logseq
description: |
Privacy-first, open-source knowledge base that works on top of local plain-text Markdown and
Org-mode files.
@ -2972,6 +2983,9 @@ categories:
openSource: false
securityAudited: true
tosdrId: 3870
androidApp: md.obsidian
iosApp: https://apps.apple.com/us/app/obsidian-connected-notes/id1557175442
subreddit: ObsidianMD
description: |
A powerful knowledge base that works on top of local plain-text Markdown files. It has a strong
community, and a lot of plugins and themes. Generally privacy-respecting, but no
@ -2982,6 +2996,7 @@ categories:
github: toeverything/AFFiNE
followWith: Windows, MacOS, Linux
securityAudited: false
subreddit: AFFiNE
description: |
Privacy first, open-source alternative to Notion, monday.com and Miro.
It is a knowledge management tool that allows you to create, organize and share your knowledge.
@ -2992,7 +3007,7 @@ categories:
github: cryptee/web-client
securityAudited: false
tosdrId: 5047
followWith: Web, Windows, Mac OS, Linux, Android, iOS
followWith: Web, Windows, Mac OS, Linux, PWA
icon: https://raw.githubusercontent.com/cryptee/web-client/v3/source/assets/logo-b.svg
description: |
Private & encrypted rich-text documents. Cryptee has encryption and anonymity at its core,

View File

@ -5,6 +5,7 @@ import Main from '@components/scafold/MainCard.astro';
import Icon from '@components/form/Icon.astro';
import SocialShare from '@components/form/Social.astro';
import { parseMarkdown } from '@utils/parse-markdown';
import { authorProjects, authorSocials, aboutOurData, projectRequirements, appDescription } from '../site-config';
const contributorsResource = async () => {
const url = 'https://api.github.com/repos/lissy93/personal-security-checklist/contributors?per_page=100';
@ -33,184 +34,9 @@ const licenseContent = async () => {
return await response.text();
};
const aboutOurData = `
All data is stored in
[\`awesome-privacy.yml\`](https://github.com/lissy93/awesome-privacy/blob/main/awesome-privacy.yml).
This file is then pulled into the website at build-time, and also used to generate
the repositories README file.
We use this method in the interest of transparency and data integrity,
as Git makes it possible to maintain a full log of what was changed, when, by who and why.
### Augmention
The data is augmented with some extra info, to add additional context to each service.
The aim of this is to give you a broader picture of each listing, to help you make a more informed decision.
Currently, this extra data is pulled from:
- **Privacy Policy** - To fetch a summerized version of each services Privacy Policy
- Including policy and terms of service links, postives + negatives and privacy score
- <small>Via [ToS;DR](https://tosdr.org/)</small>
- **GitHub** - To fetch info about each project's source code
- Including author & contributors, creation & last updated date, languages, license and star count
- <small>Via the [GitHub API](https://developer.github.com/v3/)</small>
- **Android App** - To fetch privacy info about each project's Android app
- Including permissions, trackers, privacy score and metdata
- <small>Via [Exodus Privacy](https://exodus-privacy.eu.org/)</small>
- **iOS App** - To fetch info about each project's iOS app
- Including app size, rating, publish/update date, author and screenshots
- <small>Via [Apple App Store](https://developer.apple.com/documentation/appstoreconnectapi/app_store)</small>
- **Docker** - To fetch info about each project's Docker image (if it's self-hosted)
- Including supported architectures, run command, pull count, last updated and config options
- <small>Via [Portainer-Templates](https://portainer-templates.as93.net/) and the [Docker Hub](https://hub.docker.com/) API</small>
- **Website** - To fetch privacy info about each project's website
- Including SSL chain, WHOIS, server location, blacklist check and a screenshot
- <small>Via [Web-Check](https://web-check.xyz/)</small>
- **Socials** - To fetch info about each project's social media presence
- Including follower count, post frequency, engagement and a screenshot
- <small>Via the Reddit, Discord and Twitter APIs</small>
- **User Reviews** - User-submitted comments + feedback on a given service
- <small>Implemented using self-hosted instance of Remark42</small>
### API
We also have a free, no-auth, CORS-enabled RESR API,
which you can use to access Awesome Privacy's data programmatically,
or to build your own apps on top of it.
The [Swagger Spec](api) outlines all endpoints, usage and examples.
Use our public instance, at: \`https://api.awesome-privacy.xyz\` or [self-host your own](https://github.com/Lissy93/awesome-privacy/tree/main/api)
`;
const projectRequrements = `
For software to be included in this list, it must meet the following requirements:
- **Privacy Respecting**
- The project must respect users privacy, not collect more data than necessary, and store info securely
- For hosted services, the project must have a clear privacy policy
- The user must remain in full control of their data, and be able to delete it at any time
- **Secure**
- The software must be secure by default, without requiring additional configuration
- There should be no current, critical security issues
- The handling of past issues must have been prompt, transparent and effective
- Ideally hosted services should have been security audited, with the report published publicly
- **Open Source**
- The full source code should be released under an open source license
- Ideally it should be possible for the user to build and run/deploy the software themselves from source
- **Actively Maintained**
- The developers should address dependency updates and security patches in a timely manner
- Ideally the source should have been updated within the last 12 months
- **Transparent**
- It should be clear who is behind the project, what their motives are, and what (if any) the funding model is
- For hosted solutions, the privacy policy should clearly state what data is collected, how it's used and how long it's stored
- **Ethical**
- Must not suppress free speech, discriminate or disregard any human rights
- **Relevant**
- The software must be relevant, and fit into one of the existing categories
- **Functional**
- Must be fully functional, and not just a concept or idea
- A stable (non-alpha/beta) release is required at a minimum
- Must be accessible to the general public, and not just a select group of people
- If technical knowledge is required to run it, the software must be well documented
_There may be some exceptions, but these would need to be fully justified, reviewed
by the community, and the drawbacks / anti-features must be clearly listed along-side the software.
Usually these entries go within the "Notable Mentions" section instead._
`;
const projects = [
{
title: 'Email Comparison',
description: 'Objective comparison of private/secure mail providers',
icon: 'https://email-comparison.as93.net/favicon.png',
link: 'https://github.com/lissy93/email-comparison',
},
{
title: 'Personal Security Checklist',
description: 'Checklist of security tips, for protecting your privacy',
icon: 'https://i.ibb.co/Rb6P6h6/shield.png',
link: 'https://github.com/Lissy93/personal-security-checklist',
},
{
title: 'Web-Check',
description: 'OSINT tool for analysing any website',
icon: 'https://web-check.as93.net/web-check.png',
link: 'https://github.com/lissy93/web-check',
},
{
title: 'Dashy',
description: 'Dashboard app, for organising your self-hosted services',
icon: 'https://dashy.to/img/dashy.png',
link: 'https://github.com/lissy93/dashy',
},
{
title: 'Portainer-Templates',
description: 'Compiled repository of 1-click Docker apps for self-hosting',
icon: 'https://portainer-templates.as93.net/favicon.png',
link: 'https://github.com/lissy93/portainer-templates',
},
{
title: 'AdGuardian',
description: 'CLI tool for monitoring your networks traffic and AdGuard DNS stats',
icon: 'https://adguardian.as93.net/favicon.png',
link: 'https://github.com/lissy93/adguardian-term',
},
{
title: 'Bug-Bounties',
description: 'Database of websites which accept responsible vulnerability discolsure',
icon: 'https://bug-bounties.as93.net/favicon.png',
link: 'https://github.com/lissy93/bug-bounties',
},
{
title: 'Git-In',
description: 'Tools and resources to help beginners get into open source',
icon: 'https://www.git-in.to/favicon.png',
link: 'https://github.com/lissy93/git-in',
},
];
export const socials = [
{
title: 'GitHub',
icon: 'hub',
link: 'https://github.com/lissy93',
color: '#EA4AAA',
},
{
title: 'Twitter',
icon: 'twitter',
link: 'https://x.com/lissy_sykes',
color: '#1D9BF0',
},
{
title: 'Mastodon',
icon: 'mastodon',
link: 'https://mastodon.social/@lissy93',
color: '#6364FF',
},
{
title: 'Dev',
icon: 'dev',
link: 'https://dev.to/lissy93',
color: '#cece04',
},
{
title: 'LinkedIn',
icon: 'linkedin',
link: 'https://linkedin.com/in/aliciasykes',
color: '#0A66C2',
},
];
const description = 'Privacy is a fundamental human right; '
+ 'without it, we\'re just open books in a world where everyone\'s '
+ 'watching. Let\'s take control back.\n'
+ 'Migrating open-source applications which do not collect, sell or log your data is a great first step.'
+ 'Awesome Privacy is a directory of alternative privacy-respecting software and services.';
---
<Layout title="About | Awesome Privacy" description={description}>
<Layout title="About | Awesome Privacy" description={appDescription}>
<div class="about-page">
<Main>
<h2 id="objective">Objective</h2>
@ -230,7 +56,7 @@ const description = 'Privacy is a fundamental human right; '
<hr />
<h2 id="creteria">Software Requirements</h2>
<div class="software-requirements"><p set:html={parseMarkdown(projectRequrements)}></p></div>
<div class="software-requirements"><p set:html={parseMarkdown(projectRequirements)}></p></div>
<hr />
<h2 id="our-data">Our Data</h2>
@ -321,7 +147,7 @@ const description = 'Privacy is a fundamental human right; '
</a>
<div class="socials">
{
socials.map((social) => (
authorSocials.map((social: { link: string; color: string; icon: string; }) => (
<a href={social.link} style={`--color: ${social.color}`} target="_blank">
<Icon icon={social.icon} width={24} height={24} />
</a>
@ -335,7 +161,7 @@ const description = 'Privacy is a fundamental human right; '
</p>
<ul>
{
projects.map((project) => (
authorProjects.map((project: { title: string; icon: string; link: string; description: string; }) => (
<li>
<img width="20" height="20" alt={project.title} src={project.icon} />
<a href={project.link} target="_blank" rel="noreferrer">

187
web/src/site-config.ts Normal file
View File

@ -0,0 +1,187 @@
export const authorProjects = [
{
title: 'Email Comparison',
description: 'Objective comparison of private/secure mail providers',
icon: 'https://email-comparison.as93.net/favicon.png',
link: 'https://github.com/lissy93/email-comparison',
},
{
title: 'Personal Security Checklist',
description: 'Checklist of security tips, for protecting your privacy',
icon: 'https://i.ibb.co/Rb6P6h6/shield.png',
link: 'https://github.com/Lissy93/personal-security-checklist',
},
{
title: 'Web-Check',
description: 'OSINT tool for analysing any website',
icon: 'https://web-check.as93.net/web-check.png',
link: 'https://github.com/lissy93/web-check',
},
{
title: 'Dashy',
description: 'Dashboard app, for organising your self-hosted services',
icon: 'https://dashy.to/img/dashy.png',
link: 'https://github.com/lissy93/dashy',
},
{
title: 'Portainer-Templates',
description: 'Compiled repository of 1-click Docker apps for self-hosting',
icon: 'https://portainer-templates.as93.net/favicon.png',
link: 'https://github.com/lissy93/portainer-templates',
},
{
title: 'AdGuardian',
description: 'CLI tool for monitoring your networks traffic and AdGuard DNS stats',
icon: 'https://adguardian.as93.net/favicon.png',
link: 'https://github.com/lissy93/adguardian-term',
},
{
title: 'Bug-Bounties',
description: 'Database of websites which accept responsible vulnerability disclosure',
icon: 'https://bug-bounties.as93.net/favicon.png',
link: 'https://github.com/lissy93/bug-bounties',
},
{
title: 'Git-In',
description: 'Tools and resources to help beginners get into open source',
icon: 'https://www.git-in.to/favicon.png',
link: 'https://github.com/lissy93/git-in',
},
];
export const authorSocials = [
{
title: 'GitHub',
icon: 'hub',
link: 'https://github.com/lissy93',
color: '#EA4AAA',
},
{
title: 'Twitter',
icon: 'twitter',
link: 'https://x.com/lissy_sykes',
color: '#1D9BF0',
},
{
title: 'Mastodon',
icon: 'mastodon',
link: 'https://mastodon.social/@lissy93',
color: '#6364FF',
},
{
title: 'Dev',
icon: 'dev',
link: 'https://dev.to/lissy93',
color: '#cece04',
},
{
title: 'LinkedIn',
icon: 'linkedin',
link: 'https://linkedin.com/in/aliciasykes',
color: '#0A66C2',
},
];
export const aboutOurData = `
All data is stored in
[\`awesome-privacy.yml\`](https://github.com/lissy93/awesome-privacy/blob/main/awesome-privacy.yml).
This file is then pulled into the website at build-time, and also used to generate
the repositories README file.
We use this method in the interest of transparency and data integrity,
as Git makes it possible to maintain a full log of what was changed, when, by who and why.
### Augmention
The data is augmented with some extra info, to add additional context to each service.
The aim of this is to give you a broader picture of each listing, to help you make a more informed decision.
Currently, this extra data is pulled from:
- **Privacy Policy** - To fetch a summerized version of each services Privacy Policy
- Including policy and terms of service links, postives + negatives and privacy score
- <small>Via [ToS;DR](https://tosdr.org/)</small>
- **GitHub** - To fetch info about each project's source code
- Including author & contributors, creation & last updated date, languages, license and star count
- <small>Via the [GitHub API](https://developer.github.com/v3/)</small>
- **Android App** - To fetch privacy info about each project's Android app
- Including permissions, trackers, privacy score and metdata
- <small>Via [Exodus Privacy](https://exodus-privacy.eu.org/)</small>
- **iOS App** - To fetch info about each project's iOS app
- Including app size, rating, publish/update date, author and screenshots
- <small>Via [Apple App Store](https://developer.apple.com/documentation/appstoreconnectapi/app_store)</small>
- **Docker** - To fetch info about each project's Docker image (if it's self-hosted)
- Including supported architectures, run command, pull count, last updated and config options
- <small>Via [Portainer-Templates](https://portainer-templates.as93.net/) and the [Docker Hub](https://hub.docker.com/) API</small>
- **Website** - To fetch privacy info about each project's website
- Including SSL chain, WHOIS, server location, blacklist check and a screenshot
- <small>Via [Web-Check](https://web-check.xyz/)</small>
- **Socials** - To fetch info about each project's social media presence
- Including follower count, post frequency, engagement and a screenshot
- <small>Via the Reddit, Discord and Twitter APIs</small>
- **User Reviews** - User-submitted comments + feedback on a given service
- <small>Implemented using self-hosted instance of Remark42</small>
### API
We also have a free, no-auth, CORS-enabled RESR API,
which you can use to access Awesome Privacy's data programmatically,
or to build your own apps on top of it.
The [Swagger Spec](api) outlines all endpoints, usage and examples.
Use our public instance, at: \`https://api.awesome-privacy.xyz\` or [self-host your own](https://github.com/Lissy93/awesome-privacy/tree/main/api)
`;
export const projectRequirements = `
For software to be included in this list, it must meet the following requirements:
- **Privacy Respecting**
- The project must respect users privacy, not collect more data than necessary, and store info securely
- For hosted services, the project must have a clear privacy policy
- The user must remain in full control of their data, and be able to delete it at any time
- **Secure**
- The software must be secure by default, without requiring additional configuration
- There should be no current, critical security issues
- The handling of past issues must have been prompt, transparent and effective
- Ideally hosted services should have been security audited, with the report published publicly
- **Open Source**
- The full source code should be released under an open source license
- Ideally it should be possible for the user to build and run/deploy the software themselves from source
- **Actively Maintained**
- The developers should address dependency updates and security patches in a timely manner
- Ideally the source should have been updated within the last 12 months
- **Transparent**
- It should be clear who is behind the project, what their motives are, and what (if any) the funding model is
- For hosted solutions, the privacy policy should clearly state what data is collected, how it's used and how long it's stored
- **Ethical**
- Must not suppress free speech, discriminate or disregard any human rights
- **Relevant**
- The software must be relevant, and fit into one of the existing categories
- **Functional**
- Must be fully functional, and not just a concept or idea
- A stable (non-alpha/beta) release is required at a minimum
- Must be accessible to the general public, and not just a select group of people
- If technical knowledge is required to run it, the software must be well documented
_There may be some exceptions, but these would need to be fully justified, reviewed
by the community, and the drawbacks / anti-features must be clearly listed along-side the software.
Usually these entries go within the "Notable Mentions" section instead._
`;
export const appDescription = 'Privacy is a fundamental human right; '
+ 'without it, we\'re just open books in a world where everyone\'s '
+ 'watching. Let\'s take control back.\n'
+ 'Migrating open-source applications which do not collect, sell or log your data is a great first step.'
+ 'Awesome Privacy is a directory of alternative privacy-respecting software and services.';
export default {
title: 'Awesome Privacy | The Ultimate List of Private Apps',
description: 'Your guide to finding privacy-respecting alternatives to popular software and services.',
keywords: 'security, privacy, awesome privacy, data collection, free software, open source, privacy tools, privacy respecting software',
author: 'Alicia Sykes',
authorProjects,
authorSocials,
aboutOurData,
projectRequirements,
appDescription,
};