Considering your current skill level and understanding of web development, you may have an easier time figuring it all out if you just stick with HTML, CSS, and JS for building out websites and web applications for right now. Trying to learn Kotlin and associated web technologies on top of the other stuff will be extremely difficult. You’ll likely need to learn some subset of JS anyway to manage integrations and read documentation.
The web development community is much
larger in the JS world than Kotlin right now and you have a much easier time finding resources and help sticking with JS.
JS can feel frustrating at times but there are helpful libraries out there that provide helpful structure:
1. RamdaJS - a utility library for functional programming styles. https://ramdajs.com
2. SanctuaryJS - also a utility library for functional programming styles but more strict and has optional run-time type checking. https://sanctuary.js.org
3. Xstate - a state machine library. This is amazingly
helpful for frontend work. I strongly recommend this over other state management tools like Redux. Note that you should pair it with something like React ContextAPI for state sharing
functionality in a component-based framework. https://xstate.js.org/docs/
4. SolidJS. A truly reactive frontend framework. It feels like React but has less ad hoc rules, is more performant, and is smaller. I don’t necessarily recommend this for new developers just because the community and tooling isn’t as large though. https://www.solidjs.com