Structuring the frontend