The short version: Fair Lawn Apps collects very little, and none of it is sold or shared with advertisers. This website has no accounts, no names or emails, no tracking cookies, and no analytics โ€” and since its interface was retired in August 2026, no form or button on it sends anything anywhere. The mobile app is different: it offers an optional account โ€” sign in with Apple or Google โ€” so your notification categories, followed sections, and snow-route street can follow you to a new phone; signing in is never required. Nearly everything else you set is stored only on your own device. Three things are not, all specific to the mobile app and all described below: your notification token, while notifications are on; your account record, if you're signed in; and, also only if you sign in, the name and email address your sign-in provider holds for you.

Some routes on our server are switched on but have nothing calling them. Gym check-ins, interest signals, and the feedback form all belonged to the website interface deleted in August 2026, and the mobile app never used any of them. Those routes were left in place rather than removed, so each is described below in full โ€” and each says plainly that nothing reaches it today.

What this project is

Fair Lawn Apps is a community project that pulls publicly available information from fairlawn.org and other public sources, then presents it in a more accessible format. It covers the Community Center gym schedule, library programs, Memorial Pool hours, local alerts, and theater events. Farmers Market status was retired in August 2026: the market data file is still served at its usual address and a background job still compares it against its previous version, but nothing writes to it any more and nothing in the app or on this site displays it.

This policy covers both this website and the My Fair Lawn mobile app for Android and iOS, which reads the same public information. Where the two differ, it says so โ€” the differences are noted under push notifications and on-device storage below.

This is not an official Borough of Fair Lawn project. It is independently maintained by a Fair Lawn resident.

What gets collected

Push notifications โ€” this website

This website no longer offers push notifications. It does not ask for notification permission, does not create push subscriptions, and does not store push endpoints or notification preferences on any server.

Push notifications โ€” the My Fair Lawn mobile app

Notifications in the mobile app are off until you turn them on in Settings. Nothing below happens unless you do.

When you turn them on, the app asks Google's Firebase Cloud Messaging service for a notification token โ€” an identifier for that installation of the app on that device โ€” and sends it to our server, together with:

  • Whether the device is Android or iOS
  • Your app language, so alerts arrive in the language you read
  • The app version, so an old release can be recognised

The token is a device identifier, not a personal one. It is not your name, email, phone number, or account โ€” and even if you are signed in, it is not linked to any of those: it is stored under a key derived from a one-way hash of the token itself, separately from your account record, with nothing connecting the two.

What we do not receive this way: which alerts you chose. The app subscribes your device directly to topics at Firebase โ€” one per alert type and language โ€” and it does that on the device. Our server publishes an alert to a topic; it is never told which devices are listening, and it cannot build a list of what any one device follows through this channel. (If you sign in, your chosen notification categories are stored separately, in your account record โ€” see Signing in, below โ€” so they can follow you to a new phone.)

How long it is kept: until you turn notifications off. Doing so tells our server to delete the record. This is one of two things this project stores with no automatic expiry โ€” the account record described below is the other โ€” which is why both get their own entry in the next section.

Delivery itself is handled by Firebase Cloud Messaging, a Google service, under Google's privacy terms.

Signing in โ€” the My Fair Lawn mobile app

Signing in is optional โ€” the app works fully without it. An account exists for one reason: so your notification categories, followed sections, and chosen snow-route street can follow you to a new phone instead of resetting.

You can sign in with Apple or Google. Whichever you choose hands the app an email address, a name, and a Firebase user ID โ€” a long identifier tied to that sign-in.

Where your email and name are kept: with Firebase Authentication, a Google service, in this project's own Firebase account. They do not stay only on your phone. The app reads your name back from there to greet you, and shows your email so you can tell which account you're signed into.

What our own server keeps is narrower. Your account record is filed under the Firebase user ID and holds only your notification categories, followed sections, and snow-route street. Your email and name are not in it. They do reach our server inside the signed token each sync sends to prove who you are โ€” the server checks that token, takes the user ID, and keeps nothing else from it.

Apple sign-in can give you more privacy than that. Apple lets you share a private relay address instead of your real email, and lets you decline to share your name at all โ€” either choice works fine with this app.

Local storage on your device

The mobile app stores your notification on/off setting, the notification token, which alert topics it has subscribed to, your followed sections, your chosen snow-route street, your language, and a cached copy of the schedules so the app works offline. All of it is removed when you uninstall the app. If you sign in, your notification categories, followed sections, and snow-route street also leave the device โ€” synced to our server as your account record, described above โ€” so those three are not device-only for a signed-in resident. Your name and email are not on this list at all: they are held by Firebase Authentication, as described above, not by the app on your phone.

