basic functionality is ready