functional layout (js only)