Skip to content

Commit 22234b8

Browse files
committed
Merge branch 'main' into production
2 parents e88a24b + fc9d6e7 commit 22234b8

File tree

556 files changed

+46248
-14263
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

556 files changed

+46248
-14263
lines changed

.github/workflows/main.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,14 +26,14 @@ jobs:
2626
uses: actions/setup-node@v4
2727
with:
2828
node-version: ${{ matrix.node-version }}
29-
check-latest: false
3029
cache: 'pnpm'
31-
- run: npm i -g pnpm
30+
cache-dependency-path: 'pnpm-lock.yaml'
3231
- run: pnpm install
33-
- run: ./node_modules/.bin/cypress install
3432
- run: pnpm lint
3533
- run: pnpm build
36-
- name: Install dependencies
34+
- name: Cypress install
35+
run: pnpm cypress install
36+
- name: Install dependencies (Cypress Action)
3737
uses: cypress-io/github-action@v6
3838
with:
3939
working-directory: ./

CONTRIBUTING.md

Lines changed: 39 additions & 38 deletions
Large diffs are not rendered by default.

README.md

Lines changed: 19 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -137,11 +137,12 @@ Note: The TheAnswer package is currently under development and not yet published
137137

138138
### Docker Compose
139139

140-
1. Go to `docker` folder at the root of the project
141-
2. Copy `.env.example` file, paste it into the same location, and rename to `.env`
142-
3. `docker compose up -d`
143-
4. Open [http://localhost:3000](http://localhost:3000)
144-
5. You can bring the containers down by `docker compose stop`
140+
1. Clone the Flowise project
141+
2. Go to `docker` folder at the root of the project
142+
3. Copy `.env.example` file, paste it into the same location, and rename to `.env` file
143+
4. `docker compose up -d`
144+
5. Open [http://localhost:3000](http://localhost:3000)
145+
6. You can bring the containers down by `docker compose stop`
145146

146147
### Docker Image
147148

@@ -174,6 +175,7 @@ All packages inside `packages/*` are from the original Flowise project:
174175
- `embed`: Embedding functionality
175176
- `embed-react`: React components for embedding
176177
- `flowise-configs`: Configuration files for Flowise
178+
- `api-documentation`: Auto-generated swagger-ui API docs from express
177179

178180
### Packages-Answers (TheAnswer-specific)
179181

@@ -272,29 +274,29 @@ TheAnswer supports different environment variables to configure your instance. Y
272274
273275
Deploy TheAnswer self-hosted in your existing infrastructure. We support various [deployments](https://docs.theanswer.ai/configuration/deployment)
274276
275-
- [Copilot](./DEPLOYMENT_COPILOT.md)
276-
- [AWS](https://docs.theanswer.ai/deployment/aws)
277-
- [Azure](https://docs.theanswer.ai/deployment/azure)
278-
- [Digital Ocean](https://docs.theanswer.ai/deployment/digital-ocean)
279-
- [GCP](https://docs.theanswer.ai/deployment/gcp)
277+
- [AWS](https://docs.theanswer.ai/configuration/deployment/aws)
278+
- [Azure](https://docs.theanswer.ai/configuration/deployment/azure)
279+
- [Digital Ocean](https://docs.theanswer.ai/configuration/deployment/digital-ocean)
280+
- [GCP](https://docs.theanswer.ai/configuration/deployment/gcp)
281+
- [Alibaba Cloud](https://computenest.console.aliyun.com/service/instance/create/default?type=user&ServiceName=Flowise社区版)
280282
- <details>
281283
<summary>Others</summary>
282284
283-
- [Railway](https://docs.theanswer.ai/deployment/railway)
285+
- [Railway](https://docs.theanswer.ai/configuration/deployment/railway)
284286
285287
[![Deploy on Railway](https://railway.app/button.svg)](https://railway.app/template/pn4G8S?referralCode=WVNPD9)
286288
287-
- [Render](https://docs.theanswer.ai/deployment/render)
289+
- [Render](https://docs.theanswer.ai/configuration/deployment/render)
288290
289-
[![Deploy to Render](https://render.com/images/deploy-to-render-button.svg)](https://docs.theanswer.ai/deployment/render)
291+
[![Deploy to Render](https://render.com/images/deploy-to-render-button.svg)](https://docs.theanswer.ai/configuration/deployment/render)
290292
291293
- [HuggingFace Spaces](https://docs.theanswer.ai/deployment/hugging-face)
292294
293295
<a href="https://huggingface.co/spaces/TheAnswer/TheAnswer"><img src="https://huggingface.co/datasets/huggingface/badges/raw/main/open-in-hf-spaces-sm.svg" alt="HuggingFace Spaces"></a>
294296
295297
- [Elestio](https://elest.io/open-source/theanswer)
296298
297-
[![Deploy](https://pub-da36157c854648669813f3f76c526c2b.r2.dev/deploy-on-elestio-black.png)](https://elest.io/open-source/theanswer)
299+
[![Deploy on Elestio](https://elest.io/images/logos/deploy-to-elestio-btn.png)](https://elest.io/open-source/theanswer)
298300
299301
- [Sealos](https://cloud.sealos.io/?openapp=system-template%3Dtheanswer)
300302
@@ -306,9 +308,9 @@ Deploy TheAnswer self-hosted in your existing infrastructure. We support various
306308
307309
</details>
308310
309-
## 💻 Cloud Hosted
311+
## ☁️ Flowise Cloud
310312
311-
Visit [https://theanswer.ai/](https://theanswer.ai/) to learn more about our cloud-hosted solution.
313+
[Get Started with Flowise Cloud](https://theanswer.ai/)
312314
313315
## 🙋 Support
314316
@@ -338,7 +340,7 @@ For detailed contribution guidelines, please refer to our [CONTRIBUTING.md](CONT
338340
339341
### Contribution to Flowise Core
340342
341-
If your contribution is related to Flowise core functionality, consider submitting it to the [Flowise repository](https://github.com/FlowiseAI/Flowise) first. Once accepted, we can integrate it into TheAnswer.
343+
If your contribution is related to Flowise core functionality, consider submitting it to the [Flowise repository](https://github.com/theanswer/Flowise) first. Once accepted, we can integrate it into TheAnswer.
342344
343345
Thanks go to these awesome contributors of both TheAnswer and the original Flowise project:
344346

SECURITY.md

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
### Responsible Disclosure Policy
2+
3+
At Flowise, we prioritize security and continuously work to safeguard our systems. However, vulnerabilities can still exist. If you identify a security issue, please report it to us so we can address it promptly. Your cooperation helps us better protect our platform and users.
4+
5+
### Vulnerabilities
6+
7+
The following types of issues are some of the most common vulnerabilities:
8+
9+
- Clickjacking on pages without sensitive actions
10+
- CSRF on unauthenticated/logout/login pages
11+
- Attacks requiring MITM (Man-in-the-Middle) or physical device access
12+
- Social engineering attacks
13+
- Activities that cause service disruption (DoS)
14+
- Content spoofing and text injection without a valid attack vector
15+
- Email spoofing
16+
- Absence of DNSSEC, CAA, CSP headers
17+
- Missing Secure or HTTP-only flag on non-sensitive cookies
18+
- Deadlinks
19+
- User enumeration
20+
21+
### Reporting Guidelines
22+
23+
- Submit your findings to https://github.com/FlowiseAI/Flowise/security
24+
- Provide clear details to help us reproduce and fix the issue quickly.
25+
26+
### Disclosure Guidelines
27+
28+
- Do not publicly disclose vulnerabilities until we have assessed, resolved, and notified affected users.
29+
- If you plan to present your research (e.g., at a conference or in a blog), share a draft with us at least **30 days in advance** for review.
30+
- Avoid including:
31+
- Data from any Flowise customer projects
32+
- Flowise user/customer information
33+
- Details about Flowise employees, contractors, or partners
34+
35+
### Response to Reports
36+
37+
- We will acknowledge your report within **5 business days** and provide an estimated resolution timeline.
38+
- Your report will be kept **confidential**, and your details will not be shared without your consent.
39+
40+
We appreciate your efforts in helping us maintain a secure platform and look forward to working together to resolve any issues responsibly.

apps/web/package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@
1212
"aai-embed": "workspace:*",
1313
"flowise-ui": "workspace:*",
1414
"jose": "^5.2.3",
15-
"@auth0/nextjs-auth0": "^3.5.0",
15+
"@auth0/nextjs-auth0": "3.5.0",
16+
"@auth0/auth0-react": "2.2.4",
1617
"@aws-sdk/client-s3": "^3.374.0",
1718
"@aws-sdk/s3-request-presigner": "^3.374.0",
1819
"@aws-sdk/signature-v4-crt": "^3.357.0",

docker-compose.dev.yml

Lines changed: 64 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -1,68 +1,68 @@
11
version: '3'
22

33
services:
4-
# dev-inngest:
5-
# image: node:18
6-
# working_dir: /app/packages/db
7-
# volumes:
8-
# - .:/app
9-
# ports:
10-
# - '8288:8288'
11-
# command: npx inngest-cli@latest dev -u http://127.0.0.1:3000/api/inngest
12-
# studio:
13-
# image: node:18
14-
# working_dir: /app/packages/db
15-
# volumes:
16-
# - .:/app
17-
# ports:
18-
# - '5555:5555'
19-
# command: npx prisma studio
20-
# environment:
21-
# - DATABASE_URL=postgresql://example_user:example_password@postgres:5432/example_db?schema=public
22-
# depends_on:
23-
# - postgres
24-
redis:
25-
image: redis:latest
26-
ports:
27-
- '6379:6379'
28-
volumes:
29-
- redis_data:/data
30-
postgres:
31-
image: postgres:latest
32-
ports:
33-
- '5432:5432'
34-
volumes:
35-
- postgres_data:/var/lib/postgresql/data/
36-
environment:
37-
POSTGRES_PORT: 5432
38-
POSTGRES_USER: example_user
39-
POSTGRES_PASSWORD: example_password
40-
POSTGRES_DB: example_db
41-
# langchain-frontend:
42-
# image: notlangchain/langchainplus-frontend:latest
43-
# ports:
44-
# - 4173:4173
45-
# environment:
46-
# - BACKEND_URL=http://langchain-backend:8000
47-
# - PUBLIC_BASE_URL=http://localhost:8000
48-
# - PUBLIC_DEV_MODE=true
49-
# depends_on:
50-
# - langchain-backend
51-
# langchain-backend:
52-
# image: notlangchain/langchainplus:latest
53-
# environment:
54-
# - PORT=8000
55-
# - LANGCHAIN_ENV=local
56-
# ports:
57-
# - 8000:8000
58-
# depends_on:
59-
# - langchain-db
60-
# langchain-db:
61-
# image: postgres:14.1
62-
# environment:
63-
# - POSTGRES_PASSWORD=postgres
64-
# - POSTGRES_USER=postgres
65-
# - POSTGRES_DB=postgres
4+
# dev-inngest:
5+
# image: node:18
6+
# working_dir: /app/packages/db
7+
# volumes:
8+
# - .:/app
9+
# ports:
10+
# - '8288:8288'
11+
# command: npx inngest-cli@latest dev -u http://127.0.0.1:3000/api/inngest
12+
# studio:
13+
# image: node:18
14+
# working_dir: /app/packages/db
15+
# volumes:
16+
# - .:/app
17+
# ports:
18+
# - '5555:5555'
19+
# command: npx prisma studio
20+
# environment:
21+
# - DATABASE_URL=postgresql://example_user:example_password@postgres:5432/example_db?schema=public
22+
# depends_on:
23+
# - postgres
24+
redis:
25+
image: redis:latest
26+
ports:
27+
- '6379:6379'
28+
volumes:
29+
- redis_data:/data
30+
postgres:
31+
image: postgres:16
32+
ports:
33+
- '5432:5432'
34+
volumes:
35+
- postgres_data:/var/lib/postgresql/data/
36+
environment:
37+
POSTGRES_PORT: 5432
38+
POSTGRES_USER: example_user
39+
POSTGRES_PASSWORD: example_password
40+
POSTGRES_DB: example_db
41+
# langchain-frontend:
42+
# image: notlangchain/langchainplus-frontend:latest
43+
# ports:
44+
# - 4173:4173
45+
# environment:
46+
# - BACKEND_URL=http://langchain-backend:8000
47+
# - PUBLIC_BASE_URL=http://localhost:8000
48+
# - PUBLIC_DEV_MODE=true
49+
# depends_on:
50+
# - langchain-backend
51+
# langchain-backend:
52+
# image: notlangchain/langchainplus:latest
53+
# environment:
54+
# - PORT=8000
55+
# - LANGCHAIN_ENV=local
56+
# ports:
57+
# - 8000:8000
58+
# depends_on:
59+
# - langchain-db
60+
# langchain-db:
61+
# image: postgres:14.1
62+
# environment:
63+
# - POSTGRES_PASSWORD=postgres
64+
# - POSTGRES_USER=postgres
65+
# - POSTGRES_DB=postgres
6666
volumes:
67-
postgres_data:
68-
redis_data:
67+
postgres_data:
68+
redis_data:

docker/.env.example

Lines changed: 48 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ SECRETKEY_PATH=/root/.flowise
55
LOG_PATH=/root/.flowise/logs
66
BLOB_STORAGE_PATH=/root/.flowise/storage
77

8+
# APIKEY_STORAGE_TYPE=json (json | db)
9+
810
# NUMBER_OF_PROXIES= 1
911
# CORS_ORIGINS=*
1012
# IFRAME_ORIGINS=*
@@ -18,13 +20,18 @@ BLOB_STORAGE_PATH=/root/.flowise/storage
1820
# DATABASE_SSL=true
1921
# DATABASE_SSL_KEY_BASE64=<Self signed certificate in BASE64>
2022

23+
# SECRETKEY_STORAGE_TYPE=local #(local | aws)
24+
# SECRETKEY_PATH=/your_api_key_path/.flowise
25+
# FLOWISE_SECRETKEY_OVERWRITE=myencryptionkey
26+
# SECRETKEY_AWS_ACCESS_KEY=<your-access-key>
27+
# SECRETKEY_AWS_SECRET_KEY=<your-secret-key>
28+
# SECRETKEY_AWS_REGION=us-west-2
29+
2130
# FLOWISE_USERNAME=user
2231
# FLOWISE_PASSWORD=1234
2332
# FLOWISE_SECRETKEY_OVERWRITE=myencryptionkey
2433
# FLOWISE_FILE_SIZE_LIMIT=50mb
2534

26-
# DISABLE_CHATFLOW_REUSE=true
27-
2835
# DEBUG=true
2936
# LOG_LEVEL=info (error | warn | info | verbose | debug)
3037
# TOOL_FUNCTION_BUILTIN_DEP=crypto,fs
@@ -48,6 +55,43 @@ BLOB_STORAGE_PATH=/root/.flowise/storage
4855
# S3_STORAGE_SECRET_ACCESS_KEY=<your-secret-key>
4956
# S3_STORAGE_REGION=us-west-2
5057
# S3_ENDPOINT_URL=<custom-s3-endpoint-url>
58+
# S3_FORCE_PATH_STYLE=false
5159

52-
# APIKEY_STORAGE_TYPE=json (json | db)
53-
# SHOW_COMMUNITY_NODES=true
60+
# SHOW_COMMUNITY_NODES=true
61+
# DISABLED_NODES=bufferMemory,chatOpenAI (comma separated list of node names to disable)
62+
63+
######################
64+
# METRICS COLLECTION
65+
#######################
66+
# ENABLE_METRICS=false
67+
# METRICS_PROVIDER=prometheus # prometheus | open_telemetry
68+
# METRICS_INCLUDE_NODE_METRICS=true # default is true
69+
# METRICS_SERVICE_NAME=FlowiseAI
70+
71+
# ONLY NEEDED if METRICS_PROVIDER=open_telemetry
72+
# METRICS_OPEN_TELEMETRY_METRIC_ENDPOINT=http://localhost:4318/v1/metrics
73+
# METRICS_OPEN_TELEMETRY_PROTOCOL=http # http | grpc | proto (default is http)
74+
# METRICS_OPEN_TELEMETRY_DEBUG=true # default is false
75+
76+
# Uncomment the following lines to enable global agent proxy
77+
# see https://www.npmjs.com/package/global-agent for more details
78+
# GLOBAL_AGENT_HTTP_PROXY=CorporateHttpProxyUrl
79+
# GLOBAL_AGENT_HTTPS_PROXY=CorporateHttpsProxyUrl
80+
# GLOBAL_AGENT_NO_PROXY=ExceptionHostsToBypassProxyIfNeeded
81+
82+
######################
83+
# QUEUE CONFIGURATION
84+
#######################
85+
# MODE=queue #(queue | main)
86+
# QUEUE_NAME=flowise-queue
87+
# QUEUE_REDIS_EVENT_STREAM_MAX_LEN=100000
88+
# WORKER_CONCURRENCY=100000
89+
# REDIS_URL=
90+
# REDIS_HOST=localhost
91+
# REDIS_PORT=6379
92+
# REDIS_USERNAME=
93+
# REDIS_PASSWORD=
94+
# REDIS_TLS=
95+
# REDIS_CERT=
96+
# REDIS_KEY=
97+
# REDIS_CA=

docker/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# Stage 1: Build stage
2-
FROM node:20-alpine as build
2+
FROM node:20-alpine AS build
33

44
USER root
55

0 commit comments

Comments
 (0)