Replies: 4 comments
-
|
Great question about customization workflows! We have been working on similar challenges with RAG deployments at RevolutionAI (https://revolutionai.io). A few things that helped us:
For sustainable customization, the key is making changes testable before deployment. Happy to share more specific patterns if helpful! |
Beta Was this translation helpful? Give feedback.
-
|
Great question about sustainable customization workflows! Our approach for maintaining Dify customizations:
The key insight: treat customizations as a separate layer, not inline modifications. This makes upgrades much smoother. We've helped clients manage complex Dify deployments with 50+ custom nodes at RevolutionAI. Happy to share more patterns if useful! |
Beta Was this translation helpful? Give feedback.
-
|
Great question — fork maintenance is painful when upstream moves fast. Recommended approach: Separation of concerns Keep customizations in a separate overlay directory:
Docker Compose overlay pattern: For i18n specifically:
Git strategy:
We maintain similar white-label forks at Revolution AI — the overlay approach keeps upstream sync manageable. |
Beta Was this translation helpful? Give feedback.
-
|
Maintaining a customized fork is challenging but there are patterns that help. 1. Overlay/patch approach Script: cp -r dify-upstream dify-custom
for patch in dify-patches/*.patch; do
git apply $patch
done2. Separate customization layer Mount these at build time or runtime. 3. Git subtree for upstream git subtree add --prefix=upstream https://github.com/langgenius/dify main
# Your changes in /custom, /overrides
git subtree pull --prefix=upstream ... # Update upstream4. Protected files via .gitattributes 5. Build-time injection FROM langgenius/dify:latest
COPY ./custom/i18n /app/web/i18n
COPY ./custom/brand /app/web/publicRecommendation: We maintain customized AI platforms at Revolution AI — the overlay pattern saves hours on every upgrade. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Self Checks
Content
"Hi Dify Team,
Thank you for the detailed explanation regarding the i18n migration to JSON.
As a developer maintaining a customized version of Dify (project Mora), I face significant manual work and merge conflicts with every major update, especially when core structures (like i18n or UI components) change.
My question is: What is the best practice for maintaining deep UI and backend customizations without having to manually fix dozens of conflicts every time?
Is there a recommended way to override components or translations using a 'themes' or 'plugin' system that remains separate from the core upstream/main?
How can I protect my branding and Persian (fa-IR) localizations from being overwritten or deleted during structural migrations?
I want to stay updated with Dify's great new features, but the current maintenance overhead is becoming unsustainable. Any advice on a more 'modular' approach for custom forks would be greatly appreciated!"
Beta Was this translation helpful? Give feedback.
All reactions