In every project I work I end up needing the same bunch of functions. This is just a repo which contains them so I can easily install them and import them.
Some shorthand costants for React Native.
import{isIOS,isAndroid,ANDROID_VERSION,IOS_VERSION}from"osp-toolkit";
Although hooks are not my favorite, sometimes there are useful patterns.
import{useBoolean}from"osp-toolkit";functionmyComponent(){const[isFoo,fooOn,fooOff]=useBoolean();}
Invariant checks allow to assure the state of your app, by default they crash on releases so you better have error tracking via Sentry or similar set up.
import{invariant,nullthrows}from"osp-toolkit";invariant(myVar==="foo","myVar does not match, this crashes");nullthrows(myVar,"myVar is null, this is crashes");
A simple sleep function for async contexts
import{sleep}from"osp-toolkit";asyncfunctionfoo(){awaitsleep(500);}
I love logging to console, so there are a couple utilities inserted on the global namespace that make your logs a little easier to visually parse
marker(`1`)// Outputs 🔷🔷🔷🔷🔷🔷🔷🔷🔷🔷🔷🔷 MARK ${i} 🔷🔷🔷🔷🔷🔷🔷🔷🔷🔷🔷🔷🔷🔷 to consoleconstmyObj={ ...// some complex obj}debug(myObj)// Will pretty print an object to the RN console