Feature related to user`s app plan
- Dominant language
- Python
- Stars
- 562
- Forks
- 410
- Avg merge
- 22h 15m
- Merged PRs (30d)
- 197
Description
**Is your feature request related to a problem? Please describe.**
At RUKN Software, we are currently developing an advanced permissions management app called "Branchy" that leverages Frappe's capabilities to offer tailored permissions based on specific values. However, we are encountering limitations with Frappe Cloud's current model, which does not support direct developer involvement in defining and managing paid feature-based subscriptions at the code level. This restricts our ability to flexibly monetize specific app functionalities, which is crucial for our business model.
**Describe the solution you'd like**
We propose that Frappe Cloud introduces a new framework that allows developers to define and control feature-based subscriptions directly within their app's code. This enhancement should include:
- **Feature Tagging in Codebase:**
- Implement a system that allows developers to tag individual features as paid directly within their code using metadata annotations. For example, a decorator or a simple annotation like `@paid_feature('premium')` could be applied to functions or classes that should only be accessible under certain subscription plans.
- **Integration with Subscription Management:**
- These tagged features should seamlessly integrate with Frappe Cloud’s billing and subscription management dashboard. This means that when a feature is tagged in the code, it should automatically appear in the Frappe Cloud dashboard for configuration under specific plans.
- **Developer-Centric Plan Management:**
- Enhance the existing dashboard to allow developers to easily configure and manage these tags in relation to subscription plans. This should include setting up different tiers and specifying which tagged features each tier includes.
**Developer Workflow:**
- **Coding and Tagging:** Developers will mark specific features in their app’s codebase as requiring a subscription. This tagging informs the system which features are premium and should be gated behind a subscription plan.
- **Dashboard Configuration:** After deploying the app, developers use the Frappe Cloud dashboard to match these tagged features to specific subscription plans, defining what gets included in each tier.
- **Subscription Enforcement:** Frappe Cloud handles the enforcement of these subscriptions, ensuring that only paying users can access the tagged features.
**Describe alternatives you've considered**
We have considered external subscription management tools, but these solutions lack the integration depth with Frappe Cloud, potentially leading to a fragmented user experience and increased technical overhead for maintenance and support.
**Additional context**
By enabling developers to directly tag and manage paid features within their apps, Frappe Cloud could significantly enhance its appeal to software developers looking for robust, integrated monetization solutions. This capability would make it possible to monetize individual app features dynamically, providing a clear pathway for developers to drive revenue while offering customers a transparent, pay-for-what-you-use service model.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.