What works where
On this page
Which feature works on which kind of device, how far each one is, and what is planned. obacht is in early development: everything below runs in its automated tests, and the first family is now testing it on real phones, a PC and a TV.
This page is updated with every feature that is added, changed or removed.
What the marks mean:
| Mark | Meaning |
|---|---|
| โ | Works. Covered by automated tests (on Android also on an emulator) |
| ๐งช | Built, still to be tried on a real device |
| ๐ก | Partly: see the note below the table |
| ๐ | Planned (see Planned below) |
| โ | Not possible on this platform (see Platform limitations) |
| โ | Not built, or doesn't apply |
The platforms:
| Column | What it is | How obacht runs there |
|---|---|---|
| Android | Android phones and tablets | The obacht app, from a file today (Play Store later); blocks through Android's accessibility service |
| Managed | Android phones set up as a family device | The same app as device owner, set up with adb or a QR code at the phone's first start; stronger: it pauses apps and can't be removed |
| TV | Google TV and Android TV | The Android app, adapted for TVs |
| Windows | Windows 10 and 11 PCs | A system service with a tray icon in the child's account |
| Linux | Linux PCs | No app yet; only obacht's Firefox extension |
| iOS | iPhone and iPad | Not yet: on hold (see Planned) |
| DNS | Consoles, smart TVs and any other device | obacht's DNS filter (DNS over HTTPS or TLS, or AdGuard Home) and UniFi routers |
Rules
| Feature | Android | Managed | TV | Windows | Linux | iOS | DNS |
|---|---|---|---|---|---|---|---|
| Daily time per category, per app and in total, shared by all of a child's devices | โ | โ | ๐งช | ๐งช | ๐ | ๐ | ๐ก ยน |
| Time windows (bedtime, school hours), per weekday | โ | โ | ๐งช | ๐งช ยฒ | ๐ | ๐ | ๐ก ยน |
| Holidays and special days | โ | โ | ๐งช | ๐งช | ๐ | ๐ | ๐ก ยน |
| Block an app, always allow it, give it its own limit | โ | โ | ๐งช | ๐งช | ๐ | ๐ | ๐ก ยน |
| Different access or limit for an app on one device | โ | โ | ๐งช | ๐งช | ๐ | ๐ | โ |
| Games sorted into Games by themselves, one games budget | โ | โ | ๐งช | ๐งช ยณ | ๐ | ๐ | โ |
| AI apps and chatbots in their own category | โ | โ | ๐งช | ๐งช | ๐ | ๐ | โ |
| New apps wait for a parent's approval | โ | โ โด | ๐งช | ๐งช | ๐ | ๐ | โ |
| Pause now | โ | โ | ๐งช | ๐งช ยฒ | ๐ | ๐ | ๐ก ยน |
| Extra time from parents | โ | โ | ๐งช | ๐งช | ๐ | ๐ | โ |
| The child asks for extra time on the device | โ | โ | ๐งช | ๐งช | ๐ | ๐ | โ โต |
| Warnings 10 and 2 minutes before a block | โ | โ | ๐งช | ๐งช | ๐ | ๐ | โ |
| Rules hold offline | โ | โ | ๐งช | ๐งช | ๐ | ๐ | โ โถ |
| Changes arrive within seconds | โ | โ | ๐งช | ๐งช | ๐ | ๐ | โ |
| Sign the child out, allowed sign-in hours | โ | โ | โ | ๐ | ๐ | โ | โ |
- A device using the DNS filter can't measure time. Websites follow the child's rules (blocked sites, time windows for all apps, a pause, a category whose time is used up on other devices). A UniFi router takes a device offline at bedtime, during a pause and when its category's time is used up.
- Time windows for all apps and a pause lock the whole PC, always-allowed programs too.
- Steam games are recognised by their Steam id, so their time counts once with the Steam import. Games outside Steam are suggested as games when you sort apps.
- Managed phones also turn off installing apps while approval is on. Elsewhere a new app can be installed but stays blocked until a parent approves it.
- With a login for your child, they can ask in a browser.
- The DNS filter runs on the server, so it needs a connection.
Websites
| Feature | Android | Managed | TV | Windows | Linux | iOS | DNS |
|---|---|---|---|---|---|---|---|
| Block websites, give them limits or categories | โ โท | โ โธ | ๐งช โน | ๐ก ยนโฐ | ๐ก ยนโฐ | ๐ | โ |
| Website lists (AI sites, adult sites and others) | โ โท | โ | ๐งช โน | ๐ก ยนโฐ | ๐ก ยนโฐ | ๐ | โ |
| Website history: visited sites | โ โท | โ | ๐งช โน | ๐ก ยนโฐ | ๐ก ยนโฐ | ๐ | ๐ก ยนยน |
| Website history: full page addresses | โ | โ | โ | ๐งช ยนยฒ | ๐งช ยนยณ | โ | โ |
- Through a filter on the phone (a local VPN that only sees DNS), while the child has website rules or a website list affects them, or website history is on. Another VPN app or a private DNS setting turns it off; parents are told.
- The filter is the phone's always-on VPN and private DNS is locked.
- With the DNS filter as the TV's Private DNS (DNS over TLS).
- Only if the PC's browser or Windows uses obacht's DNS filter as its secure DNS.
- Through DNS over HTTPS or TLS. Not through AdGuard Home.
- Firefox only, with obacht's extension, which the Windows app installs and removes. Chrome and Edge record sites, not pages.
- Firefox only, set up with a script by the PC's administrator.
What parents see, what the child sees
| Feature | Android | Managed | TV | Windows | Linux | iOS | DNS |
|---|---|---|---|---|---|---|---|
| Time per app and category, today and in the history | โ | โ | ๐งช | ๐งช | ๐ | ๐ ยนโด | โ |
| Installed apps with names and icons, suggested categories | โ | โ | ๐งช | ๐ก ยนโต | ๐ | ๐ | โ |
| Screen-on time, unlocks, when which app was opened | โ | โ | ๐งช | โ | โ | โ | โ |
| Swipes per app session (opt-in) | โ | โ | โ | โ | โ | โ | โ |
| A notification when one app runs for a long time | โ | โ | ๐งช | โ | โ | โ | โ |
| Where the child is (opt-in) | โ | โ ยนโถ | โ | โ | โ | โ | โ |
| Battery level and whether it is charging | โ | โ | โ | โ | โ | โ | โ |
| A notification when a device stops checking in or loses its protection | โ | โ | ๐งช | ๐งช | ๐ | ๐ | โ |
| obacht always visible on the device | โ | โ | ๐ก ยนโท | ๐งช | ๐ | ๐ | โ |
| The child sees their time left and what parents can see | โ | โ | ๐งช | ๐งช | ๐ | ๐ | โ โต |
| The child's own history and timeline | โ | โ | ๐งช | โ โต | โ | โ | โ |
| The media agreement on the device | โ | โ | ๐งช | ๐ | ๐ | ๐ | โ |
| A blocked app quotes the agreement | โ | โ | ๐งช | ๐ | ๐ | ๐ | โ |
- iPhones would report time per category, not per app (an Apple limit).
- The programs the child used, without icons.
- Managed phones grant themselves the location permission.
- Google TV has no permanent notification: obacht is on the TV's home screen instead.
Keeping obacht on the device
| Feature | Android | Managed | TV | Windows | Linux | iOS | DNS |
|---|---|---|---|---|---|---|---|
| Starts by itself after a restart | โ | โ | ๐งช | ๐งช | ๐ | ๐ | โ |
| Hard for the child to remove | ๐ก ยนโธ | โ | ๐ก ยนโธ | ๐งช ยนโน | ๐ | ๐ | ๐ก ยฒโฐ |
| Changing the clock doesn't help | ๐ก ยฒยน | โ | ๐ก ยฒยน | ๐งช ยนโน | ๐ | ๐ | โ |
| Safe mode, other users and profiles | โ | โ | โ | ๐งช | ๐ | ๐ | โ |
| Factory reset | โ | ๐ก ยฒยฒ | โ | โ | โ | โ | โ |
- obacht is a device admin, and with removal protection on it closes the screen that switches it off until a parent allows it. A child who knows safe mode or a computer with adb can still remove it.
- The child's Windows account must be a standard user; parents keep the administrator.
- On a device whose DNS setting the child can change, the filter can be skipped. A UniFi router decides on the network, outside the device.
- obacht keeps its own time from the server's and tells parents when the clock was changed.
- Not from the settings; from the recovery menu it still works.
For parents and other tools
These don't depend on the child's devices.
| Feature | Where | State |
|---|---|---|
| Parent app | Any current browser, also installed as an app on phones and PCs; German and English | โ |
| Notifications to parents (requests, new apps, silent devices, weekly summary) | Android and desktop browsers; on iPhone and iPad only once obacht is on the home screen | โ |
| Several parents, API tokens, signed-in sessions | Parent app, API | โ |
| Sign in through your own login provider (OpenID Connect), permissions per parent, accounts from the provider | Server | โ |
| A login for your child, with proposals to parents | Any browser | โ |
| Media agreement | Parent app | โ |
| Steam playtime from a public profile (experimental) | Server | ๐งช |
| Home Assistant | Custom integration (not in HACS yet) | ๐งช |
| Everything through the documented API (OpenAPI) | Server | โ |
| Run it yourself: NixOS module, Helm chart, container image | Server | โ NixOS, ๐งช Kubernetes |
| Encrypted connection to the database (TLS) | Server | โ |
| Hosted by make it so. | obacht.eu | ๐ |
Planned
In the order they are planned; nothing here has a date yet.
Now, while the first family uses obacht:
- Trying everything above on real phones, a Windows PC and a Google TV, and fixing what comes up.
- Windows: signing the child out, and the hours they may sign in at all.
- Setting up managed Android phones by QR code at their first start.
Next, before other families try it:
- Backups and restore, and a download of all of a family's data.
- A switch that lifts all restrictions on every device, for a server being shut down.
- Monitoring for self-hosters.
- Guides for parents and for each kind of device.
Later:
- An app for Linux PCs (time limits and bedtime like on Windows), and for SteamOS.
- iPhone and iPad (needs Apple's paid developer programme and an approval from Apple).
- The media agreement on Windows and managed phones, and a printable version.
- Page history in Chrome and Edge, once the extension is in their stores.
- Wake-up alarms and Do Not Disturb at bedtime on Android phones.
- Consoles (Xbox, PlayStation, Switch) beyond the DNS filter and the router.
- obacht in the Play Store, the Windows app signed, Home Assistant through HACS.
This page is part of obacht's documentation, licensed under CC BY 4.0. Source on GitHub ยท CC BY 4.0 ยท Version: main (2ab2740)