Implementation:Infiniflow Ragflow PackageLock Dependencies
| Knowledge Sources | |
|---|---|
| Domains | Frontend, Build_System |
| Last Updated | 2026-02-12 06:00 GMT |
Overview
Concrete NPM dependency lock file that pins exact versions for all frontend packages used by the RAGFlow web application.
Description
The package-lock.json file is a 29,393-line NPM lockfile that pins the exact resolved versions, integrity hashes, and dependency trees for all direct and transitive dependencies. Key dependency families include React 18, Ant Design 5, shadcn/ui components, TanStack (React Query, React Table), Zustand for state management, UmiJS as the framework, Vite as the build tool, and numerous document processing libraries.
Usage
This file is automatically consumed by npm install to ensure reproducible builds. It should not be manually edited. Run npm install to regenerate when package.json changes.
Code Reference
Source Location
- Repository: Infiniflow_Ragflow
- File: web/package-lock.json
- Lines: 1-29393
Signature
{
"name": "ragflow-web",
"lockfileVersion": 3,
"packages": {
"": { "dependencies": { ... }, "devDependencies": { ... } },
"node_modules/react": { "version": "18.x.x" },
"node_modules/antd": { "version": "5.x.x" },
// ... thousands of pinned packages
}
}
Import
# Consumed by npm, not imported in code
npm install # Uses package-lock.json for deterministic installs
I/O Contract
Inputs
| Name | Type | Required | Description |
|---|---|---|---|
| — | — | — | Lockfile; consumed by npm CLI |
Outputs
| Name | Type | Description |
|---|---|---|
| node_modules/ | directory | Installed packages with pinned versions |
Usage Examples
cd web
npm install # Install exact versions from lock file
npm ci # Clean install from lock file (CI/CD)