EPEXA is creating a production-quality, general-purpose, community-supported, open-source software ecosystem to allow rapid composition of advanced scientific applications for modern distributed memory heterogeneous platforms. Through application-driven codesign we focus on the needs of irregular and sparse applications that are poorly served by current programming and execution models on modern HPC systems. The key outcome of EPEXA is the Template Task Graph (TTG) programming model and its portable implementation in C++ that has been developed to enable a straightforward expression of the parallelism for algorithms that work on irregular and unbalanced data sets.