Paperless-ngx开发环境极速配置从零到调试的全链路实践【免费下载链接】paperless-ngxA community-supported supercharged document management system: scan, index and archive all your documents项目地址: https://gitcode.com/GitHub_Trending/pa/paperless-ngxPaperless-ngx是一款社区支持的超级文档管理系统能够帮助用户扫描、索引和归档所有文档。本文将为你提供从克隆仓库到前后端调试的完整开发环境配置指南让你快速上手这个强大的开源项目。开发环境准备必要工具安装开始配置Paperless-ngx开发环境前需要确保系统中已安装以下工具GitPython 3.10Node.js 24pnpmuv (Python包管理器)项目克隆首先克隆Paperless-ngx项目仓库到本地git clone https://gitcode.com/GitHub_Trending/pa/paperless-ngx cd paperless-ngx后端开发环境配置后端项目结构Paperless-ngx的后端是一个基于Django的应用主要代码位于src/目录下。核心模块包括文档处理、搜索功能和任务队列等。依赖安装使用uv安装后端依赖# 在项目根目录执行 uv install数据库配置默认情况下开发环境使用SQLite数据库无需额外配置。如果需要使用其他数据库可以修改配置文件paperless.conf。启动后端服务启动Django开发服务器、文档消费者和Celery工作器# 进入src目录 cd src # 启动服务 uv run manage.py runserver \ uv run manage.py document_consumer \ uv run celery --app paperless worker -l DEBUG服务启动后后端API将在http://localhost:8000/api/可用。图Paperless-ngx开发环境仪表板界面前端开发环境配置前端项目结构前端使用AngularJS构建代码位于src-ui/目录。该目录包含了所有前端组件、服务和资源文件。依赖安装使用pnpm安装前端依赖# 返回项目根目录 cd .. # 进入前端目录 cd src-ui # 安装依赖 pnpm install安装Angular CLIpnpm install -g angular/cli启动前端开发服务器pnpm ng serve前端开发服务器默认在http://localhost:4200/运行并自动连接到本地后端API。开发工作流了解Paperless-ngx的推荐工作流有助于更高效地进行开发图Paperless-ngx文档处理推荐工作流主要开发步骤编写代码前端或后端运行测试提交更改构建并验证测试与调试后端测试在src/目录下运行pytest进行后端测试cd src uv run pytest前端测试在src-ui/目录下运行单元测试和端到端测试cd src-ui pnpm ng test pnpm playwright test文档管理功能调试开发过程中可以通过前端界面测试文档管理功能如文档列表、筛选和搜索等图Paperless-ngx文档列表界面构建生产版本前端构建cd src-ui pnpm ng build --configuration production构建后的前端文件将被放置在Django可以提供的静态文件目录中。后端打包使用uv可以轻松创建生产环境的依赖包cd src uv export requirements.txt --prod常见问题解决端口冲突如果8000或4200端口被占用可以修改启动命令指定其他端口# 后端 uv run manage.py runserver 8001 # 前端 pnpm ng serve --port 4201依赖问题如果遇到依赖冲突可以尝试更新uv和pnpmuv self-update pnpm install -g pnpm开发资源官方开发文档docs/development.md后端源代码src/前端源代码src-ui/测试样例src/documents/tests/samples/通过以上步骤你已经成功配置了Paperless-ngx的完整开发环境。现在可以开始探索这个强大的文档管理系统的内部工作原理或者为项目贡献自己的代码了【免费下载链接】paperless-ngxA community-supported supercharged document management system: scan, index and archive all your documents项目地址: https://gitcode.com/GitHub_Trending/pa/paperless-ngx创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考