simplified and added support for composer