https://every-layout.dev/
For practice, try dropping React and simply build the layout you want. When you’re happy, rebuild it with React.