Show HN: I made a app that uses NFC as a physical switch to block distractions
225 points
14 days ago
| 33 comments
| foqos.app
| HN
Hi HN!

Super proud to showcase Foqos! I wanted to create a way to physically block apps on my phone, always had a bunch of NFC tags, combined the 2 together over the holiday break and Foqos was born. You can create profiles, write them to NFC tags and track your weekly focus.

Its completely open source and will always be free! There is an affiliate link in the app for nfc tags and donations are completely optional

Link here: https://apps.apple.com/ca/app/foqos/id6736793117

oblo_mov
1 day ago
[-]
I really love the app and the idea - I am using it on an iPhone 13 Pro. It does work to block everything but there seem to be issues when selecting or deselcting from large categories. E.G. I have 30 Health Apps and I want to enable SleepCycle while keeping the others blocked. That does not work it will always automatically unblock all 30. Therefore it does not let me create any profiles with actual use unless I block everything.
reply
layer8
14 days ago
[-]
By the way, you can trigger iOS shortcuts with NFC tags, so in principle you can trigger any functionality exposed as a Shortcut action. However, NFC recognition doesn’t always work as smoothly as one would hope.
reply
_tariky
14 days ago
[-]
It depends on the type and manufacturer of the NFC chip. I recommend using SLIX2 chips; they are a bit more expensive, but they work perfectly.
reply
awaseem
14 days ago
[-]
Yeah 100% I think I commented this somewhere else as well. Your phone already has this natively built in, you don't need any of these apps at all.

Over the break I wanted to build something that was gonna make this easier for myself. I built it and made it totally free and open source. I don't see a competitive advantage, but just a fun challenge for myself to build and get this type of app reviewed.

Maybe I'll write a blog post about the apple review submission because that was a not fun lol

reply
whycome
14 days ago
[-]
To expand here, when using NFC to trigger an iOS shortcut, there's nothing actually written to the NFC. Instead, shortcuts responds when that NFC is present. So you can actually write something like a URL to the chip and have it act simultaneously.

You can even use an airtag because it sees it as an NFC as well.

reply
tigereyeTO
14 days ago
[-]
I'm curious why the NFC tags are required at all?

Can't you switch profiles on your phone without scanning an NFC tag already? Couldn't your app allow profile switching without requiring any NFC tags?

It's not clear to me what the NFC tags add to this experience.

reply
enoch_r
14 days ago
[-]
It's a commitment device - e.g. leave your "mindless scrolling" NFC tag at home so you don't mindlessly scroll while you're out.
reply
runjake
14 days ago
[-]
For those curious, this is called Focus and is pretty highly configurable after a little learning curve. You can use automations to switch modes by calendar, date/time, GPS location, connected Wi-Fi network, etc. No programming required. Programmable via Shortcuts, too!

https://support.apple.com/guide/iphone/set-up-a-focus-iphd62...

reply
miki123211
14 days ago
[-]
Ever since focuses got introduced, I really soured on the idea of a physical mute/ring switch.

Having my phone ring at home and vibrate when away is the most obvious use case for this feature, and yet it can't be implemented because you can't toggle a physical switch in hardware.

I know the latest generation iPhones don't have those, and I think that's the right decision, but it's still disappointing for older-gen users.

reply
Aerbil313
14 days ago
[-]
You can associate a location schedule with Focuses, which can include Silent mode as a filter. Also you can set shortcuts to automatically run when you enter a physical location.
reply
hecanjog
14 days ago
[-]
It appealed to me since the way I block distractions is easy for me to unblock them, too. (like HN, I unblocked it to look for commentary on the bitbucket outage and now I'm reading random articles)

If unblocking via software is easy too, this doesn't really work, but I could see giving the physical tag to a friend or leaving it somewhere in a different building causing enough friction for me to reconsider if I really want to go to the effort just to look at some news headlines.

reply
yieldcrv
14 days ago
[-]
what I want is social screentime approval

on iphone, the built in screentime app is just a face id approval or your pin code, but what if instead you had to request approval and your friends on FindMy were the only people that could approve, by consensus

reply
kojeovo
14 days ago
[-]
I think its so that you can't easily toggle them off by using the phone software. for example, you are trying to get work done so you set two up: a focus one by your desk, another somewhere else where you have to get up. so you have to get up and walk over to the 2nd one to turn off the focus mode
reply
PaulHoule
14 days ago
[-]
NFC tags cost about 20 cents and they are easy to use, tied to a place, etc.

I've done a lot of thinking about cyberphysical art that used to look like

https://mastodon.social/@UP8/111013706271196029

and now look like

https://bsky.app/profile/up-8.bsky.social/post/3lbqfh7pesc2x

Notably with the QR code on the back I found people didn't understand the branding of the card and had to flip it over to know the affordances it offers which didn't work when the card was stuck to the wall, as in

https://bsky.app/profile/up-8.bsky.social/post/3lbftgz6kok2c

I researched NFC tags as an option here and bought a 100 pack and a Sony FeliCa reader but found the problem of "communicating the affordance is available" was much worse, there's no standard logo (except one that belongs to the banks that they wouldn't give me permission to use) and not much awareness. I was irritated that NFC support is limited in iPads, for instance. So I stuck with QR codes that people understand.

