Registry /
web-framework / vite-plugin-solid-pages
Install & Compatibility
Where this runs
tested against v? · npm install
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
muslnode 18–223 runs
build_error
glibcnode 18–223 runs
build_error
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
default
✓ import solidPages from 'vite-plugin-solid-pages'
✗ const solidPages = require('vite-plugin-solid-pages')
ESM-only; CommonJS require will fail as the package has no default export in CJS
virtual:pages
✓ import routes from 'virtual:pages'
✗ import routes from 'vite-plugin-solid-pages/virtual:pages'
virtual:pages is a virtual module, not a file path. It must be imported directly, without any prefix
virtual:route-info
✓ import routeInfo from 'virtual:route-info'
✗ import routeInfo from 'vite-plugin-solid-pages'
virtual:route-info is a separate virtual module providing route metadata; do not import from the package itself
Sets up the Vite plugin with file-based routing from src/pages, includes TypeScript declarations, and mounts routes via @solidjs/router.
// vite.config.ts
import { defineConfig } from 'vite'
import solidPlugin from 'vite-plugin-solid'
import solidPages from 'vite-plugin-solid-pages'
export default defineConfig({
plugins: [
solidPlugin(),
solidPages({
dir: 'src/pages',
extensions: ['tsx'],
})
]
})
// src/env.d.ts
/// <reference types="vite/client" />
/// <reference types="vite-plugin-solid-pages/client" />
// src/index.tsx
import { Router } from '@solidjs/router'
import { render } from 'solid-js/web'
import routes from 'virtual:pages'
render(() => (
<Router>
{routes}
</Router>
), document.getElementById('root')!)
Errors
Common errors & fixes
Module not found: Can't resolve 'virtual:pages' in '...'
Missing or incorrect TypeScript declarations for virtual modules.
fixAdd /// <reference types="vite-plugin-solid-pages/client" /> to your env.d.ts file.
TypeError: Cannot read properties of undefined (reading 'forEach')
routes from virtual:pages is undefined because the virtual module was not generated (e.g., no pages in configured directory).
fixEnsure the pages directory (default src/pages) contains at least one route file with valid extension.
Error: @solidjs/router is not installed
Missing peer dependency @solidjs/router.
fixRun 'pnpm add @solidjs/router' (version ^0.16.1).
SyntaxError: Unexpected token 'export'
ESM syntax used in a CommonJS context (e.g., using require() to import the plugin).
fixUse ESM imports (import solidPages from ...). If you must use require(), use dynamic import: const solidPages = (await import('vite-plugin-solid-pages')).default Audit
Dependencies
@solidjs/routerrequiredRequired peer dependency for routing; must be installed separately, version ^0.16.1
viterequiredRequired peer dependency; version ^7.0.0 || ^8.0.0