On this website, two preferences can sit in your browser's localStorage โ€” your theme choice (light or dark) and your language choice. Neither leaves your device, and neither identifies you.

The list used to be longer: followed sections, feed display and hidden-item preferences, a calendar provider, and PWA install-banner state. Those belonged to the site interface removed in August 2026 and are no longer written. The five pages that remain only read the two values above โ€” no control left on this website writes either one โ€” so a value still in your browser is a leftover from an earlier visit. Clearing site data for fairlawn.paragbaxi.com removes it.

Analytics

This website runs no analytics. There is no page-view script, no event tracking, no cross-site tracking, and no analytics cookie. The cookie-free page-view counter this site used to run was removed in August 2026 along with the site interface it measured, and nothing replaced it. The mobile app has no analytics either. Cloudflare, which hosts this site, keeps server-side request logs the way any web host does; this project adds nothing to them and does not use them to identify or profile a visitor.

Contacting us

The feedback form that used to be on this website was removed in August 2026 along with the rest of the site interface. Nothing on this website and nothing in the mobile app sends us a message any more. The contact page now simply publishes an email address, and mail you send there is ordinary email: it sits in an email inbox until it is deleted by hand, and it is not copied into this project's own storage or given an expiry date.

The submission endpoint the old form used has not been switched off, so it is described here rather than quietly dropped. It is still on our server, still behind Cloudflare Turnstile โ€” a bot check that verifies a request comes from a real browser without fingerprinting the person using it โ€” and it no longer has anything calling it. Were a message to reach it, it would keep the message text, the category, a shortened one-way hash of the sender's IP address, and an email address only if one had been typed in โ€” for 90 days, after which Cloudflare deletes it automatically โ€” and would copy the same message, email address included, to GitHub as an issue in this project's own repository and to the maintainer's Slack workspace. Such a message would be used only to reply to you โ€” never shared with advertisers, never used for marketing. That is why feedback still appears in the retention and storage lists below.

Gym occupancy check-ins

Nothing sends a gym check-in any more. The "how crowded is it right now" control lived in the website interface removed in August 2026, and the mobile app has never had one. As with the feedback endpoint above, the receiving route on our server was left switched on rather than deleted, so it is described here rather than quietly dropped.

Were a check-in to reach it, it would store the crowding level with no name, account, or device identifier attached, expiring after 2 hours; and, so that one person cannot report repeatedly, a SHA-256 hash of the sender's IP address for 15 minutes. The raw IP address is never kept.

Interest signals

Nothing sends an interest signal any more either. The "I'd go to this" control was part of the same removed interface, and the mobile app does not have one. That route is also still switched on, and is described on the same terms.

Were a signal to reach it, two separate things would be written. The count for that event carries no identifier at all โ€” it is a number. Alongside it, so the same person cannot vote twice, a dedup record is stored under a key built from the event, the date, and a SHA-256 hash of the sender's IP address, with which way they voted as its value. That is an identifier of sorts, and it is named here rather than described as anonymous. The raw IP is never kept, and both records are deleted at the end of the day plus a small buffer.

How long data is kept

Different types of data stick around for different amounts of time. Here is a breakdown of everything stored server-side and when it goes away.

Data with automatic expiration

These are deleted automatically by Cloudflare after a set period โ€” no manual cleanup needed.

  • Feedback submissions โ€” deleted after 90 days. Listed because the rule is still in force on the server, not because anything is arriving: the form is gone and the endpoint has no caller (see Contacting us, above)
  • Feedback rate limits (prevents spam) โ€” deleted after 24 hours; same situation
  • Occupancy reports (gym crowdedness) โ€” deleted after 2 hours. Listed for the same reason as feedback: the rule is still in force on the server, but the control that used it is gone and nothing is arriving (see Gym occupancy check-ins, above)
  • Occupancy rate limits (one report per person per 15 minutes) โ€” deleted after 15 minutes; same situation
  • Interest signals ("I'd go to this") โ€” both the counts and the per-voter dedup records described above, deleted by end of day plus a small buffer; same situation
  • Operational records that are not about you โ€” a cached copy of the service-health answer (60 seconds), the credential used to hand notifications to Google for delivery, and the markers that stop the same alert being sent twice (2 hours to 14 days). These record that an alert went out, never who received it

Data that persists until you remove it