reply
wduquette
14 days ago
[-]
I was wondering that myself. At a guess, you put a tag at each focus location for the kind of focus you do at that location. At your desk, you put a tag that enables your working focus. At your bedside, you put a tag that enables your sleep focus.

Sounds cool but unnecessary.

reply
dingnuts
14 days ago
[-]
necessary for those of us who forget what they're doing whenever they open their phone. The ability to tell my phone "shut up I'm at my desk" without opening it and being confronted with the home screen & notifications (and then forget what I was doing) is a super cool idea.

I have ADHD though

reply
awaseem
14 days ago
[-]
yeah 100% you can totally just use whats built into your phone, there's actually no need for any of these apps.

I found that having this physical deterrent keeps myself accountable, that's kinda the reason I built it and showcased it

reply
barnabee
14 days ago
[-]
For a while I stuck NFC tags on the MagSafe charger/stands in various places (at my desk, by my bed, etc.) to swifch profiles (which can be done just using shortcuts, as others have mentioned).

It worked pretty nicely but in the end I found it not to be all that useful and I’d be frustrated by the profile change as often as I was happy with it.

reply
riso
14 days ago
[-]
The app does allow manually switching of profiles, without NFC tags, but it wasn't clear until I installed the app.
reply
timisthief
14 days ago
[-]
How do I do this?
reply
awaseem
14 days ago
[-]
Yeah lot of feedback on better demos, learning moment for sure!
reply
timisthief
13 days ago
[-]
Couldn’t figure out how to switch profiles without nfc tags even after installing the app. Could you please let me know?
reply
vijucat
14 days ago
[-]
Attach that NFC tag to a 40 kg weight in the other room (and commit to carrying the weight to the phone, not the other way round ;) ), then you might appreciate the value-add. We are very physical creatures.
reply
mikodin
14 days ago
[-]
This is awesome, yay for an open source https://getbrick.app/

I'm curious if you have an NFC tag that you'd recommend or that you like to use?

reply
awaseem
14 days ago
[-]
Yeah there is tags in the app you can buy that just links out to Amazon, just a disclaimer it is an affiliate link.

Otherwise this is what I had around the house: https://www.amazon.ca/gp/product/B075MD13Z7

reply
insane_dreamer
14 days ago
[-]
Very cool; wondering if this could work as a parental control. "screen time" on iOS is fundamentally broken, and something like this would require the child to come to the parent for screen time extensions (if the parent has the NFC chip).
reply
_DeadFred_
14 days ago
[-]
We talked about something like this for parents on HN not long ago. Definitely monetizable.
reply
puttycat
14 days ago
[-]
How is that different from the parent holding the code?
reply
Terr_
14 days ago
[-]
One scenario I can think of: When there's an occasion where you want to give them unlimited time, but you don't want to disclose the code and then later have to reset it to something new. Or you want to delegate permission to a babysitter.

You just give them the doohickey and ask for it back later. (Cloning the NFC tag is a much harder job that remembering a PIN.)

reply
HeatrayEnjoyer
14 days ago
[-]
Not unlike using a TPM to prevent users from copying copyrighted content while still allowing controlled access.
reply
Terr_
14 days ago
[-]
That seems like a rather unfair comparison, tarring "parent won't let child watch movies after bedtime" with the same brush as "international megacorp sabotages hardware you own in profit-seeking paranoia."

Heck, in many jurisdiction the device is owned by the parents anyway, not the kid.

