* feat: Add JsonEditor component for JSON editing This commit adds a new component called JsonEditor, which allows users to edit JSON data. The component uses the JSONEditor library and provides options for customizing the editor's appearance and behavior. It also includes functionality for updating the edited data and triggering a callback when the data changes. The component is initialized with an initial data object and can be updated with new data through props. The component is designed to be reusable and can be easily integrated into other parts of the application. * feat: Add JsonEditor component for JSON editing and replace JsonView The commit adds a new component called JsonEditor for editing JSON data. It replaces the previous JsonView component used for displaying JSON data. This change improves the functionality and user experience of the application. * [autofix.ci] apply automated fixes * Added json editor to package * Change jsonEditor to use new vanilla jsonEditor * Added color variables * Removed unused buttons on json editor * Removed unused dark store * Fixed state management on dictAreaModal * Change default DictComponent value to dict * removed unused checks * Changed to forward ref of json editor * removed nav bar * Fixed value not being received * Added check if value is null and handleOnNewValue on this case * Removed unused button on json editor * Adds auto focus and change mode to text * ♻️ (jsonEditor/index.tsx): remove unnecessary comments and improve code readability by removing redundant comments and empty dependency array in useEffect. * Fixed dict component test * Refactor json-input component to use VanillaJsonEditor and JsonEditor component * Remove react-json-view-lite and react18-json-view dependencies * [autofix.ci] apply automated fixes * Refactor jsonEditor component to add readOnly prop * Refactor json-output-view component to add read-only prop * Refactor switchOutputView component to add JSON output view * Refactor CSS styles for JSON editor buttons * Update package-lock.json to add new dependencies for @mapbox/node-pre-gyp and remove jsdom and its related modules * [autofix.ci] apply automated fixes * Refactor textModal component to remove unused imports and dependencies * add filter property to jsonEditor * [autofix.ci] apply automated fixes * Refactor jsonEditor component to handle transform queries and display error messages * [autofix.ci] apply automated fixes * Refactor jsonEditor component to add filter property and handle transform queries * Refactor jsonEditor component to add filter property and handle transform queries * Refactor Output class to add options property * Refactor json-output-view.tsx to update default height value * Refactor jsonEditor component to normalize transform query path * Refactor jsonEditor component to add JSONQuery support for transform queries * Add jsonquerylang library as a dependency * Refactor utils.py to add support for applying JSON filters * Refactor base.py to add apply_options method for JSON filtering * Fix jsonOutputView to set filter option to undefined when empty * Enhance apply_json_filter to support Data objects and improve query handling * Improve json filtering in Output class to return original result if filtered result is None * Refactor Component class to simplify map_outputs method and enhance output handling * move jsonquerylang to langflow-base * Refactor Component and Output classes for improved output handling and type consistency; enhance apply_json_filter to ensure proper data processing and add comprehensive unit tests. * Add filter_data method to Data class and update apply_options in Output class to utilize it; enhance apply_json_filter return type to Data. * Import apply_json_filter in Data class to enable data filtering functionality * Add validation for JSON results in JsonEditor; ensure only objects and arrays are accepted and handle serialization errors * 📝 (App.css): Add styles for jse-menu separator and cm-gutters to improve UI layout ♻️ (index.tsx): Refactor imports and code formatting for better readability and maintainability 🔧 (index.tsx): Update BaseModal component styles to improve UI layout and responsiveness * 📝 (custom.css): add extra line at the end of the file for consistency 📝 (App.css): add styling for .jse-menu .jse-button.jse-group-button class 📝 (classes.css): add extra line at the end of the file for consistency * 🐛 (data.py): fix custom_serializer to handle bytes objects by decoding them to utf-8 ♻️ (base.py): refactor options field in Output class to accept BaseModel, dict, or None for better flexibility and compatibility * Refactor apply_json_filter to directly use jsonquery on result, removing unnecessary string conversion * ✨ (base.py): Introduce OutputOptions model for output filtering and update Output class to use it * 🐛 (classes.css): Hide search box background and adjust container positioning for better layout * ✨ (jsonEditor): Enhance filtering functionality with improved state management and user feedback * Fixed package lock * [autofix.ci] apply automated fixes * Updated package lock * [autofix.ci] apply automated fixes --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: Lucas Oliveira <lucas.edu.oli@hotmail.com> Co-authored-by: cristhianzl <cristhian.lousa@gmail.com> Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org> |
||
|---|---|---|
| .devcontainer | ||
| .github | ||
| .vscode | ||
| deploy | ||
| docker | ||
| docker_example | ||
| docs | ||
| scripts | ||
| src | ||
| test-results | ||
| .env.example | ||
| .eslintrc.json | ||
| .gitattributes | ||
| .gitignore | ||
| .pre-commit-config.yaml | ||
| CODE_OF_CONDUCT.md | ||
| CONTRIBUTING.md | ||
| DEVELOPMENT.md | ||
| eslint.config.js | ||
| LICENSE | ||
| Makefile | ||
| pyproject.toml | ||
| README.md | ||
| render.yaml | ||
| uv.lock | ||
Langflow is a powerful tool for building and deploying AI-powered agents and workflows. It provides developers with both a visual authoring experience and a built-in API server that turns every agent into an API endpoint that can be integrated into applications built on any framework or stack. Langflow comes with batteries included and supports all major LLMs, vector databases and a growing library of AI tools.
✨ Highlight features
- Visual Builder to get started quickly and iterate.
- Access to Code so developers can tweak any component using Python.
- Playground to immediately test and iterate on their flows with step-by-step control.
- Multi-agent orchestration and conversation management and retrieval.
- Deploy as an API or export as JSON for Python apps.
- Observability with LangSmith, LangFuse and other integrations.
- Enterprise-ready security and scalability.
⚡️ Quickstart
Langflow works with Python 3.10 to 3.13.
Install with uv (recommended)
uv pip install langflow
Install with pip
pip install langflow
📦 Deployment
Self-managed
Langflow is completely open source and you can deploy it to all major deployment clouds. Follow this guide to learn how to use Docker to deploy Langflow.
Fully-managed by DataStax
DataStax Langflow is a full-managed environment with zero setup. Developers can sign up for a free account to get started.
⭐ Stay up-to-date
Star Langflow on GitHub to be instantly notified of new releases.
👋 Contribute
We welcome contributions from developers of all levels. If you'd like to contribute, please check our contributing guidelines and help make Langflow more accessible.