Show HN: I made a app that uses NFC as a physical switch to block distractions

foqos.app

167 points by awaseem 14 hours ago

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

layer8 13 hours 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.

  • _tariky 11 hours 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.

  • whycome 7 hours 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.

  • awaseem 9 hours 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

insane_dreamer 10 hours 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).

  • _DeadFred_ 8 hours ago

    We talked about something like this for parents on HN not long ago. Definitely monetizable.

  • puttycat 10 hours ago

    How is that different from the parent holding the code?

    • Terr_ 7 hours 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.)

      • HeatrayEnjoyer 7 hours ago

        Not unlike using a TPM to prevent users from copying copyrighted content while still allowing controlled access.

        • Terr_ 5 hours 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.

    • linkregister 10 hours 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.

      • insane_dreamer 9 hours 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.

        • baxtr 8 hours ago

          There are many YouTube videos for teens on how to bypass ScreenTime. It’s a mess that Apple needs to clean up quickly

          • linkregister 7 hours 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...

            • insane_dreamer 5 hours ago

              > enable or disable restrictions based on the time of day or a certain duration

              this is what I need

    • r0fl 8 hours 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

tigereyeTO 12 hours 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.

  • enoch_r 12 hours 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.

  • runjake 8 hours 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...

  • hecanjog 12 hours 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.

    • yieldcrv 11 hours 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

  • PaulHoule 11 hours 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.

  • kojeovo 12 hours 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

  • barnabee 7 hours 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.

  • wduquette 12 hours 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.

    • dingnuts 12 hours 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

  • awaseem 12 hours 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

  • riso 12 hours ago

    The app does allow manually switching of profiles, without NFC tags, but it wasn't clear until I installed the app.

    • awaseem 12 hours ago

      Yeah lot of feedback on better demos, learning moment for sure!

mikodin 14 hours 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?

brianmaurer 10 hours ago

Very cool! I was about to pay $50 to do this with Brick. What's the best way to support the project?

  • brianmaurer 10 hours ago

    Saw there's a "Support Us" option in the app for $2. Will do that!

    • awaseem 9 hours ago

      That is so kind! Feel free to share it around. Appreciate the support!

jwineinger 12 hours 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.

  • Terr_ 7 hours 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.

    • inerte 3 hours ago

      Device could be a tablet without cellular.

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

  • dylan604 8 hours 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

compootr 13 hours ago

I was intrigued by brick, now this, and can't use either. is there seriously no android app like these? :(

  • netsharc 12 hours 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).

  • high_priest 13 hours ago

    ScreenZen works great. One would have to convince the dev to include NFC support.

  • awaseem 13 hours 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 :(

    • yard2010 13 hours ago

      ...on the other hand, it's open source so everybody can port this themselves!

GOATS- 13 hours ago

It would've been nice to see what the apps looks like when they're blocked.

  • awaseem 13 hours ago

    Yeah 100% gonna update the demos, thank you for the feedback!

Unearned5161 13 hours 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 =)

atVelocet 10 hours 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.

  • awaseem 9 hours 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...

whatsthatabout 11 hours ago

Cool idea, wanted to try it out but it's not available in my country. Any reason for this? :)

  • awaseem 9 hours 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!

    • Tepix 7 minutes ago

      Great, thanks

amanda99 13 hours 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?

  • awaseem 12 hours 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

cmauniada 9 hours ago

Calgary??

Love to see it! Great product!

nozzlegear 13 hours 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.

  • awaseem 13 hours 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

    • filoleg 13 hours 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).

      • awaseem 12 hours 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

        • filoleg 12 hours 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).

          • awaseem 8 hours ago

            Maybe they'll add it in the next wwdc!

fuddle 13 hours 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.

  • awaseem 12 hours 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

  • amelius 13 hours ago

    Yeah, I have no idea how these tags are actually being used, let alone why they could be useful.

    • hailruda 12 hours 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.

      • amelius 12 hours ago

        OK. Why not just tap "lock the house" on your screen? Or use a voice interface (which requires zero extra hardware)?

        • phist_mcgee 8 hours ago

          I like the hardware aspect, it feels very intentional and deliberate for context switching.

arjvik 10 hours ago

This is really cool! I know developing apple apps is expensive, how can I donate?

  • awaseem 9 hours ago

    Thats so kind! No need to donate, just use the app and give me any feedback. I love developing things like this!

vednig 11 hours ago

This is awesome, now I can switch between work and home with just a tap.

  • awaseem 9 hours ago

    Yeah exactly! I use this everyday for work and gym.

s_k_ 8 hours ago

cool, but can't use it : ( since it's not available in every country

  • awaseem 8 hours ago

    Yup working on it. Totally my fault hope to get it fixed this weekend!

Dansvidania 9 hours ago

Is it not available in the EU?

  • awaseem 9 hours ago

    Not yet, but working on it to get it out! Appreciate the feedback

    • dmje 9 hours ago

      Yes please, have you got an alert email / feed for this?

chrisbrandow 10 hours ago

would it be possible to trigger profiles with Bluetooth Beacons?

  • awaseem 9 hours ago

    Woah never heard of these? Gonna check them out...

1f60c 13 hours ago

Why isn't the app available in the Netherlands?

  • parkersweb 10 hours ago

    Would be great if it was available in the UK too!

  • phindmarsh 12 hours ago

    Seems to be unavailable in New Zealand too.

ajoseps 12 hours 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?

  • awaseem 12 hours 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.

    • ajoseps 12 hours 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).

      • awaseem 12 hours 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

realityloop 11 hours ago

App not available in my country (Australia)

  • awaseem 9 hours ago

    Yeah sorry about that, I messed up the listing and I'll work to get it out to more countries

dsp_person 12 hours ago

[flagged]

  • awaseem 12 hours 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)

  • franky47 12 hours ago

    I’ve seen "made with <coffee emoji>" or the less caffeinated "made with <water emoji>"