reply
HeatrayEnjoyer
6 days ago
[-]
Nah, it's fair.
reply
linkregister
14 days ago
[-]
Apple Screen Time will occasionally stop blocking applications, allowing the child account to use them without restrictions.

Other drawbacks include only a single period of "down time" per day. There is also an inability to totally block applications; the closest analogue is to set a maximum of one minute for the website or application.

reply
insane_dreamer
14 days ago
[-]
not just occasionally but often, in our experience with multiple phones and iPads. I have 2 kids with devices and have found Screen Time completely useless. It is the right idea in theory but in practice it's broken (I'm guessing no Apple higher ups have young kids that they've tried to use this with.)

Also, besides the resets (and by reset I mean not just time restrictions but content restrictions too), my kid can just bypass it by entering his AppleID password.

reply
baxtr
14 days ago
[-]
There are many YouTube videos for teens on how to bypass ScreenTime. It’s a mess that Apple needs to clean up quickly
reply
linkregister
14 days ago
[-]
For this reason a configuration profile [1] is the only fool proof method. However, I have only used them to deploy permanent content restrictions. I don't know of a way to enable or disable restrictions based on the time of day or a certain duration.

1. https://support.apple.com/guide/apple-configurator-mac/creat...

reply
insane_dreamer
14 days ago
[-]
> enable or disable restrictions based on the time of day or a certain duration

this is what I need

reply
r0fl
14 days ago
[-]
Screen time blocks are terrible

I use them myself to limit some websites that waste my time

It is way too easy to click on 1 more minute, or 15 mins or ignore for the day

The only way to really block sites is to add them as adult websites and turn on parental controls

But can’t do that with apps

reply
compootr
14 days ago
[-]
I was intrigued by brick, now this, and can't use either. is there seriously no android app like these? :(
reply
netsharc
14 days ago
[-]
Tasker has NFC reading capabilities and is programmable to do stuff when it detects an NFC ID, I don't know if it can lock the phone though (there's an app called Lock My Phone, and Tasker has the ability to cause apps to take some actions, but I don't know if both can be combined).

E.g. I have 2 NFC tags on my desk, when Tasker detects one of them, it calls a HTTP URL of a PHP script on my NAS, the script tells my Hue Bridge to switch on a Hue-enabled power socket (into which my monitor and speakers are plugged), and then the script sends a Wake-On-LAN packet to my desktop PC. The other one turns off that Hue-enabled power socket (I put my computer into sleep separately).

