framework-agnostic framework sounds weird :)