Frontend specs

This PR replaces #108