celest
celest copied to clipboard
Knowing when some function is used in frontend/backend code.
When I have some function that's used in both the frontend and the backend, it may need to know if it's running in the client (my_app/lib/) or in the Celest dir (my_app/celest/).
Just knowing this fact is important, but it also helps me to choose between using celest or celestBackend when I want to check the CelestEnvironment.
String whereAmI() {
if (celest.running == CelestRunning.clientCode) {
if (celest.currentEnvironment == CelestEnvironment.local) return "Client code, local";
if (celest.currentEnvironment == CelestEnvironment.production) return "Client code, prod";
}
else if (celest.running == CelestRunning.serverCode) {
if (celestBackend.currentEnvironment == CelestEnvironment.local) return "Celest code, local";
if (celestBackend.currentEnvironment == CelestEnvironment.production) return "Celest code, prod";
}
}
Interesting use case! Hmm.. I will need to give this one some thought.
@marcglasberg One trick you could do right now is check if you're running in Flutter:
const runningInFlutter = bool.fromEnvironment('dart.library.ui');
Nice trick!