Update dev.md

This commit is contained in:
Timothy Jaeryang Baek 2025-01-12 19:18:52 -08:00
parent ff8fa70dc4
commit 7b69e0a6bb

27
dev.md
View File

@ -1,63 +1,56 @@
# Developer Documentation
## Prerequisites
To work on this Electron project, you must have the following installed:
- **Conda**: A package, dependency, and environment management tool.
- **conda-pack**: To pack Conda environments into tarballs.
- **conda-lock**: To generate lockfiles for Conda environments.
- **Node.js 22+**: Ensure that your Node.js version is at least 22 (tested with v22.10).
Ensure these tools are properly installed and configured before proceeding.
### Installation Notes
- Install **conda-pack** and **conda-lock** globally or ensure they are available in the project's Python environment (e.g., a virtual environment).
- Double-check your tool versions to avoid compatibility issues.
---
## Getting Started
1. **Clone the repository**:
```bash
git clone https://github.com/open-webui/app
cd app
```
2. **Install Node.js dependencies**:
```bash
npm i
```
3. **Generate the Python environment tarball**:
```bash
npm run create:python-tar
```
> Note: This requires **conda-lock** to be installed and properly configured.
4. **Start the development environment**:
```bash
npm run start
```
This will launch the project in development mode.
---
## Building Distributables
To generate production-ready distributables (e.g., installers or app packages), run:
```bash
npm run make
```
This will create the necessary files for distribution in the `out` directory.
---
## Notes
- Ensure **conda**, **conda-pack**, and **conda-lock** are installed and working within your environment (global or virtual).
- Use Node.js **version 22+** to avoid runtime and compatibility issues (verified with v22.10).
- If you encounter issues, examine the project-specific scripts in the `package.json` file for troubleshooting.
- Always review logs carefully if commands produce errors to identify dependencies or configuration steps you might need to address.
- Make sure you have the required versions of **conda**, **conda-pack**, and **conda-lock** to avoid compatibility issues.
- If you encounter any issues, check the project-specific scripts in the `package.json` file.
Enjoy developing! 🚀
Enjoy developing! 🚀