
TheAnswer is a revolutionary AI-powered productivity suite that empowers individuals and organizations to streamline their workflows, enhance decision-making, and boost creativity. Built on top of the popular open-source project Flowise, TheAnswer extends its capabilities to provide a comprehensive set of tools designed to tackle a wide range of tasks with unprecedented efficiency and intelligence.
TheAnswer builds upon Flowise, a powerful open-source tool for creating customized LLM flows. While Flowise provides the foundation for AI-powered workflows, TheAnswer extends these capabilities and integrates a wide range of additional services to create a comprehensive productivity suite.
Key aspects of TheAnswer's approach:
- Leverages Flowise's drag-and-drop interface for building AI workflows
- Extends Flowise's functionality with additional UI components and features
- Integrates seamlessly with Flowise projects
TheAnswer goes beyond Flowise integration, offering a growing ecosystem of services to enhance your AI-powered workflows:
- Langfuse: For LLM observability and analytics
- Make.com: To create complex automated workflows
- n8n: For workflow automation and integration
- Auth0: For robust user management, organizations, and permissions
- Other AI and Productivity Tools: Continuously expanding integrations with various services
This multi-service approach allows TheAnswer to offer a more versatile and powerful solution, catering to a wide range of business needs and use cases.
- AI Sidekicks (Chatflows): Task-specific AI assistants for various purposes, built using Flowise and enhanced with TheAnswer's capabilities.
- Document Stores: Connect and access data from multiple third-party services.
- Powerful Tools Integration: Leverage various tools and services to extend AI capabilities beyond Flowise's core functionality.
- Developer-Friendly Platform: Customizable AI models and workflows with API access, compatible with Flowise and other integrated services.
- Shareable Chatbots: Easily deploy and share custom AI Sidekicks.
- Composable Architecture: Mix and match services like Flowise, Langfuse, Make.com, and n8n to create tailored solutions.
- Advanced User Management: Utilize Auth0 for secure user authentication, organization management, and granular permissions control.
There are two main ways to get started with TheAnswer: local development setup and deployment on Render.
-
Clone the repository:
git clone https://github.com/the-answerai/theanswer.git cd theanswer
-
Initialize and update git submodules:
git submodule update --init
-
Set up environment variables:
- Create
.env
files in the following locations:/packages/server/.env
/packages/ui/.env
/apps/web/.env
/.env
(root directory)
If
.env.example
files are not available, please reach out to The AnswerAI team for the required environment variables. These files contain sensitive configuration details needed for local development.Note: For local development, you'll need to be added to the Auth0 development team with appropriate permissions (Member role or above). Please contact The AnswerAI team to get access.
- Create
-
Database Setup:
- Install and open DBeaver
- Connect to your PostgreSQL instance
- Create a new database named
flowise
- Configure the database connection in your
.env
files
-
Install dependencies:
pnpm install
-
Build the project:
pnpm build
If you encounter any database or Prisma-related issues:
- Try rebuilding with force:
pnpm build --force
- If issues persist, run migrations:
pnpm db:migrate
- Then rebuild again:
pnpm build --force
- Try rebuilding with force:
-
Start the development server:
pnpm dev
-
Open http://localhost:3000 in your browser to access TheAnswer.
For a quick and easy setup, we recommend deploying TheAnswer on Render:
-
Click the "Deploy to Render" button below:
-
Follow the prompts on Render to complete the deployment process.
-
Once deployed, you'll receive a URL to access your TheAnswer instance.
For detailed instructions on both local development and Render deployment, please refer to our documentation.
Note: The standalone TheAnswer CLI tool is currently under development. Stay tuned for updates on its release and installation process.
Note: The TheAnswer package is currently under development and not yet published to npm. Stay tuned for updates on when it will be available as a standalone CLI tool.
- Go to
docker
folder at the root of the project - Copy
.env.example
file, paste it into the same location, and rename to.env
docker compose up -d
- Open http://localhost:3000
- You can bring the containers down by
docker compose stop
-
Build the image locally:
docker build --no-cache -t flowise .
-
Run image:
docker run -d --name flowise -p 3000:3000 flowise
-
Stop image:
docker stop flowise
TheAnswer is built on top of Flowise and extends its functionality. The project structure is as follows:
All packages inside packages/*
are from the original Flowise project:
server
: Node backend to serve API logicsui
: React frontend for Flowisecomponents
: Third-party nodes integrationsembed
: Embedding functionalityembed-react
: React components for embeddingflowise-configs
: Configuration files for Flowise
TheAnswer adds additional functionality through the packages-answers/*
directory:
db
: Database interactionseslint-config-custom
: Custom ESLint configurationexperimental-prisma-webpack-plugin
: Experimental Prisma plugin for Webpacktsconfig
: TypeScript configurationtypes
: Shared type definitionsui
: TheAnswer-specific UI componentsutils
: Utility functions
This structure allows TheAnswer to build upon Flowise's core functionality while adding its own features and customizations. The TheAnswer-specific packages extend and enhance the capabilities of the original Flowise project, providing additional tools for AI-powered productivity and workflow management.
- Install PNPM
npm i -g pnpm
-
Clone the repository
git clone https://github.com/the-answerai/theanswer.git
-
Go into repository folder
cd theanswer
-
Install all dependencies of all modules:
pnpm install
-
Build all the code:
pnpm build
Exit code 134 (JavaScript heap out of memory)
If you get this error when running the above `build` script, try increasing the Node.js heap size and run the script again:export NODE_OPTIONS="--max-old-space-size=4096" pnpm build
-
Start the app:
pnpm start
You can now access the app on http://localhost:3000
-
For development build:
-
Create
.env
file and specify theVITE_PORT
(refer to.env.example
) inpackages/ui
-
Create
.env
file and specify thePORT
(refer to.env.example
) inpackages/server
-
Run
pnpm dev
Any code changes will reload the app automatically on http://localhost:3000
-
To enable app level authentication, add FLOWISE_USERNAME
and FLOWISE_PASSWORD
to the .env
file in packages/server
:
FLOWISE_USERNAME=user
FLOWISE_PASSWORD=1234
TheAnswer supports different environment variables to configure your instance. You can specify the following variables in the .env
file inside packages/server
folder. Read more
Deploy TheAnswer self-hosted in your existing infrastructure. We support various deployments
Visit https://theanswer.ai/ to learn more about our cloud-hosted solution.
Feel free to ask any questions, raise problems, and request new features in discussion
We welcome contributions to TheAnswer! Whether you're fixing bugs, improving documentation, or proposing new features, your efforts are appreciated. Here's how you can contribute:
-
Fork the Repository: Start by forking the TheAnswer repository to your GitHub account.
-
Create a Branch: Create a new branch for your contribution.
-
Make Your Changes:
- For bug fixes and minor improvements, feel free to submit a pull request directly.
- For new features or significant changes, please open an issue first to discuss the proposed changes.
- When extending Flowise functionality, ensure your changes are compatible with both Flowise and TheAnswer.
-
Test Your Changes: Ensure your changes don't break existing functionality and add tests if applicable.
-
Submit a Pull Request: Once you're satisfied with your changes, submit a pull request to the main TheAnswer repository.
-
Code Review: Wait for the maintainers to review your pull request. Be open to feedback and make necessary adjustments.
For detailed contribution guidelines, please refer to our CONTRIBUTING.md file.
If your contribution is related to Flowise core functionality, consider submitting it to the Flowise repository first. Once accepted, we can integrate it into TheAnswer.
Thanks go to these awesome contributors of both TheAnswer and the original Flowise project:
Reach out to us on Discord if you have any questions or need assistance with your contribution.
Source code in this repository is made available under the Apache License Version 2.0.