|
8 | 8 | > |
9 | 9 | Privacy Policy |
10 | 10 | </p> |
| 11 | + |
11 | 12 | <p class="text-base text-gray-800 dark:text-white py-4"> |
12 | | - Effective Date: Aug 14 2025 |
| 13 | + Effective Date: December 29, 2025 |
13 | 14 | </p> |
| 15 | + |
14 | 16 | <p class="text-base text-gray-800 dark:text-white py-4"> |
15 | | - At Beaver Notes, we take your privacy seriously and are committed to |
16 | | - protecting your personal information. This Privacy Policy outlines how |
17 | | - we collect, use, and safeguard your data when you interact with the |
18 | | - Beaver Notes applications, services and website. |
| 17 | + <b>Privacy Summary:</b> Beaver Notes is built to work without |
| 18 | + collecting your personal data. Notes and media are stored locally on |
| 19 | + your device and are never uploaded to Beaver servers. We do not use |
| 20 | + in-app trackers, advertising SDKs, or built-in synchronization. |
| 21 | + Limited personal data is processed only where strictly necessary, such |
| 22 | + as for Android closed beta access or accounts on our translation |
| 23 | + platform. Our website uses anonymized analytics with no cookies or |
| 24 | + personal identifiers. We follow GDPR-aligned data protection |
| 25 | + principles, including data minimization and transparency. |
19 | 26 | </p> |
| 27 | + |
20 | 28 | <p |
21 | 29 | class="text-xl font-bold text-gray-800 dark:text-white" |
22 | 30 | style="font-family: 'Arimo', sans-serif" |
23 | 31 | > |
24 | | - Information We Collect |
| 32 | + Information We Process |
25 | 33 | </p> |
| 34 | + |
26 | 35 | <p class="text-base text-gray-800 dark:text-white py-4"> |
27 | | - <b>Desktop App Data:</b> Beaver Notes is designed with your privacy in |
28 | | - mind, and we do not collect any personal information from you within |
29 | | - the app. All data, media, and notes you create within the app are |
30 | | - stored locally on your device only. We do not perform any data sync or |
31 | | - store your information on our servers. |
| 36 | + <b>Desktop App (Beaver Notes):</b> Beaver Notes does not require user |
| 37 | + accounts and does not collect personal information through the app. |
| 38 | + All notes, media, and related data are stored locally on your device. |
| 39 | + The app does not include built-in synchronization, analytics, or data |
| 40 | + transmission to Beaver servers. |
32 | 41 | </p> |
33 | | - <p></p> |
| 42 | + |
34 | 43 | <p class="text-base text-gray-800 dark:text-white py-4"> |
35 | | - <b>Mobile App Data:</b> Beaver Pocket prioritizes your privacy. We do |
36 | | - not collect any personal information within the app. All data, media, |
37 | | - and notes you create are stored locally on your device only. We do not |
38 | | - perform data synchronization or store your information on our servers. |
39 | | - Any analytics data collected is managed by platforms like the App |
40 | | - Store and Google Play Store, following your country's laws and |
41 | | - regulations. If you decide to sync your data using a cloud provider, |
42 | | - we strongly advise reviewing their privacy policy. Your data will be |
43 | | - uploaded to their servers and handled in accordance with both your |
44 | | - country's laws and the cloud provider's privacy policy. |
45 | | - </p> |
46 | | - <p></p> |
| 44 | + <b>Mobile App (Beaver Pocket):</b> Beaver Pocket follows the same |
| 45 | + local-first approach. The app does not collect personal information, |
| 46 | + does not include analytics SDKs, and does not transmit user data to |
| 47 | + Beaver servers. All content is stored locally on your device. |
| 48 | + </p> |
| 49 | + |
47 | 50 | <p class="text-base text-gray-800 dark:text-white py-4"> |
48 | | - <b>Translation Platform:</b> Beaver utilizes Traduora to translate its |
49 | | - apps and services. By signing up for our Traduora instance at |
50 | | - translate-beaver.duckdns.org, you knowingly share your email with us |
51 | | - to access the translation platform and manage your account. Your email |
52 | | - and other data, such as passwords and logins, are all stored in a |
53 | | - MySQL database on Beaver servers encrypted using industry-standard |
54 | | - encryption. Upon permanently deleting your account, all your data will |
55 | | - be handled in accordance with GDPR regulations, even outside the EU. |
56 | | - </p> |
57 | | - <p></p> |
| 51 | + Any file synchronization occurs only through operating system–level or |
| 52 | + user-configured third-party cloud services (such as device backups or |
| 53 | + folder syncing). These services are not provided or controlled by |
| 54 | + Beaver, and any data processed by them is governed by the respective |
| 55 | + provider’s privacy policy. |
| 56 | + </p> |
| 57 | + |
58 | 58 | <p class="text-base text-gray-800 dark:text-white py-4"> |
59 | | - <b>Website Analytics:</b> We use Umami analytics on our website to |
60 | | - better understand user interactions and improve our services. Umami |
61 | | - collects anonymized data, such as page views and visit durations, to |
62 | | - help us analyze user behavior. This data is not linked to any specific |
63 | | - individual and is used solely for analytical purposes. |
| 59 | + Crash reports, if generated, are handled by the operating system or |
| 60 | + app distribution platform and are not sent directly to Beaver servers. |
64 | 61 | </p> |
| 62 | + |
| 63 | + <p class="text-base text-gray-800 dark:text-white py-4"> |
| 64 | + <b>App Store & Platform Analytics:</b> We may receive aggregated and |
| 65 | + anonymized statistics from app distribution platforms such as Google |
| 66 | + Play or the Apple App Store (for example, install counts or crash |
| 67 | + summaries). This data does not identify individual users and is |
| 68 | + subject to the respective platform’s privacy policy. |
| 69 | + </p> |
| 70 | + |
| 71 | + <p class="text-base text-gray-800 dark:text-white py-4"> |
| 72 | + <b>Website Analytics:</b> Our website uses Umami Analytics, operated |
| 73 | + by Umami. Umami does not use cookies and collects only anonymized, |
| 74 | + aggregate data such as page views and visit duration. No personally |
| 75 | + identifiable information is collected through website analytics. |
| 76 | + </p> |
| 77 | + |
| 78 | + <p class="text-base text-gray-800 dark:text-white py-4"> |
| 79 | + <b>Translation Platform (Beaver Traduora):</b> We operate a |
| 80 | + self-hosted instance of the Traduora translation platform for managing |
| 81 | + translations of Beaver apps and services. When you create an account, |
| 82 | + we process your email address and authentication credentials. Account |
| 83 | + data is stored on Beaver-controlled servers. Password handling and |
| 84 | + security follow Traduora’s standard implementation. |
| 85 | + </p> |
| 86 | + |
| 87 | + <p class="text-base text-gray-800 dark:text-white py-4"> |
| 88 | + This platform is intended for contributors and collaborators. Account |
| 89 | + data is retained for as long as the account remains active and is |
| 90 | + deleted upon account removal. |
| 91 | + </p> |
| 92 | + |
65 | 93 | <p id="emails" class="text-base text-gray-800 dark:text-white py-4"> |
66 | | - <b>Emails:</b> We collect your email upon signup on the download page |
67 | | - to join the Android closed beta. The backend is open source and can be |
68 | | - audited on |
| 94 | + <b>Android Closed Beta Emails:</b> We collect email addresses solely |
| 95 | + to manage access to the Android closed beta via Google Play. Emails |
| 96 | + are not used for marketing or communications. They are exported once |
| 97 | + to the Google Play Console and then deleted from our backend. No email |
| 98 | + data is retained once the project exits closed beta. The backend |
| 99 | + handling this process is open source and publicly auditable on |
69 | 100 | <a |
| 101 | + class="text-amber-500" |
70 | 102 | href="https://github.com/Beaver-Notes/beaver-website/tree/main/backend" |
71 | 103 | >GitHub</a |
72 | | - >. Emails are stored in an encrypted database and provided to the |
73 | | - Google Play Console, where Google's privacy policy applies. Emails are |
74 | | - deleted after being exported and will also be deleted once the project |
75 | | - moves to open beta. |
| 104 | + >. |
76 | 105 | </p> |
| 106 | + |
77 | 107 | <p |
78 | 108 | class="text-xl font-bold text-gray-800 dark:text-white" |
79 | 109 | style="font-family: 'Arimo', sans-serif" |
80 | 110 | > |
81 | | - Children's Privacy |
| 111 | + Children’s Privacy |
82 | 112 | </p> |
| 113 | + |
83 | 114 | <p class="text-base text-gray-800 dark:text-white py-4"> |
84 | | - Beaver Notes, Beaver Pocket and Beaver Traduora are not intended for |
85 | | - use by children under the age of 13. We do not knowingly collect |
86 | | - personal information from children. If you are a parent or guardian |
87 | | - and believe that your child has provided us with personal information, |
88 | | - please contact us, and we will promptly delete such information. |
| 115 | + Beaver Notes, Beaver Pocket, and Beaver Traduora are not intended for |
| 116 | + children under the age of 13. We do not knowingly collect personal |
| 117 | + information from children. If such information is identified, it will |
| 118 | + be deleted promptly. |
89 | 119 | </p> |
| 120 | + |
90 | 121 | <p |
91 | 122 | class="text-xl font-bold text-gray-800 dark:text-white" |
92 | 123 | style="font-family: 'Arimo', sans-serif" |
93 | 124 | > |
94 | 125 | Data Security |
95 | 126 | </p> |
| 127 | + |
96 | 128 | <p class="text-base text-gray-800 dark:text-white py-4"> |
97 | | - We take strong measures to ensure the security of your data. Beaver |
98 | | - Notes, Beaver Pocket and Beaver Traduora employ industry-standard |
99 | | - encryption and security protocols to safeguard your information from |
100 | | - unauthorized access or disclosure. Any crash logs collected are |
101 | | - anonymized and used solely for identifying and resolving technical |
102 | | - issues. |
| 129 | + We apply reasonable technical and organizational measures to protect |
| 130 | + systems under our control. Since Beaver Notes and Beaver Pocket store |
| 131 | + data locally on your device, you retain full control over your |
| 132 | + content. No user note data is stored on Beaver servers. |
103 | 133 | </p> |
| 134 | + |
104 | 135 | <p |
105 | 136 | class="text-xl font-bold text-gray-800 dark:text-white" |
106 | 137 | style="font-family: 'Arimo', sans-serif" |
107 | 138 | > |
108 | | - Your Choices |
| 139 | + Your Rights and Choices |
109 | 140 | </p> |
| 141 | + |
110 | 142 | <p class="text-base text-gray-800 dark:text-white py-4"> |
111 | | - As Beaver Notes and Beaver Pocket do not collect any personal |
112 | | - information or transmit data externally, you have full control over |
113 | | - your data. You can manage, export, or delete your notes and media |
114 | | - directly within the app. |
| 143 | + You have full control over your local data within Beaver Notes and |
| 144 | + Beaver Pocket. For services where we process personal data (such as |
| 145 | + beta access emails or translation platform accounts), you may request |
| 146 | + access, correction, or deletion by contacting us. |
115 | 147 | </p> |
| 148 | + |
116 | 149 | <p |
117 | 150 | class="text-xl font-bold text-gray-800 dark:text-white" |
118 | 151 | style="font-family: 'Arimo', sans-serif" |
119 | 152 | > |
120 | 153 | Changes to This Policy |
121 | 154 | </p> |
| 155 | + |
122 | 156 | <p class="text-base text-gray-800 dark:text-white py-4"> |
123 | | - We may update this Privacy Policy from time to time to reflect changes |
124 | | - in our practices or for other operational, legal, or regulatory |
125 | | - reasons. Any updates will be provided within the app or on our |
126 | | - website. |
| 157 | + We may update this Privacy Policy to reflect changes in functionality |
| 158 | + or legal requirements. Updates will be published on our website or |
| 159 | + within our applications with a revised effective date. |
127 | 160 | </p> |
| 161 | + |
128 | 162 | <p |
129 | 163 | class="text-xl font-bold text-gray-800 dark:text-white" |
130 | 164 | style="font-family: 'Arimo', sans-serif" |
131 | 165 | > |
132 | | - Contact Us |
| 166 | + Contact |
133 | 167 | </p> |
| 168 | + |
134 | 169 | <p class="text-base text-gray-800 dark:text-white py-4"> |
135 | | - If you have any questions, concerns, or requests regarding this |
136 | | - Privacy Policy or your data privacy, please contact us at |
137 | | - <a class="text-base text-amber-500 py-4" href="danielerolli@proton.me" |
| 170 | + If you have questions or requests regarding this Privacy Policy, you |
| 171 | + may contact us at |
| 172 | + <a class="text-amber-500" href="mailto:danielerolli@proton.me" |
138 | 173 | >danielerolli@proton.me</a |
139 | 174 | >. |
140 | 175 | </p> |
141 | 176 | </div> |
142 | 177 | </div> |
143 | 178 | </div> |
144 | 179 | </template> |
145 | | -<script> |
146 | | -import { onMounted, nextTick } from "vue"; |
147 | | -import { useRoute } from "vue-router"; |
148 | | -
|
149 | | -export default { |
150 | | - setup() { |
151 | | - const route = useRoute(); |
152 | | -
|
153 | | - const highlightElement = (hash) => { |
154 | | - const el = document.querySelector(hash); |
155 | | - if (el) { |
156 | | - el.scrollIntoView({ behavior: "smooth" }); |
157 | | - el.classList.add("highlight"); |
158 | | -
|
159 | | - // Remove highlight after 3 seconds for smoother fade |
160 | | - setTimeout(() => el.classList.remove("highlight"), 3000); |
161 | | - } |
162 | | - }; |
163 | | -
|
164 | | - onMounted(() => { |
165 | | - if (route.hash) { |
166 | | - // wait for DOM to be ready |
167 | | - nextTick(() => highlightElement(route.hash)); |
168 | | - } |
169 | | - }); |
170 | | -
|
171 | | - return { highlightElement }; |
172 | | - }, |
173 | | -}; |
174 | | -</script> |
175 | | -<style> |
176 | | -.highlight { |
177 | | - color: #f5c856 !important; |
178 | | -
|
179 | | - transition: color 2s ease-out; |
180 | | -} |
181 | | -</style> |
0 commit comments