Functional Core, Imperative Shell

Recently, I’ve read amazing article called “Application-as-a-Function Thinking” ( and I just wanted to share it everywhere I can.

It is about thinking about mobile app architecture but it is a way more in philosophical terms. So, if you are feeling like “yeah, I am feeling that “functional” approach is very cool” you should read this and the another one from this author (also really cool):

Why I extracted the “Functional Core, Imperative Shell” to the title? Because I think it is very sound term, I like it. That’s what I feel when I’m working with MobX on Flutter apps. As a guy with UI focus (I mean, all of frontend guys) we cannot be 100% functional, but: UI = f(state). ❤

If you liked the article, please clap, it helps. :)

Mobile developer (Android, iOS, Flutter), AI and GameDev enthusiast.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store