(feat) add basic app functionality