[Framework]: Vike
Personne n'a encore pris cette issue.
- Langage dominant
- JavaScript
- Étoiles
- 11.8k
- Forks
- 7.9k
- Merge moyen
- 1 j 11 h
- PR mergées (30 j)
- 11
Description
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
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
L’issue fournit des liens vers Vike et des détails d’onboarding, mais ne cite aucun fichier du dépôt, aucun test ni aucun emplacement concret dans la documentation. Commencez par comparer cette proposition à la structure existante de la documentation du framework et confirmez où de telles entrées doivent être placées. Le travail sera terminé lorsqu’un ajout convenu et relu décrivant Vike aura été accepté par les maintainers.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- javascript, react
- Domaine
- documentation
- Type d'issue
- Documentation
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Activité
- À l'abandon
- Clarté
- À clarifier
- Accessibilité débutants
- 25/100