Three things: the mobile app notification token described above, if you have turned notifications on; the mobile app account record described above, if you have signed in; and the name and email held by Firebase Authentication, also only if you have signed in. None has an automatic expiry โ€” a notification you asked for should not stop arriving on a timer, and settings you chose should not silently reset. Turning notifications off deletes the token; deleting your account (below) deletes both the account record and the Firebase sign-in record, name and email included.

Everything else stored server-side has an automatic expiration, and everything else besides lives only on your own device, where you can clear it at any time.

What is NOT collected

Names and email addresses are collected only if you choose to sign in to the mobile app โ€” see Signing in, above. Beyond that:

  • Phone numbers
  • Location data โ€” neither the app nor this website asks for, receives, or stores your device's location. The app requests no location permission at all. The snow-route street a signed-in resident can save is a street they pick themselves so the right snow-parking alert reaches them; it is a saved preference, not a reading of where the phone is, and it is never used to work out where anyone is
  • Browsing history
  • Cookies for tracking purposes
  • Data from other apps on your device
  • Data about children (this app is not directed at children)

Where data is stored

Server-side data is stored on Cloudflare infrastructure:

  • Workers KV: gym occupancy reports, interest counts, the hashed rate-limit keys that go with them, mobile app notification registrations, and mobile app account records for signed-in residents. This is also where a feedback submission would be written, if the retired endpoint described above ever received one

Notifications to the mobile app are delivered through Firebase Cloud Messaging, which is operated by Google. Sending an alert necessarily involves handing it to Google for delivery to your device. Signing in is handled by Firebase Authentication, also operated by Google, under the same privacy terms โ€” your email, name, and Firebase user ID are stored there, in this project's own Firebase account. Checking that you really are signed in also means our server fetching Google's public signing keys; that request carries nothing about you.

Two further services would be involved if the retired feedback endpoint described above ever received a message: GitHub, where it would be filed as an issue, and Slack, where a copy would be posted to the maintainer's workspace. They are named because nothing else here would tell you a message could leave Cloudflare. Neither receives anything today.

No data is sold, shared with advertisers, or transferred to anyone outside the infrastructure providers named above.

Data scraped from public sources

Fair Lawn Apps automatically reads publicly available information from fairlawn.org, the BCCLS library calendar, and similar public sources. The full pass runs twice a day; the three feeds whose value decays fastest โ€” local alerts, theater, and the Community Center schedule โ€” are re-checked every hour, and pool hours have their own daily check in season. No login credentials or private data is accessed. Only information already publicly visible on those websites is collected and reformatted. Some of those public pages are also passed to a language model from Anthropic or Google as part of this project's own quality checks, to catch a scraper that has started misreading a redesigned page. Only the public page content is sent. Nothing about a resident goes to either, and neither sits in the path of anything you do in the app or on this site.

Your rights

Under the New Jersey Data Privacy Act (effective January 15, 2025) and general best practice, you have the right to:

  • Access what data is associated with you โ€” for a visitor to this website that is nothing at all; if you have turned on mobile app notifications, it is that device's notification token, platform, language, and app version; if you have signed in, it is additionally your account record (notification categories, followed sections, and snow-route street) and the name and email your sign-in provider gave us
  • Delete your data at any time
  • Opt out of any data collection (data is never sold, so the "opt out of sale" right is satisfied by default)

Deleting your data

To delete your data, or to exercise any of the rights above:

  • To delete your mobile app notification token: turn Notifications off in the app's Settings tab. That deletes the server record. Uninstalling the app also removes everything stored on the device.
  • To delete your mobile app account: Settings โ†’ Account โ†’ Delete account. That removes your account record โ€” notification categories, followed sections, and snow-route street โ€” from our server, and deletes the Firebase sign-in record holding your name and email. It does not delete your Apple or Google account.
  • If you have already uninstalled the app: you do not need to reinstall it. Send us a deletion request โ€” say you want your account deleted and include the email address you signed in with โ€” and we will delete the same two records for you.
  • To clear local data on this website: Clear your browser's site data for fairlawn.paragbaxi.com
  • For any other requests: Send us feedback

Children's privacy (COPPA)

Fair Lawn Apps is a general-purpose community information tool for Fair Lawn residents. It is not directed at children under 13. No personal information is knowingly collected from children. Everything shown is general community information (schedules, alerts) and is not personalized to any individual.

Changes to this policy

If this privacy policy changes, the updated version will be posted here with a new "last updated" date. We do not send update notices by email โ€” even the email your sign-in provider gives the mobile app is used only to show you which account you're signed into, never to build a mailing list. Checking back periodically is recommended.

Last updated: August 24, 2026

See also: Terms of Service ยท Security Practices