basic functionality for compose push