Privacy Policy
This policy explains what data the Hayawiyati (حيويتي) app handles, where it is kept, who it is shared with, and how you can stop it or delete your data. It describes the current iPhone release of the app, and the older web tool on our site (section 3.6). The Arabic version is the reference text; this is a translation.
1. Who we are
Hayawiyati shows your health data from Google Health in Arabic. It is operated by Salem Alhusaini, an individual developer in Kuwait ("we"). Privacy contact: support@jahrastudio.com.
2. Connecting your Google account
You do not create a username or password in Hayawiyati. What you connect is Google Health, as a source of your data: you allow the app to read your health data from your Google account and to write into it what you log yourself. Connecting is optional and starts only when you choose to. You give consent on Google's own page, in a secure window managed by iOS rather than a web page inside the app, so the app never sees your password. When you connect, our server creates a "connection record" tied to your Google account (section 4), which you delete from inside the app with "Disconnect Google" (section 10).
3. Data we handle
3.1 Health data read from Google Health
After your consent, and depending on the permissions you grant, the app may read:
- Activity and fitness: steps, distance, floors, altitude, activity level and active minutes, sedentary periods, calories burned (including calories in each heart-rate zone), exercise, swim lengths, heart-rate zones and VO2 max.
- Measurements: heart rate, resting heart rate, heart-rate variability, oxygen saturation, respiratory rate, temperature, blood glucose, weight, body-fat percentage and height.
- Sleep: sleep sessions, their duration and stages.
- Nutrition: water intake and meal logs, with food names and their units.
- ECG and irregular rhythm notifications: when your account has them and you grant the permission. The app shows how many there are and when, as they arrived from Google, and does not analyse them.
Each reading is stored with the name of the device or app that recorded it and how it was recorded, as they arrived from Google.
Health profile and settings: we ask permission to read them. Our server receives your age, stride lengths and account start date from your profile and passes them to your phone. The app keeps only the account start date and does not currently use it in any feature. It uses your age only when you open the suggested goals, to choose the recommended sleep range for your age (section 3.9), and does not store it; it discards the stride lengths. The app does not currently read your settings.
The app does not ask for your location or for exercise route coordinates.
3.2 What you log yourself
- Weight, water and food (calories, fat, protein, carbohydrates and the food's name): kept on your device and written to your Google Health account through our server.
- Mood and symptoms: kept on your device and written to your Google Health account through our server. The symptom list includes general symptoms and others related to the menstrual cycle and to sex drive; only what you choose is recorded.
- Kept on your device only: portion sizes and units, the foods you save for later, and your daily goals, including whether a goal is one you set yourself or a suggestion you accepted (section 3.9).
Nothing is written to your Google account except what you log yourself.
3.3 Google account identity
When you connect, the app asks for Google's standard identity permissions (openid, email, profile). Our server therefore receives your stable Google account identifier, your email address, your display name and the link to your profile picture, and keeps them in your "connection record" (section 4). The identifier keeps each account's data separate. The email is used only to find your record when you ask us to delete it (section 10). The app does not use the name or picture link in any feature, and our server sends none of these to your phone except the identifier, which the app uses to keep each account's data separate.
3.4 Technical data
- Every request from the app passes through our server's hosting provider (Netlify), which receives its content and automatically records technical data about it (your IP address, device or app type, the address requested and the time) for security and operation. We can view them in the hosting dashboard for a limited period set by the hosting plan, and use them only for security and fixing faults.
- Our server logs technical events such as the kind of operation, its outcome, the data type and record counts — without your account identifier, your email or any health value — to keep the service running and fix faults.
- To prevent abuse (such as repeated registration requests), our server keeps short-term counters tied to a one-way encrypted value derived from the IP address and a secret key that changes every ten minutes — not the address itself — and uses them for nothing else.
3.5 What we do not collect
We do not collect your location or contacts. We do not collect your photos: the camera and the photos you choose are used only on your phone, when you choose to share your day as an image, and never reach our server (section 3.10). We keep only the link to your Google profile picture (section 3.3). The app never uses the microphone. The app contains no analytics, crash-reporting or advertising tools, and does not read your device's advertising identifier.
3.6 The older web tool (/app)
Our site still hosts an older web version that shows the same Google Health data with the same permissions, read-only. When you use it, our server sets a session cookie in your browser for about an hour that holds an encrypted Google access token. The history it shows is kept in your browser (IndexedDB), not on our server, and it creates no connection record on the server and stores no refresh token.
3.7 Notifications
- Only with your consent: these notifications are optional. We send them only after you agree inside the app («أوافق على استقبال الإشعارات», "I agree to receive notifications"), and they appear on your device only if you also allow them in iOS. Your consent in حيويتي and the iOS permission are separate, and both are needed. Your consent is never assumed from the iOS permission alone, and the app works fully without it.
- Turning them off: you can withdraw your consent at any time in حيويتي under Settings → Notifications → "App news and new features", or turn notifications off in iOS Settings. When you withdraw consent, the app removes your device's registration and asks our server to delete its token at once, and it never turns your consent back on by itself. If there is no connection, it retries at every start until the deletion is done; until the request arrives, a notification sent in that period may still reach your device, which you can prevent at once in iOS Settings.
- What we keep: when you turn them on, the app sends our server a push token for this device, issued by the Expo service, together with the platform (iOS) and the app version, together with your consent and when you gave it. We keep it with the time it was first and last registered and the subscription's status, and use these only to deliver app notifications. We do not keep your Google account, email or name with it, and no health value is sent with it. Like every request, the registration passes through our hosting provider, which records its technical data (section 3.4).
- Separate from your health data: a push token is not a health record and is not stored with your readings.
- What notifications contain: general messages from the حيويتي team — announcements, feature news and service notices — sent unchanged to everyone who turned notifications on. They are not monitoring of your condition and not medical alerts, they contain none of your readings or health data, and our server refuses messages that contain a number with a health unit (such as a heart rate or weight). A notification may appear on your iPhone's lock screen, depending on your iOS settings.
- Who delivers them: notifications pass through Expo and then Apple's push notification service to reach your device; both process the push token and the notification text for that purpose.
- Send records: we keep a record of each notification we sent: its text and time, the number of devices, the push service's acceptance results, and, for each device it was sent to, a technical reference that is a one-way encrypted fingerprint of its token — not the token itself. Our server deletes each record, with its fingerprints, automatically 90 days after the send, in a process that runs once a day, so a record may remain for about one more day after the period ends. This deletion does not touch other data, such as your Google connection record or the data on your device, and our hosting provider's logs follow their own retention (section 3.4).
- When the token is deleted: when you withdraw your consent in حيويتي's Settings (as above); or as soon as the app, the next time it starts, finds that notifications were turned off in iOS; or when the push service tells us the device no longer receives them (as after the app is deleted). If a device has not checked in for more than 60 days — the app renews its registration when it starts — it is deleted at the next review of the device list or the next send after that.
3.8 Live heart rate over Bluetooth
- What it does: if you set it up, the app connects over Bluetooth to a heart-rate monitor you choose (such as a compatible Fitbit device) and shows your live heart rate on the Home screen and the live heart-rate screen. It reads the standard Bluetooth heart-rate measurement and nothing else from the device.
- Only while the app is open: the connection runs only while one of those screens is open, and is released when you leave them or the app goes to the background. The app does not measure your heart rate in the background.
- You control it: the button on the heart-rate card starts and stops live monitoring. When you stop it, the app disconnects from the device and remembers your choice, even after the app is restarted, so it does not connect by itself until you turn it on again. You can also turn automatic connection on or off, or forget the device, on the live heart-rate screen.
- What is kept: the live readings stay in the phone's memory for that session only, to draw the line on the card. They are not saved to the health database and are not sent to our server or to Google. The app keeps, in the iOS Keychain on your phone, the identifier and name of the device you chose, whether automatic connection is on, and whether you stopped live monitoring.
- Permission: iOS asks for Bluetooth permission the first time you set it up. You can refuse, or withdraw it later in iOS Settings; everything else in the app keeps working.
3.9 Suggested goals
- On your phone: the app can suggest goals for steps, sleep and total calories burned. It calculates them on your phone from the readings already stored there (your last four weeks of steps, sleep and calories burned) and, for sleep, the age in your Google health profile or an age you type for that calculation. Your readings are not sent anywhere to calculate them. The age reaches your phone through our server, as the rest of your profile does (section 3.1); it is used for that calculation and not stored.
- You decide: a suggestion becomes a goal only when you accept it. You can edit it, keep the goal you have, enter your own, or turn suggestions off. A newer calculation never replaces a goal by itself.
- Not from Google: Google Health does not provide the goals you may have set elsewhere, and the app does not import them.
- General guidance: suggestions are general wellness guidance, not medical advice (section 11).
3.10 Camera, photos, and sharing your day
- What you can make: an image of the day shown on the Home screen, with that day's date, your sleep duration, steps and total calories burned, and the Hayawiyati name and logo. It contains nothing else: no name, email, account or other readings.
- Background: a Hayawiyati design, a photo you take with the camera, or a photo you choose from your library.
- Camera: iOS asks for camera permission only when you choose to take a photo for this image. You can refuse it; everything else in the app works without it. The app takes still photos only and never records sound.
- Choosing a photo: through the iOS photo picker, which gives the app only the photo you select. The app does not ask for access to your photo library.
- Saving: "Save image" asks iOS for permission to add photos to your library. It is add-only: it does not let the app see your other photos.
- On your phone only: the image is put together on your phone. The photo and the finished image are not uploaded to our server or to Google. The app keeps temporary copies of them in its private storage on your phone, which iOS may clear, and does not add them to the health database.
- When you share: nothing is saved or shared unless you press "Save image" or "Share". If you share through another app or service, that destination receives the image and handles it under its own privacy policy.
3.11 Workouts you log, and sending them to Google
- What you log: workouts you enter yourself, time with the workout timer, or confirm from the app's suggestions: the activity type, start and end time, active duration, and, if you enter them, distance, calories and a note. They are kept on your phone (section 4).
- Suggestions: the app may notice, on your phone, activity in your imported readings that has no workout logged, and ask whether you want to log it. Nothing is logged or sent unless you confirm it.
- Sending to Google is optional and off by default. It needs a separate Google permission (adding workouts to your Google Health account), which the app asks for only when you choose to send workouts, in its own Google consent screen. You can send one workout you choose, or turn on automatic sending for workouts you log from then on. You can refuse; everything else in the app works without it.
- What is sent: for each workout you send, the activity type, its start and end time with the time zone (UTC offset) of where you logged it, the active duration, and the distance and calories if you entered them. Notes, heart rate, steps and location are not sent, and neither is any activity you did not confirm. Workouts are sent through our server, which passes them to Google without storing them. A workout that overlaps one already recorded by a watch or another app is not sent, so it is not counted twice.
- Editing and deleting: if you edit a workout the app sent, the copy in your Google account is updated; if you delete it in the app, it is deleted from your Google account too, as long as the same account is still connected.
- Stopping: turning automatic sending off stops future sending only; workouts already sent stay in your Google account. Deleting local health data or disconnecting does not delete them from Google (sections 9 and 10).
- Availability: we may turn workout sending on gradually, or pause it; while it is paused nothing is sent, your workouts stay on your phone, and those waiting are sent only if sending is turned back on and your choice still allows it.
4. Where your data is kept
- On your device: imported readings and what you log are kept in a database inside the app's private storage on your phone. This database is excluded from iCloud and computer backups. The app does not encrypt it itself; it relies on iOS protections, so we recommend using a device passcode. The app also keeps, in the iOS Keychain, its own session token (valid for 30 days, and after that usable only to disconnect) and your Google account identifier — neither is a Google credential — together with small preferences: the Bluetooth heart-rate device you chose and your choices about it (section 3.8), and whether goal suggestions are on (section 3.9). Keychain items may be included, encrypted, in your device's backups. If you switch to another Google account, the earlier account's data stays on your phone, hidden, until you delete it. Photos used for sharing images are kept only as temporary copies (section 3.10).
- On our server: the server passes your requests to Google and returns the results to your phone without storing your health readings, food names, moods or symptoms. It keeps only your "connection record": your Google account identifier, email, name and picture link, the permissions you granted, connection and update times, and your Google access and refresh tokens, encrypted. Google tokens never reach your phone.
- At Google: the data the app reads from your account, and what it writes there at your request, is kept in your Google account under Google's privacy policy.
5. Why we use this data
- To show your readings, charts and history in the app.
- To calculate descriptive summaries on your device (such as totals, averages and ratios) from your imported and logged data.
- To suggest goals on your device, which apply only if you accept them (section 3.9).
- To show your live heart rate from a device you chose (section 3.8).
- To make an image of your day when you ask for one (section 3.10).
- To write what you log to your Google Health account, including workouts you choose to send (section 3.11).
- To keep each connected account's data separate, and to run and protect the service.
We use it for nothing else: we do not sell or rent your data, use it for advertising, marketing or profiling, send it to any artificial-intelligence service, or share it with anyone for their own purposes.
6. Who else processes your data
- Netlify, Inc. (United States): our server's hosting provider. Requests pass through it with their content, including your health data in transit, and it stores the connection record in the United States, encrypted (with Google tokens additionally encrypted by us). It processes them on our behalf, only to host and run the service.
- Expo (650 Industries, Inc., United States) and Apple: only if you turn notifications on (section 3.7): they deliver notifications to your device and process the push token and the notification text to do so. No health data passes through them.
- Google: the service you chose to connect; the source of your health data and the destination of what you log. What is kept in your Google account is protected under Google's privacy policy.
When you save or share an image of your day (section 3.10), it goes where you send it: your photo library, or the app or service you choose in the share sheet, which handles it under its own policy. We do not send it anywhere ourselves.
We share your data with no one else, unless the law requires us to. We use no analytics or advertising cookies. When you connect from the iPhone app, our server sets one security cookie that lasts 10 minutes. If you use the older web tool (section 3.6), it also sets a session cookie for about an hour that holds an encrypted Google access token.
7. Advertising and tracking
The app shows no ads, does not track you across other companies' apps or websites, and shares no data with data brokers. It therefore does not ask for iOS tracking permission.
8. Security
- All requests travel over an encrypted connection (HTTPS).
- Google tokens are stored encrypted on the server and not sent to the phone.
- You give consent in a secure window managed by iOS.
- The health database on your phone is excluded from backups.
No protection is perfect, but we keep as little as we can and protect what we must keep.
9. How long we keep data
- On your device: until you delete it or delete the app. Deleting the app deletes its database; the session token may remain in the iOS Keychain, so to end the connection completely, disconnect in the app before deleting it.
- Connection record on our server: kept while you are connected; it does not expire on its own. It is deleted in full when you use "Disconnect Google" in the app. If instead you remove the permission in your Google account settings, the record is deleted the next time our server tries to renew its access (roughly once an hour while the app is in use) and Google reports the permission removed. If the app is not used again, or the connection was already marked as needing to be reconnected (so the server does not try to renew it), the record (with no working access) stays until you disconnect in the app or ask us to delete it.
- When you switch to another Google account: the current account is disconnected first — Google is asked to revoke its access and its record is deleted from our server — and then the new account is connected. If it cannot be disconnected, the account is not changed. The app keeps no more than one connection.
- Live heart-rate readings: only in the phone's memory for the session; not stored (section 3.8).
- Photos and images for sharing: temporary copies on your phone until iOS clears them; images you save stay in your photo library until you delete them (section 3.10).
- Push token: while notifications are on; deleted as described in section 3.7.
- Send records: about 90 days from the send, then deleted with the device fingerprints by a daily process. They contain no push tokens and no health data (section 3.7).
- Technical logs: our hosting provider keeps our server's logs and the request logs (section 3.4) for a limited period set by the hosting plan.
- At Google: in your account, managed there. If you delete in the app an entry the app wrote, it is deleted from your Google account too, as long as the same account is still connected. Disconnecting deletes nothing from your Google account.
10. Your controls and deletion
- Disconnect Google (in Settings or the connection screen): the server asks Google to revoke access, then deletes your connection record in full, and the app deletes its session. This works even after the app's session has expired, unless the same Google account was connected again afterwards (on another device, or in a connection attempt that did not finish); the app then asks you to reconnect first, or you can remove access on your Google account's permissions page. If Google cannot be reached, the record is kept and the app tells you, so you can try again. If the server holds no token that can be revoked, the record is deleted and the app tells you the revocation was not confirmed. The app says access was revoked only when Google confirmed it. Data on your phone stays until you delete it.
- Delete local health data (in Settings): deletes every health record stored on your phone, and keeps your goals. It deletes nothing from your Google account, and afterwards the app can no longer edit or delete what it wrote there (including moods and symptoms) — to remove those from Google, delete them in the app first, or in your Google account. If your account is still connected, your data is imported from Google again automatically — disconnect first if you do not want that.
- Remove the permission at Google: from your account's permissions page (myaccount.google.com/permissions).
- Camera, photos and Bluetooth: allow or refuse each when iOS asks, and change it at any time in iOS Settings. Stop live heart rate with the button on its card, and forget the device on the live heart-rate screen.
- Sending workouts to Google: turn automatic sending off in Settings at any time; delete a sent workout in the app to delete it from your Google account too; or remove the permission at Google (section 3.11).
- Suggested goals: turn suggestions off on the suggested-goals screen. Your goals stay as they are, and you can remove any goal on the goals screen.
- Notifications: withdraw your consent in حيويتي under Settings → Notifications, or turn them off in iOS Settings, at any time; your device's token is then deleted from our server (section 3.7). Disconnecting Google and deleting local health data do not change notifications; they are independent.
- If you can no longer disconnect in the app (for example, after deleting it, or if a connection attempt failed after you approved it at Google): remove Hayawiyati's permission on your Google account's permissions page — which ends our access to your account — then write to support@jahrastudio.com and we will help you delete the remaining record on our server. We may ask for what we need to verify that you own the connected Google account before acting, and we do not delete a record merely because a request arrives from some email address. We never ask for your password, and please do not include readings or screenshots of your health data.
We review and respond to privacy requests within a reasonable period and within any timeframe required by applicable law.
11. Accuracy
Readings are shown as they arrived from Google Health and the devices linked to it. They may be incomplete or delayed, and the provider may correct them later, which changes what you see. The app is not a medical device, gives no diagnosis or treatment, does not monitor your condition or send health alerts, and must not be relied on in an emergency; for severe or urgent symptoms, seek medical care immediately. Suggested goals are general wellness guidance, not medical advice; if you have a health condition, ask a professional before changing your activity or sleep.
12. Children
The app is not directed at children under 13, and we do not knowingly collect their data.
13. Processing outside your country
Our hosting provider's servers and Google's servers may be located outside your country, including in the United States. We process your data there only for the purposes in this policy, and Google processes what is in your account under its own policy.
14. Changes to this policy
We update this page when what the app does changes; the effective date is shown at the top.
15. Contact
- Privacy, deletion requests and support: support@jahrastudio.com
- Technical contact: developer@jahrastudio.com
- Support page: hayawiyati.jahrastudio.com/support