Pora carries a reminder through to an answer. Every reminder gets an outcome, and you set it with one tap right in the notification: Done, Later or Skip. You never have to open the app for that. Later the history shows what actually happened, instead of "I think I did it".
Works offline, with no account and no sign-up.
One screen, three sections.
At the bottom of the schedule section the app states the resulting rule in plain language - for example, "on weekdays every 2 hours from 09:00; the last one no later than 18:00". If that sentence is not what you meant, fix the fields before saving.
A similar reminder does not need retyping. Open an existing one and tap Duplicate: you get a draft with the same fields and schedule. The answer history stays with the original.
| Mode | What you set | What it is for |
|---|---|---|
| Exact time | a time and the days of the week | things with an hour of their own: a pill, a call, a report |
| Random | a window, how many times a day, the minimum gap, the days | things with no right hour: notice how you feel, stretch, drink water |
| At intervals | a day window and a step | an even rhythm inside the day |
| Once | a date and a time | something that will not repeat: pick up a parcel, call on Thursday |
The Once mode ends by itself: it fires on its day and never comes back. In the Random mode future times are never shown - that is the whole point of it.
The minimum gap (60 minutes by default) keeps random reminders from clumping together. If you ask for more repeats than fit into the window, the app will not save and shows the arithmetic next to the fields that do not add up.
Not in the scheduler yet: windows across midnight, and "N hours after it was done".
Answer straight in the notification shade, or in the app on the Today screen, under "waiting for an answer". The first line of the notification is the action itself, the second line shows the state.
Done and Later work without opening the app. Skip opens it - Android gives no other way to show a list of reasons from a notification.
Tap a card on Today and a sheet opens for one particular reminder: the one due at 14:00, or the one you have already answered. What you can do there depends on where it is, and the subtitle says so directly:
| Subtitle | What it means | What you can do |
|---|---|---|
| "Due at 14:00" | has not arrived yet, the time is known | mark it ahead of time, drop it for today |
| "Due during the day" | random mode, the time is deliberately not named | the same |
| "For 14:00 - waiting for an answer" | shown, not answered yet | answer, add a note |
| "For 14:00 - answered at 14:07" | already answered | change the outcome, edit the note |
| "For 14:00 - the response window closed" | you could have answered but did not | set the outcome after the fact |
If the same reminder comes more than once a day, the card is collapsed and the sheet lists every arrival for today - each with its own line and its own outcome, answered separately.
The time is changed in the reminder itself: Reminders → tap the row → new time → Save. Then the app asks what exactly you meant:
The choice appears only in the Exact time mode: the other modes have no single time to move. If today's reminder has already arrived or has already been answered, only one option is left and the app explains why; the new time then applies from tomorrow.
Not needed today, but the reminder itself is fine - drop just this one. The sheet asks "Drop this one?" and spells out the consequence for that exact case: a reminder that has not arrived will not arrive today and the rest of the days stay; one that has already passed disappears from Today and History, and that cannot be undone.
To silence a reminder for longer than a day, pause it on the Reminders screen - that is reversible.
Done before you were reminded? Tap the card under Later today, pick ✓ Done or ✕ Skipped, and the outcome is recorded before the notification - so it never arrives. If several arrivals are behind that card, only the nearest one is closed.
The response window lasts until the next arrival of the same reminder, but never more than 4 hours. Later extends it, so a snoozed reminder still has time to arrive and be answered.
If the window closes with no answer, the outcome becomes no answer. That is a separate outcome, not "skipped": the app does not know whether you dismissed the notification, missed it, or never got it at all. You can still fix the outcome by hand in the history.
This is the answer to a familiar feeling: did I actually do it? If the follow-up is on, then 15, 30 or 60 minutes after your answer a short question arrives with two buttons.
The countdown starts from your answer, not from the reminder: mark something done at 14:40 with a 30-minute delay and the question arrives at 15:10. Closing the response window does not cancel it.
The question does not arrive when you pressed Skip, when you never answered and the reminder is still sitting in the shade, when the reminder never reached you at all, or when you pressed Later - in that case it moves along with the snoozed arrival.
Today - the whole day: waiting for an answer, later today, closed. Everything that needs you right now sits at the top.
Reminders - the list of rules. Here a reminder can be edited, paused with a switch, duplicated or deleted. Deleting removes the rule for the future; past answers stay in the history.
History - outcomes by day. Tap a record and the outcome changes with one touch; an Undo appears briefly at the bottom in case you missed. The note lives there too and is edited in place. A corrected record is marked as corrected, and the original timestamp is kept.
| Outcome | What happened |
|---|---|
| ✓ done | you pressed Done - in the shade, in the app, or on the follow-up question |
| ✕ skipped | you pressed Skip; if you picked a reason, it stands in the same line |
| ∅ no answer | the response window closed with no answer |
| did not arrive | the notification was never shown - usually permissions or system restrictions |
| snoozed until 14:20 | Later was pressed, the reminder will be back |
| confirmed | a "done" outcome confirmed through the follow-up question |
While you are not opening the app, reminders left unanswered are collected into one summary notification - "2 reminders are still unanswered". It asks for nothing and goes away when you open the app. The Today screen says the same thing with a banner: "While you were away: 2 unanswered".
The fourth tab at the bottom. If something is wrong with delivery, the tab itself says so - "Settings - check the connection" - and that is visible from any screen.
A notification that never showed up is an ordinary Android story: manufacturers cut background work to save battery. That is why the app has the Connection check block. It shows three things and takes you to the right system settings:
There is also a Check button: the app sends a test notification titled "Connection check".
Find it in the shade and press Done. That finishes the setup.
Press it and the bottom of the screen says "Last test: confirmed". That is a check of the whole chain at once, from scheduling to your answer.
They are collected into their own group: a shared "Pora" header sits above them in the shade with the reminders underneath. The header itself is silent - sound and vibration belong to the reminders - and it disappears once nothing is left under it.
In the Android settings the app shows two categories, deliberately of different loudness:
Turn the first category off and reminders simply stop arriving. The second one can be turned off, but if the follow-up question is what bothers you, it is easier to switch it off in Settings.
After an app update the notification categories are recreated - otherwise vibration cannot be enabled, as Android does not allow changing it on an existing category. If you had tuned the loudness or importance by hand, those settings go back to default and need setting again.
If your phone is not a Pixel, do this on the first run: open the system settings for the app and lift the background restrictions.
The names differ by manufacturer - usually "Autostart", "Background activity", "Don't optimise battery", "Lock in the task manager". Xiaomi, Samsung, Huawei, Honor, Oppo, Realme, vivo and OnePlus are known for these restrictions.
Two more reasons for silence that the app does not work around and will not:
And an honest caveat: even with exact alarms allowed, Android in battery saver mode may shift the arrival by a few minutes.
Reminder texts, notes, schedules and history are stored on your phone only. What goes out is anonymous information about how reminders behave: whether notifications arrive, how you close them, and which topic a reminder belongs to - a coarse category such as "food" or "work", derived from the emoji you picked. All of it goes through the Yandex AppMetrica analytics service. The text of your reminders and notes is never sent, and the emoji itself stays with you.
The Connection check block shows your installation code, a random string. It is what lets us find and delete the statistics of your installation if you ask us to by email.
To delete the local data, uninstall the app or clear its data in the system settings. The details are in the privacy policy, and deleting the statistics is described on the data deletion page.
An honest list, so you do not go looking: no account and no sync between devices, no cloud backup, no to-do list, calendar or projects, no charts, streaks or rewards, no widgets or themes beyond light and dark, no iOS version. The app is free: no paid features, no in-app purchases, no ads.
Something broken, a button leading nowhere, a reminder arriving at the wrong time - write to malkv.work@gmail.com. If it is about notification delivery, include your phone model, the Android version and the installation code from the Connection check block: without the code your installation cannot be found, because the data is anonymous.