[Framework]: Vike
还没有人认领这个 Issue。
- 主要语言
- JavaScript
- 星标
- 11.8k
- 派生
- 7.9k
- 平均合并
- 1 天 11 小时
- 30 天内合并 PR
- 11
描述
Name
Vike
Homepage
Install instructions
vike.dev/new => select "React" => scaffolds a Vike app that uses vike-react
npm create vike-core@latest => scaffolds a Vike app that uses a bespoke React integration
Is your framework open source?
Well maintained
- Bugs are quickly fixed
- Feature requests are triaged quickly (either put on the roadmap with prioritization, declined, or quickly implemented)
- CHANGELOG.md
- Vike team
Active community
Clear onboarding
Ecosystem compatibility
Vike provides unmatched flexibility regarding ecosystem integration, see Developer Experience section below.
Self-hosting option
All deployment strategies:
- Static host (using pre-rendering)
- Self-hosting
- Serverless/edge deployment (Cloudflare, Vercel, Netlify, ...)
- ISR (via vite-plugin-vercel)
Users can choose between zero-config integration (via Universal Deploy), or manual deployment/server integration (via renderPage()).
Developer Experience
Data fetching:
- Next-gen RPC via Telefunc (we're the authors of Telefunc)
- As well as "old school" page-level data fetching via
+data(which is sufficient for SSG).
All render modes:
- SSR
- Pre-rendering aka SSG. (First-class support, see
+prerender.) - SPA/MPA. (First-class support, e.g. client-only data fetching which is a common blocker with other frameworks.)
Polished details:
- Automatic frontend deployment synchronization
- Low-level i18n API, for full control over i18n
- Route Functions
- Route Guards
- Advanced Base URL support (Base URL for static assets != Base URL for the SSR server)
- URL rewriting
- User can seemlessly use
hitory.pushState() - Opt-in support for legacy browsers
- Zero-config interop, e.g. Tauri
- Infinite loop guards
- Errors & warnings meticulously crafted to be helpful
- React component stack injected into stack trace
- ...
Flexibility & Stability
Vike's main USPs are flexibility and stability.
By design:
- Vike is an agnostic core (and therefore stable), with low-level hooks that can support an unprecedented amount of stacks, tools, and new paradigms.
- Large suite of hooks.
By prioritization, for example:
- We treat blockers with high priority. (When users report they cannot achieve something, we care a ton to unblock them.)
- We enable users to access internals as temporary escape hatch.
[!NOTE]
Vike caters to companies that need extra flexibility and/or stability, see Vike use cases.
User Experience
Fast UIs:
- Progressive enhancement via HTML Streaming
- The developer has precise control over data lifecycle (e.g.
+onCreateGlobalContextand+onCreatePageContext) for performance maximization. - Prefetching
- Preloading
- Waterfall detection
Compatible with our future vision for React
Full support for React 19's HTML Streaming:
- Both Node.js and Web Streams
- Progressive Rendering
- Powered by react-streaming (for minimal boilerplate & config, making
vike-reactandvike-react-rsca lot smaller and simpler) - No known issues (both Vike's side and
react-streaming's side)
Vite recently landed support for Server Components (@vitejs/plugin-rsc). Vike has experimental Server Components support via vike-react-rsc.
[!NOTE]
See also:
- Our design for progressive Server Components adoption
- React RFC #219: injectToStream (important for wide adoption of React 19's HTML Streaming)
- We were RSC early adopters
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
该 issue 提供了 Vike 链接和 onboarding 细节,但没有指出任何 repository 文件、测试或具体的文档位置。首先将此提交与现有的 framework 文档结构进行比较,并确认此类条目应放在哪里。完成的标准是,在 maintainer 接受的情况下,添加一项经过同意并审核、用于描述 Vike 的内容。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- javascript, react
- 领域
- documentation
- Issue 类型
- 文档
- 难度
- 5/5
- 预计耗时
- 一周以上
- 活跃度
- 停滞
- 描述清晰度
- 需要澄清
- 新手友好度
- 25/100