inclusion-vapor

Component Interoperability based on vapor

44
0
44
17
TypeScript
public

🫶 Inclusion Vapor

Component Interoperability based on vapor

About this project

This Research & Development project is for running various components in vapor.

This project started with my day job project and was inspired by vue-jsx, which was announced at VueConf China 2024.

[!WARNING]
This is WIP 👷, so don’t use in production

This project try to work whether interoperability can be provided between components of different frameworks on vapor.

inclusion-vapor

🚂 Current working status:

Currently, I’m working on svelte vapor, which is necessary for my day job, so that’s a priority.

  • react-vapor (PoC Done): react for vapor
  • svelte-vapor (PoC Done): svelte for vapor,

🍭 Playground

pnpm build # build the packages
pnpm play # start playground

⚛️ react-vapor

Based on React v18 latest

🎩 svelte-vapor

Based on Svelte v4 (maybe v3 compatible)

✅ TODO

react-vapor

svelte-vapor

    • {#if} / {:else} /
    • Binding <select>
    • class:name
    • style:property
      • onMount
      • onDestroy

🛣️ Roadmap

This is the roadmap for inclusion-vapor. Currently, we are focusing on day job project, so the roadmap only includes svelte-vapor. If needed, we will continue implementing react-vapor, but We hope to develop through contribution of the community.

This roadmap depends on vapor project so that the milestones may change.

Milestone 1: svelte-vapor basic implementation

  • Goal: To be able to use svelte-vapor instead of svelte 3 and 4 as experimental
  • Key Tasks:
    • Basic implementation for svelte 3 and 4 features in day job project (see more task details here

Milestone 2: svelte-vapor advanced implementation

  • Goal: To be able to use svelte-vapor instead of svelte 5, 3, and 4
  • Key Tasks:

💖 Credits

This project is supported by:

And Inspired by:

Thank you! ❤️

©️ License

MIT

v0.3.3[beta]