ansys / ansys/pyfluent

EPIC: PyFluent Strategic Plan: 2026

Open
#4,734 0 comments 0 reactions 0 assignees View on GitHub
epic
Dominant language
Python
Stars
497
Forks
77
Avg merge
22h 37m
Merged PRs (30d)
45

Description

# PyFluent Strategic Plan
**CY 2026–2027**
N.b. this issue was created as a result of the discussion in https://github.com/ansys/pyfluent/discussions/4606.

## Executive Summary & Strategic Rationale
This plan concentrates effort where it compounds most directly for the PyFluent user base:
- Continued improvement of the core Python API experience
- A stable, fully documented gRPC interface
- Guidance and reference configurations for lean, right-sized container images
- Removal of remaining architectural and performance blockers that limit production-scale use

Scope in other areas is deliberately constrained to keep the plan achievable and focused.

## 2026–2027 Priority Themes

### A. Python API Experience (Highest Priority – 2026 & 2027) #4735
Outcome: A consistently discoverable, well-documented, and Pythonic API.

2026 Deliverables
- Meaningful help text on every public API item
- 100% type hints backed up by full support for runtime type-checking
- Improved exposure of settings enum types: better discoverability through more expressive API and proper integration with API reference
- VariableDescriptors: ensure comprehensive variable coverage and add vector/scalar typing for API safety
- Complete redesign of the API reference:
- Organized primarily by objects the user interacts with
- Class/type reference remains available but de-emphasized
- Significantly improved readability and navigation
- Expanded library of curated, real-world examples in close partnership with ACE
- Refine PyFluent’s Settings API exposure process, enforcing quality thresholds that increase with each release

### B. gRPC API Modernization (Required Delivery – 2026) – Planned internally (1220957)
Outcome: A clean, stable, fully documented protobuf surface that external teams can confidently target.

2026 Deliverables
- Complete reorganization and standardization of proto definitions (naming, structure, comments)
- Comprehensive developer documentation + best-practice guide for building robust external clients
- Formal support boundaries and version policy

### C. Containerization Strategy (Required Delivery – 2026) – Initial work planned internally (804448)
Outcome: Clear, officially supported documentation and reference configurations for building lean, purpose-specific Fluent container images.

2026 Deliverables
- Published reference Dockerfiles and build scripts yielding distinct meshing and solver image families
- Default exclusion of GUI, graphics, webserver, and other components unnecessary for headless use
- Comprehensive documentation on customizing and extending the images
- Internal CI and developer workflows migrated to the same reference configurations

2027 Expansion
- Additional workflow-specialized reference images

### D. Data Extraction Performance (Focused 2026 Scope) – Planned internally (1220957)
Outcome: Significantly faster solution-data access for local-client workloads.

2026 Deliverable
- Efficient local client → direct solver access for solution data
- Published benchmarks quantifying the improvement

2027 Expansion
- Remote-client optimizations
- Full field-data acceleration

### E. Selective Componentization of PyFluent (Elevated to High Priority – 2026) #4618
Outcome: Communication backends become replaceable (REST ↔ gRPC ↔ future), making PyFluent suitable for integration into web-based or third-party clients with minimal effort.

2026 Deliverables
- Full extraction of the communication layer behind a clean abstract interface
- Ability to switch backend with a one-line change or environment variable
- Provide a lightweight mode for launching and managing solver processes

2027
- Broaden the architecture into a shared Python platform that other Ansys products can adopt with minimal duplication. N.b. PySystemCoupling and PyCFX currently reuse PyFluent code via code duplication

### F. Observability (Opportunistic – 2026) – Planned internally (804444)
Outcome: Structured telemetry for automation and debugging.

2026 Deliverables
- Rollout of observability once platform dependencies land
- Integration with OpenTelemtry observability stacks
- Negligible overhead in normal interactive use

### G. Agentic AI Platform (Foundation-Only in 2026 → Full Kick-off 2027) #4614
2026
- Deliver only components that fall out naturally (observability, error transmission, lean images)
- No agent-specific framework development until consuming platforms are mature

2027 (planned start)
- Full autonomous-workflow platform
- Required investments in error transparency and robustness

## Deprioritized Areas (and Why)

| Area | Reason |
|-------------------------------|--------------------------------------------------------------------------------------------------------------------------------------|
| PyFluent visualization | Strong existing alternatives (ParaView, PyVista, Plotly, etc.) cover most needs. Community contributions remain welcome. |
| Meshing workflow | Future direction of core Fluent meshing remains strategically unclear. Selective maintenance and targeted server mappings only. |
| PyConsole | Feature-complete and nearing end-of-life with the GUI. Minor help-window polish possible, otherwise no planned investment. |

This plan keeps effort tightly aligned with the areas that most directly affect current and near-future PyFluent users while protecting the team from scope creep in uncertain or lower-leverage directions.

Contributor guide

Open the contributing guide

Research direction

This is a strategic plan rather than a scoped implementation task, and it names no files, tests, or code entry points. Start by reading the linked discussion and the related issues #4735, #4618, and #4614 to find a concrete, unclaimed task. Done should be defined by that task’s scope; this issue alone does not specify an actionable completion criterion.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, grpc, python
Domain
backend-api-design, documentation, infrastructure
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
15/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.