reply
high_priest
14 days ago
[-]
ScreenZen works great. One would have to convince the dev to include NFC support.
reply
awaseem
14 days ago
[-]
Yeah I think the reason is the family activity on iOS is so easy to build around. I'm really sorry I don't own an android phone or have time to port it :(
reply
yard2010
14 days ago
[-]
...on the other hand, it's open source so everybody can port this themselves!
reply
compootr
13 days ago
[-]
afaik swift doesn't port well to android but I'm a dumbass in regards to mobile apps
reply
jwineinger
14 days ago
[-]
I have occasionally wanted to trigger location-specific behavior on my kid's devices, like turning the wifi off when in their bedroom. This feels broadly in the category to me.
reply
Terr_
14 days ago
[-]
Doesn't that mean you'd also need to somehow disable mobile data, and possibly calls as well if you don't want them phoning their friends late at night?

Might be easier to insist that phones charge overnight in some parentally-observable central area... Though I suppose they might use them for alarm clocks.

reply
inerte
14 days ago
[-]
Device could be a tablet without cellular.

Anyway, my son has a phone (hand down from me 5 years ago) without cellular.

reply
dylan604
14 days ago
[-]
Couldn't you do this with your router/firewall? Of course, this would mean managing devices by MAC instead of DHCP, but one of the wifi routers (maybe a Tomato upgrade) allowed designating blocks of time to allow/deny WAN access
reply
brianmaurer
14 days ago
[-]
Very cool! I was about to pay $50 to do this with Brick. What's the best way to support the project?
reply
brianmaurer
14 days ago
[-]
Saw there's a "Support Us" option in the app for $2. Will do that!
reply
awaseem
14 days ago
[-]
That is so kind! Feel free to share it around. Appreciate the support!
reply
brianmaurer
14 days ago
[-]
Ofc. Not sure if this was inspired by the thread on non-distracting products, but you could try plugging over there too [0]. Hope you're enjoying the HackerNews high today

[0]: https://news.ycombinator.com/item?id=42780953

reply
grjj
5 days ago
[-]
Love this but it doesn't seem to work as I had hoped. I have 140 apps blocked in the profile but it appears only 15 actually blocked on my phone. Is there an app limit to how many can be blocked?
reply
GOATS-
14 days ago
[-]
It would've been nice to see what the apps looks like when they're blocked.
reply
awaseem
14 days ago
[-]
Yeah 100% gonna update the demos, thank you for the feedback!
reply
Unearned5161
14 days ago
[-]
Neat implementation! Big fan of integrating more NFC into apps. There's something satisfying and reassuring about the physicality of it all.

I'll add a vote to whoever has the time to port it over to android =)

reply
amanda99
14 days ago
[-]
I'm finding that scanning NFC tags is pretty slow with iPhone. There's this automatic flow that's pretty cumbersome and slows me down. Then when it fails there's some annoying animation. This is with the Yubikey authenticator app.

Are you finding anything similar? Is it not annoying to be scanning these all the time?

reply
awaseem
14 days ago
[-]
Yeah I also find Ghost scans happen, it happens where I try to scan a tag and it says something has been scanned even though I'm no where close to the tag. I think its an issue with NFCReader in iOS
reply
whatsthatabout
14 days ago
[-]
Cool idea, wanted to try it out but it's not available in my country. Any reason for this? :)
reply
awaseem
14 days ago
[-]
No reason, just messed up the listing haha. I've had a few people reach out and I'm going to open it this weekend!
reply
Tepix
14 days ago
[-]
Great, thanks
reply
atVelocet
14 days ago
[-]
So this is just a wrapper for Automations and Profiles (or how Apple calls it: Focus).

But i like the idea to make such features accessible to the everyone and not only people who geek out on their phone.

As others pointed out you should implement qr codes which would make it even more usable.

reply
awaseem
14 days ago
[-]
Yeah absolutely, I went with the profiles logic switch so I can add other forms of activations for blocking and unblocking, like QR codes, timers, etc...
reply
nozzlegear
14 days ago
[-]
Neat! Any idea if it'd be possible to make this work with macOS as well? I don't think Macs have NFC, but they do sync things like Do Not Disturb states between iOS and macOS.
reply
awaseem
14 days ago
[-]
I can look into it, I tried to find a way to trigger Focus modes on iOS a profile being active and it seems they only allow you to read the state and no write or update it
reply
filoleg
14 days ago
[-]
I might be misreading what you are asking, but I just went into Shortcuts app and tried creating a new one, and there are both “Get Current Focus” and “Set Focus” actions.

Is this what you were looking for? “Set Focus” allows setting any focus mode (including custom ones, you can see one in my screenshot) on/off. And if you choose “on”, there is an additional conditional afterwards (until manually turned off/until time/until leaving location/until a calendar event ends).

Here is a screenshot of how it looks (https://ibb.co/R6gdRq4).

reply
awaseem
14 days ago
[-]
Yeah I can't find a clear way to do this from Swift and APIs apple exposes. I can be very wrong though and just didn't dig hard enough
reply
filoleg
14 days ago
[-]
Ah, you were trying to do it through Swift/within an actual app, thanks for clarifying.

I think you are right, I couldn’t find a way to directly set status from within Swift, but there is a somewhat janky workaround I thought of. You should be able to have Shortcut hooks within your app (i.e., once the shortcut is triggered, it triggers an action within your app; or, inversed, have your app trigger a shortcut), and then have an official companion Shortcut for your users they can install with a single click. There might be other valid approaches, but they all seem to involve Shortcuts in some way.

However, it is definitely a suboptimal approach, compared to just doing it all within the app (which I couldnt find a way to do either).

reply
awaseem
14 days ago
[-]
Maybe they'll add it in the next wwdc!
reply
cmauniada
14 days ago
[-]
Calgary??

Love to see it! Great product!

reply
awaseem
14 days ago
[-]
COW TOWN
reply
smartis2812
14 days ago
[-]
Looking forward to use it. But its currently not available in my country.

Previous comments show, DEV is already working on it. :)

reply
fuddle
14 days ago
[-]
It would be nice to see a demo of the app working in the real world with an nfc tag, not just an app recording.
reply
awaseem
14 days ago
[-]
I have a recording on the site here: https://youtu.be/70C7L0T1VVY.

That is my real phone with me scanning a tag, I'm just using screen studios new phone recording feature

reply
amelius
14 days ago
[-]
Yeah, I have no idea how these tags are actually being used, let alone why they could be useful.
reply
hailruda
14 days ago
[-]
NFC tags can be scanned using a phone. An app on the phone can then detect the action and act accordingly. The phone can differentiate between different tags.

I use an NFC tag to lock the house using Home Assistant.

reply
amelius
14 days ago
[-]
OK. Why not just tap "lock the house" on your screen? Or use a voice interface (which requires zero extra hardware)?
reply
phist_mcgee
14 days ago
[-]
I like the hardware aspect, it feels very intentional and deliberate for context switching.
reply
dperrin
14 days ago
[-]
Cool idea! Any chance you’ll make it available in New Zealand? I’d love to try this out.
reply
pvg
14 days ago
[-]
I might be missing it on your page but can't seem to find the link to your source repo.
reply
awaseem
14 days ago
[-]
That is totally my fault. Repo here: https://github.com/awaseem/foqos
reply
aucisson_masque
14 days ago
[-]
Impressive. I'm sure it will help tons of people dealing with lack of focus.
reply
arjvik
14 days ago
[-]
This is really cool! I know developing apple apps is expensive, how can I donate?
reply
awaseem
14 days ago
[-]
Thats so kind! No need to donate, just use the app and give me any feedback. I love developing things like this!
reply
vednig
14 days ago
[-]
This is awesome, now I can switch between work and home with just a tap.
reply
awaseem
14 days ago
[-]
Yeah exactly! I use this everyday for work and gym.
reply
uhlhosting
13 days ago
[-]
Add more regions for the app, maybe european countries too?
reply
tzm
13 days ago
[-]
This is a fantastic way to lock down an app for kids.
reply
Dansvidania
14 days ago
[-]
Is it not available in the EU?
reply
awaseem
14 days ago
[-]
Not yet, but working on it to get it out! Appreciate the feedback
reply
dmje
14 days ago
[-]
Yes please, have you got an alert email / feed for this?
reply
s_k_
14 days ago
[-]
cool, but can't use it : ( since it's not available in every country
reply
awaseem
14 days ago
[-]
Yup working on it. Totally my fault hope to get it fixed this weekend!
reply
chrisbrandow
14 days ago
[-]
would it be possible to trigger profiles with Bluetooth Beacons?
reply
awaseem
14 days ago
[-]
Woah never heard of these? Gonna check them out...
reply
1f60c
14 days ago
[-]
Why isn't the app available in the Netherlands?
reply
parkersweb
14 days ago
[-]
Would be great if it was available in the UK too!
reply
phindmarsh
14 days ago
[-]
Seems to be unavailable in New Zealand too.
reply
ajoseps
14 days ago
[-]
I use the brick app: https://getbrick.app/, and it works pretty well, but they have this weird bug where selecting certain apps on a block list crashes the app. They have a pop-up indicating that it's some apple-related bug, which I find kind of hard to believe. Is this something that also happens in your app?
reply
awaseem
14 days ago
[-]
I haven't noticed this on my personal use. It does seem like they use the family picker activity built into iOS. So maybe the issue is here as well.
reply
ajoseps
14 days ago
[-]
It doesn't happen to every search. For me personally, if I try to search for apps starting with "r", it tends to crash. Not sure if it's related to the number of applications it needs to search for that match the prefix (for this case I was trying to block reddit).
reply
awaseem
14 days ago
[-]
Maybe its the list of app you have on your device? For me its fine but changes as the list is to long? Just a random guess though
reply
realityloop
14 days ago
[-]
App not available in my country (Australia)
reply
awaseem
14 days ago
[-]
Yeah sorry about that, I messed up the listing and I'll work to get it out to more countries
reply
lucasacosta_
13 days ago
[-]
I'll be waiting for it over here in Argentina too!
reply
dsp_person
14 days ago
[-]
I noticed the trend of "Made with (Love emoji)", but has anyone tried Made with Hate or other emotions?
reply
awaseem
14 days ago
[-]
There was some hate when digging through iOS dev docs, I'm not a Swift UI dev, I've mostly done JS/TS stuff (maybe thats telling of my poor code)
reply
franky47
14 days ago
[-]
I’ve seen "made with <coffee emoji>" or the less caffeinated "made with <water emoji>"
reply
n0t3ths81
14 days ago
[-]
Not available in Spain. :(
reply