Simple React, SolidJS, Svelte, & Vue counter components with state & shared state in Astro 2.8.3. Styled with TailwindCSS. Added an AlpineJS counter for fun.
Usage(npm, pnpm, bun, yarn):
npm i
npm run dev
npm run build
Feel free to use this as a template if you'd like to weave together multiple frameworks, or if you're incrementally updating your site from one framework to another. For my purposes, it was intended to improve my understanding of state and to learn interoperability in Astro.
Check out the components @ https://github.com/MaDrCloudDev/astroSharedState/tree/master/src/components if you'd like to compare the relative size and ease of programming these simple counters in each framework. You'll see why Svelte is so popular.