Revert "Custom Directives"

This reverts commit 3b70bd9a3497c13af81e45602f95bcef3b8bb4ef.
Revert "Revert "Custom Directives""

This reverts commit 2814b55e8239dae97cc21ed3117c7cf05de53e43.