Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: vue server component #1

Merged
merged 49 commits into from
May 8, 2024
Merged

feat: vue server component #1

merged 49 commits into from
May 8, 2024

Conversation

hi-ogawa
Copy link
Owner

@hi-ogawa hi-ogawa commented May 6, 2024

Let's see if I can port the same idea from

Demo: https://vue-server-demo.hiro18181.workers.dev

todo

  • jsx
  • sfc
    • non ssr transform to emit vnode
      • how to split two modes in single ssr environment?
        • for now, we can use jsx for server component
        • we can switch ssr/non-ssr with two plugins with exclusive include? (e.g. *.server.vue convention)
    • async setup
    • slot
    • import
  • app context
    • global registration
    • component-level provide/inject (they need to be client components like react context)
  • deserialize
  • client reference
    • deserialize slots at client boundary
  • builtins https://vuejs.org/api/built-in-directives.html
    • sfc just compiles them out?
  • demo
    • basic
    • convention
      • default client component. opt-in server via *.server.vue?
    • shiki on server component
    • sfc server component
    • client side navigation
    • hmr
      • client sfc
      • server sfc
    • server action
  • test / ci
  • move it to https://github.com/hi-ogawa/vite-plugins?

@hi-ogawa hi-ogawa changed the title chore: vue vnode serialization chore: vue server component May 7, 2024
@hi-ogawa hi-ogawa changed the title chore: vue server component feat: vue server component May 7, 2024
@hi-ogawa hi-ogawa marked this pull request as ready for review May 7, 2024 09:12
@hi-ogawa hi-ogawa merged commit 9ae7025 into main May 8, 2024
1 check passed
@hi-ogawa hi-ogawa deleted the chore-vue-server branch May 9, 2024 10:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant