-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathprivacy.html
More file actions
249 lines (223 loc) · 14.8 KB
/
privacy.html
File metadata and controls
249 lines (223 loc) · 14.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Privacy Policy | HouseLearning</title>
<script src="/assets/js/cookiebanner.js"></script>
<script src="/assets/js/feedback.js"></script>
<script src="/assets/js/nav.js" defer></script>
<script type="module" src="/assets/js/also.js"></script>
<link rel="stylesheet" href="/assets/css/style.css">
<link rel="icon" href="/assets/images/favicons/favicon.ico">
</head>
<body>
<div class="container">
<header>
<div class="brand">
<div class="logo">HL</div>
<div>
<div class="brand-name">HouseLearning</div>
<div class="brand-tagline">Learn anything — fast, free, focused</div>
</div>
</div>
<nav id="site-nav">
<a href="/home">Home</a>
<a href="https://houselearning.org/safe-library">SafeLibrary</a>
<a href="https://houselearning.org/home/about">About</a>
<a href="https://apply.houselearning.org">Apply</a>
<a href="https://github.com/houselearning">View on GitHub</a>
<a class="button btn-ghost" href="https://houselearning.org/auth/">Log in</a>
<a class="button btn-primary" href="https://houselearning.org/auth/">Sign up</a>
</nav>
<button class="nav-toggle button btn-ghost" type="button" aria-label="Open menu" aria-controls="site-nav"
aria-expanded="false">Menu</button>
</header>
<main class="card page-card page-card--narrow">
<h1>Privacy Policy for HouseLearning</h1>
<p>Last updated: **December 13, 2025**</p>
<iframe width="100%" height="439" src="https://www.youtube.com/embed/69sjr6ERbeA"
title="HouseLearning Privacy Policy Video 2:44" frameborder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
<p>This Privacy Policy describes how HouseLearning ("we," "us," or "our") collects, uses, and discloses
information when you use our website, services, and products (the "Service"). By using the Service, you agree to
the collection and use of information in accordance with this policy.</p>
<hr>
<h2>1. Interpretation and Definitions</h2>
<p>For the purposes of this Policy:</p>
<ul>
<li>**Service** refers to the HouseLearning website, including all educational lessons, practice problems,
projects, personalized account features (like the **Student/Teacher Dashboard**), and the **HouseLearning
Community Forum**.</li>
<li>**Personal Data** is any information that relates to an identified or identifiable individual.</li>
<li>**Usage Data** refers to data collected automatically, either generated by the use of the Service or
from the Service infrastructure itself (e.g., the duration of a page visit).</li>
<li>**Cookies** are small files placed on your computer, mobile device, or any other device by a website,
containing details of your browsing history on that website.</li>
<li>**Data Controller** is the legal entity that determines the purposes and means of the processing of
Personal Data (in this case, HouseLearning).</li>
</ul>
<hr>
<h2>2. Information We Collect and How We Use It</h2>
<h3>Account and Educational Data (Student/Teacher Dashboard)</h3>
<p>When you create an account, log in (using **Firebase Authentication**), or use the features of the Service
that require identification, we collect the following types of Personal Data:</p>
<ul>
<li>**Account Registration Information:** Your name, email address, and a securely hashed version of your
password. We use **Google Firebase Authentication** to manage your account, provide secure login, and
communicate with you about the Service. **Legal Basis: Contractual Necessity.**</li>
<li>**Educational/Progress Data:** Information viewed on the **Dashboard**, including lesson completion
status, practice problem scores, project submissions, assignments, and any feedback received. This data is
stored using **Firebase Realtime Database (RTDB)** and is essential to provide personalized features like
adaptive practice and allow teachers (if applicable) to monitor and support your learning. **Legal Basis:
Contractual Necessity.**</li>
</ul>
<h3>Forum Content and Activity Data</h3>
<p>When you use the **HouseLearning Community Forum** to post, comment, or start a discussion, we collect and
process the following:</p>
<ul>
<li>**User-Generated Content:** The text, images, or other materials you intentionally submit, including
posts, comments, and private messages. This content is generally **publicly viewable** on the forum.</li>
<li>**Activity Data:** Your display name/username, the time and date of your activity, and any metadata
associated with your contributions (e.g., the post tag you select).</li>
</ul>
<p>We use this data to operate the forum, facilitate community interaction, and enforce our usage policies.
**Legal Basis: Contractual Necessity and Legitimate Interest.**</p>
<h3>Feedback Tool Data (Voluntary Submission)</h3>
<p>We collect data when you voluntarily use the built-in Feedback Sidebar, accessible via the **Alt+S
shortcut**, to provide suggestions or report issues:</p>
<ul>
<li>**Submission Content:** Text comments, the selected 5-point rating (smiley), and optional screenshots
you choose to upload.</li>
<li>**Technical Metadata:** The time of submission, the URL/page path you were viewing, your browser/device
type, and your Anonymous ID (or User ID if logged in) for context.</li>
<li>**Purpose:** This data is used strictly for improving our Service, fixing bugs, and enhancing the user
experience. This data is stored in **Google Cloud Firestore**.</li>
</ul>
<p><strong>Crucial Warning:</strong> While we aim to protect all submitted data, please ensure that you redact
or avoid including any Personal Data (such as real names, private student records, or passwords) within the text
or images of any voluntary screenshot submissions. **Legal Basis: Legitimate Interest.**</p>
<h3>Usage Data and Tracking Technologies (Cookies)</h3>
<p>We primarily collect data through **Cookies** and similar tracking technologies to track the activity on our
Service and store certain information. This Usage Data may include information such as your device's Internet
Protocol address (IP address), browser type, browser version, the pages of our Service that you visit, the time
and date of your visit, and other diagnostic data.</p>
<p>We use the following types of Cookies:</p>
<ul>
<li>**A. Essential (or Necessary) Cookies:** These Cookies are fundamental to provide you with services
available through the website and enable you to use some of its features, such as **login session management**
(powered by **Firebase Authentication**). **Legal Basis: Legitimate Interest.**</li>
<li>**B. Analytics (or Performance) Cookies:** These Cookies allow us to count visits and traffic sources so
we can measure and improve the performance of our site. They help us know which pages are the most and least
popular and see how visitors move around the site. The information is **aggregated and anonymized**. We use
**Google Analytics** for this purpose, which collects data such as session duration, bounce rate, and source
of visit. **Legal Basis: Consent.** (GA only runs after you consent.)</li>
<li>**C. Marketing Cookies:** We currently **DO NOT** use Marketing or Targeting cookies. Should this
change, we will update this policy and seek your explicit consent before deployment.</li>
</ul>
<hr>
<h2>3. Third-Party Services (Google Firebase, Google Analytics & GitHub)</h2>
<h3>Google Firebase Services</h3>
<p>We utilize several services provided by **Google Firebase**, a platform developed by Google for creating
mobile and web applications. This includes:</p>
<ul>
<li>**Firebase Authentication:** Used for user login and secure account management (Section 2).</li>
<li>**Firebase Realtime Database (RTDB):** Used for storing Educational/Progress Data (Section 2).</li>
<li>**Google Cloud Firestore:** Used for storing voluntary Feedback Tool submissions (ratings, comments, and
screenshots) and managing user rate limits for this feature (Section 2).</li>
</ul>
<p>The data stored in Firebase services is handled according to Google's security standards and the **Google
Cloud Privacy Policy**. We use Firebase services to securely manage user accounts and provide core personalized
features.</p>
<h3>Google Analytics</h3>
<p>We use **Google Analytics** (as detailed in Section 2) to help us understand how the Service is used. This
service uses cookies to collect anonymized Usage Data. Google's ability to use and share information collected
by Google Analytics is restricted by the Google Analytics Terms of Use and the **Google Privacy Policy**. You
can opt-out of having your activity on the Service available to Google Analytics by installing the <a
href="https://tools.google.com/dlpage/gaoptout" target="_blank">Google Analytics opt-out browser add-on</a>.
</p>
<h3>GitHub and GitHub API</h3>
<p>Our entire website, including the Forum and Dashboard, is hosted on **GitHub Pages**. As a result, certain
data, files, and content are stored on GitHub's servers.</p>
<p>We also utilize the **GitHub API** to facilitate content management, enable login/authentication for the
Forum, and store certain non-database data related to site functionality (e.g., forum posts) in a low-cost
manner. Your data stored in connection with this service is subject to the <a
href="https://docs.github.com/en/site-policy/privacy-policies/github-privacy-statement" target="_blank">GitHub
Privacy Statement</a>. We strive to only use the GitHub API for necessary operational functions that do not
require complex, persistent database storage.</p>
<p>We **do not share** Personal Data with third parties for their direct marketing purposes.</p>
<hr>
<h2>4. Data Retention</h2>
<p>We retain data collected via cookies for a maximum of **365 days** or until you withdraw your consent,
whichever occurs first. **Account and Educational Data (in RTDB)** are retained for as long as your account is
active or as needed to provide you with the Service. **Forum Content** (posts and comments) is retained
indefinitely or until you request its specific deletion. **Feedback Tool Data (in Firestore)** is retained until
no longer necessary for product improvement. We will delete or anonymize your Personal Data within 90 days after
you request account deletion or if your account has been inactive for 3 years.</p>
<hr>
<h2>5. Your Data Protection Rights (GDPR / CCPA)</h2>
<p>Depending on your location, you have certain rights regarding your Personal Data. You may exercise these
rights by contacting us using the details in the Contact section.</p>
<ul>
<li>**Right to Withdraw Consent:** You can withdraw your consent to the use of optional cookies (Analytics)
at any time. You can do this by clicking the "Manage Cookies" button below.</li>
<li>**Right of Access:** You have the right to request copies of your Personal Data.</li>
<li>**Right to Rectification:** You have the right to request that we correct any information you believe is
inaccurate or complete information you believe is incomplete.</li>
<li>**Right to Erasure (Right to be Forgotten):** You have the right to request that we erase your Personal
Data, under certain conditions.</li>
<li>**Right to Restrict Processing:** You have the right to request that we restrict the processing of your
Personal Data, under certain conditions.</li>
<li>**Right to Object to Processing:** You have the right to object to our processing of your Personal Data,
under certain conditions.</li>
</ul>
<hr>
<h2>6. Changes to this Privacy Policy</h2>
<p>We may update Our Privacy Policy from time to time. We will notify you of any changes by posting the new
Privacy Policy on this page and updating the "Last updated" date at the top of this Policy. You are advised to
review this Privacy Policy periodically for any changes.</p>
<hr>
<h2>7. Contact Us</h2>
<p>If you have any questions about this Privacy Policy, or wish to exercise any of your data protection rights,
please contact us:</p>
<ul>
<li>By visiting our privacy support page: <a href="https://bit.ly/46zNn7t" target="_blank">HouseLearning
Privacy Support</a></li>
</ul>
<button id="manageCookiesBtn" class="button btn-primary" type="button">Manage Cookie Preferences</button>
</main>
<footer>
<div class="footer-grid">
<div>
<div class="footer-name">HouseLearning</div>
<div class="footer-copy">© HouseLearning — free learning for curious people</div>
</div>
<div class="footer-links">
<a href="https://houselearning.org/home/about">About</a>
<a href="https://github.com/houselearning/apply?tab=readme-ov-file#available-volunteer-jobs">Careers</a>
</div>
</div>
</footer>
</div>
<script>
// Open cookie settings
document.getElementById("manageCookiesBtn").addEventListener("click", function () {
// This assumes the window.cookieConsent object is correctly loaded and defined by the cookiebanner.js script
if (window.cookieConsent && typeof window.cookieConsent.openSettings === 'function') {
window.cookieConsent.openSettings();
} else {
console.error("Cookie consent management function not found.");
alert("Cookie management tool is not available. Please try refreshing the page.");
}
});
</script>
</body>
</html>