I love React and use it everyday, and at this point would consider myself a strong React dev. I am comfortable with how it works internally in terms of the virtual dom and reconciliation, synthetic events, and the component lifecycle. For the first year of learning I took a bunch of courses on Frontend Masters, and learned about advanced patterns (compound components, state reducers), and how to test using Jest and the React Testing Library. After that I decided to rebuild Formik, and Downshift (two libraries by react experts Kent Dodds, and Jared Palmer), to get a better understanding of how they leveraged React. I created both using my own logic and integration of RxJS observables because they were also something I had interest In, and going forward that is how I plan on learning anything new because it was by far the most effective way. The other was learning functional programming, and once I had the realization that React components are just functions, the structure behind how render props were exposed, and patterns like higher order components made way more sense and I found myself becoming way more expressive with React.
I use React for all of my client work, so I get to use it in new ways everyday, and I am still working on personal projects with it all the time for the sake of learning more about it. I recently build a library that implements drag and drop that works on touch and with keyboards because all of the ones available either did not suit my needs or had opinions about how components needed to be styled. I didn't realize at the time how complex drag and drop actually is at the time by I did it, and I learned alot about the DOM API, RxJS, and even some more about how react batches calls to setState in event handlers in the process.
Any chance to take on bigger challenges with React is something that I would jump on in a heartbeat.