I restrict myself from distractions by disabling hosts via custom rules in my nextdns account. It is enough and free.
1. Remove all social media apps from iPhone 2. Use Opal in deep focus mode to block apps and websites (I can't exit the deep focus mode - but I allow myself a 2 hour window when deepfocus isn't active) 3. Keep my phone inside my bag - out of sight out of mind 4. Remove "tap to wake up" in settings - you'll have to click the side button to see the screen 5. Deleted slack and email - was hesitant about missing important notifications, but decided to try for a week and realized it made no difference to my work
You want to spend more time scrolling on twitter?
Fine, muster up the courage to ask your wife for it while she preps school lunches for the kids.
Simply use Apple's Screen Time but lock all of the Screen Time settings behind a pin. Have a friend or loved one create the pin and keep it secret from you and voila.
With Screen time you can have an "Always Allowed" list and if you use the "Downtime" setting it doesn't actually let you set limits past a one minute exception per app.
You also have to make sure that the downtime setting is 24 hours of downtime.
*Edit: seems like a lot of people are suggesting the same exact thing.