189 lines
5.9 KiB
Markdown
189 lines
5.9 KiB
Markdown
<!-- markdownlint-disable MD030 -->
|
|
|
|
# Flowise
|
|
|
|
<a href="https://github.com/FlowiseAI/Flowise">
|
|
<img width="100%" src="https://github.com/FlowiseAI/Flowise/blob/main/images/flowise.gif?raw=true"></a>
|
|
|
|
Drag & drop UI to build your customized LLM flow
|
|
|
|
## ⚡Quick Start
|
|
|
|
Download and Install [NodeJS](https://nodejs.org/en/download) >= 18.15.0
|
|
|
|
1. Install Flowise
|
|
```bash
|
|
npm install -g flowise
|
|
```
|
|
2. Start Flowise
|
|
|
|
```bash
|
|
npx flowise start
|
|
```
|
|
|
|
With username & password
|
|
|
|
```bash
|
|
npx flowise start --FLOWISE_USERNAME=user --FLOWISE_PASSWORD=1234
|
|
```
|
|
|
|
3. Open [http://localhost:3000](http://localhost:3000)
|
|
|
|
## 🐳 Docker
|
|
|
|
### Docker Compose
|
|
|
|
1. Go to `docker` folder at the root of the project
|
|
2. Create `.env` file and specify the `PORT` (refer to `.env.example`)
|
|
3. `docker-compose up -d`
|
|
4. Open [http://localhost:3000](http://localhost:3000)
|
|
5. You can bring the containers down by `docker-compose stop`
|
|
|
|
### Docker Image
|
|
|
|
1. Build the image locally:
|
|
```bash
|
|
docker build --no-cache -t flowise .
|
|
```
|
|
2. Run image:
|
|
|
|
```bash
|
|
docker run -d --name flowise -p 3000:3000 flowise
|
|
```
|
|
|
|
3. Stop image:
|
|
```bash
|
|
docker stop flowise
|
|
```
|
|
|
|
## 👨💻 Developers
|
|
|
|
Flowise has 3 different modules in a single mono repository.
|
|
|
|
- `server`: Node backend to serve API logics
|
|
- `ui`: React frontend
|
|
- `components`: Langchain components
|
|
|
|
### Prerequisite
|
|
|
|
- Install [Yarn v1](https://classic.yarnpkg.com/en/docs/install)
|
|
```bash
|
|
npm i -g yarn
|
|
```
|
|
|
|
### Setup
|
|
|
|
1. Clone the repository
|
|
|
|
```bash
|
|
git clone https://github.com/FlowiseAI/Flowise.git
|
|
```
|
|
|
|
2. Go into repository folder
|
|
|
|
```bash
|
|
cd Flowise
|
|
```
|
|
|
|
3. Install all dependencies of all modules:
|
|
|
|
```bash
|
|
yarn install
|
|
```
|
|
|
|
4. Build all the code:
|
|
|
|
```bash
|
|
yarn build
|
|
```
|
|
|
|
5. Start the app:
|
|
|
|
```bash
|
|
yarn start
|
|
```
|
|
|
|
You can now access the app on [http://localhost:3000](http://localhost:3000)
|
|
|
|
6. For development build:
|
|
|
|
- Create `.env` file and specify the `PORT` (refer to `.env.example`) in `packages/ui`
|
|
- Create `.env` file and specify the `PORT` (refer to `.env.example`) in `packages/server`
|
|
- Run
|
|
|
|
```bash
|
|
yarn dev
|
|
```
|
|
|
|
Any code changes will reload the app automatically on [http://localhost:8080](http://localhost:8080)
|
|
|
|
## 🔒 Authentication
|
|
|
|
To enable app level authentication, add `FLOWISE_USERNAME` and `FLOWISE_PASSWORD` to the `.env` file in `packages/server`:
|
|
|
|
```
|
|
FLOWISE_USERNAME=user
|
|
FLOWISE_PASSWORD=1234
|
|
```
|
|
|
|
## 🌱 Env Variables
|
|
|
|
Flowise support different environment variables to configure your instance. You can specify the following variables in the `.env` file inside `packages/server` folder. Read [more](https://docs.flowiseai.com/environment-variables)
|
|
|
|
| Variable | Description | Type | Default |
|
|
| ---------------- | ---------------------------------------------------------------- | ------------------------------------------------ | ----------------------------------- |
|
|
| PORT | The HTTP port Flowise runs on | Number | 3000 |
|
|
| FLOWISE_USERNAME | Username to login | String |
|
|
| FLOWISE_PASSWORD | Password to login | String |
|
|
| DEBUG | Print logs onto terminal/console | Boolean |
|
|
| LOG_PATH | Location where log files are stored | String | `your-path/Flowise/packages/server` |
|
|
| LOG_LEVEL | Different log levels for loggers to be saved | Enum String: `error`, `info`, `verbose`, `debug` | `info` |
|
|
| DATABASE_PATH | Location where database is saved | String | `your-home-dir/.flowise` |
|
|
| APIKEY_PATH | Location where api keys are saved | String | `your-path/Flowise/packages/server` |
|
|
| EXECUTION_MODE | Whether predictions run in their own process or the main process | Enum String: `child`, `main` | `main` |
|
|
|
|
You can also specify the env variables when using `npx`. For example:
|
|
|
|
```
|
|
npx flowise start --PORT=3000 --DEBUG=true
|
|
```
|
|
|
|
## 📖 Documentation
|
|
|
|
[Flowise Docs](https://docs.flowiseai.com/)
|
|
|
|
## 🌐 Self Host
|
|
|
|
### [Railway](https://docs.flowiseai.com/deployment/railway)
|
|
|
|
[](https://railway.app/template/pn4G8S?referralCode=WVNPD9)
|
|
|
|
### [Render](https://docs.flowiseai.com/deployment/render)
|
|
|
|
[](https://docs.flowiseai.com/deployment/render)
|
|
|
|
### [AWS](https://docs.flowiseai.com/deployment/aws)
|
|
|
|
### [Azure](https://docs.flowiseai.com/deployment/azure)
|
|
|
|
### [DigitalOcean](https://docs.flowiseai.com/deployment/digital-ocean)
|
|
|
|
### [GCP](https://docs.flowiseai.com/deployment/gcp)
|
|
|
|
## 💻 Cloud Hosted
|
|
|
|
Coming soon
|
|
|
|
## 🙋 Support
|
|
|
|
Feel free to ask any questions, raise problems, and request new features in [discussion](https://github.com/FlowiseAI/Flowise/discussions)
|
|
|
|
## 🙌 Contributing
|
|
|
|
See [contributing guide](CONTRIBUTING.md). Reach out to us at [Discord](https://discord.gg/jbaHfsRVBW) if you have any questions or issues.
|
|
[](https://star-history.com/#FlowiseAI/Flowise&Date)
|
|
|
|
## 📄 License
|
|
|
|
Source code in this repository is made available under the [MIT License](LICENSE.md).
|