explaingit

vikejs/vike

5,727TypeScriptAudience · developerComplexity · 3/5Setup · moderate

TLDR

Vike is a composable full-stack JavaScript/TypeScript web framework that lets you pick your own UI library (React, Vue, Solid) and tooling rather than locking you into fixed defaults, similar to Next.js or Nuxt but more flexible.

Mindmap

mindmap
  root((Vike))
    Framework Core
      Full-stack apps
      TypeScript support
      Composable design
    UI Integrations
      React plugin
      Vue plugin
      Solid plugin
    Project Structure
      Core npm package
      Project scaffolding
      Docs site source
    Flexibility
      Custom data fetching
      State management choice
      Deployment control
    Community
      Changelog
      Contribution guide
      vike.dev docs
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Build a full-stack web app with React or Vue without being locked into Next.js or Nuxt conventions.

USE CASE 2

Assemble a custom front-end stack by mixing your preferred UI library, data-fetching, and state tools.

USE CASE 3

Scaffold a new JavaScript or TypeScript web project with fine-grained control over the architecture.

USE CASE 4

Migrate an existing app away from an opinionated framework to something more flexible and composable.

Tech stack

TypeScriptJavaScriptReactVueSolidViteNode.js

Getting it running

Difficulty · moderate Time to first run · 30min

Use create-vike to scaffold a new project. Choose your UI library (React, Vue, or Solid) and install the matching Vike integration package. Full docs at vike.dev.

In plain English

Vike is a web framework for building full-stack applications with JavaScript or TypeScript. It is positioned as an alternative to Next.js (for React) and Nuxt (for Vue), and is designed to give developers more control over how their application is structured and deployed. The core idea behind Vike is that it is composable, meaning you assemble your stack from individual pieces rather than accepting a fixed, opinionated set of defaults. If you want to add React, Vue, or Solid as your UI layer, you install a corresponding Vike integration package for that library. The same applies to state management tools and data-fetching libraries. This means the framework adapts to different project needs rather than enforcing a single way of doing things. This repository is the main monorepo for the project. It contains the core vike package (published to npm), a helper package called create-vike-core used for scaffolding new projects, and the source files for the documentation website at vike.dev. Related integration packages for React, Vue, and Solid each live in their own separate repositories under the vikejs organization on GitHub. The README itself is brief and mostly contains links to the changelog, contribution guide, and documentation. For a fuller explanation of what Vike does and how to get started, the project directs readers to the vike.dev website rather than covering everything in the repository README.

Copy-paste prompts

Prompt 1
I want to build a full-stack app using Vike with React. Walk me through setting up routing, data fetching, and server-side rendering step by step.
Prompt 2
How does Vike differ from Next.js in how it handles page routing and data loading? Show me a side-by-side example.
Prompt 3
I am using Vike with Vue. How do I add a state management library like Pinia and fetch data on the server before rendering a page?
Prompt 4
Explain how Vike's composable plugin system works and show me how to swap out the UI library from React to Solid in an existing Vike project.
Prompt 5
What deployment options does Vike support and how do I deploy a Vike app to a Node.js server versus a serverless platform?
Open on GitHub → Explain another repo

← vikejs on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.