functional spa-style app js modules