Initial pass at app markup