Oracle / finbot /features /__init__.py
spacedout-bits's picture
Username access, web dashboard and coach chat
50094a0 verified
Raw History Blame Contribute Delete
1.07 kB
"""Bundled features.
To add your own: subclass :class:`~finbot.features.base.Feature`, then include
it in the list passed to the registry (see ``finbot.app.build_services``).
Nothing else in the codebase needs to change.
"""
from __future__ import annotations
from .base import (
Attachment,
BotContext,
CommandSpec,
Feature,
Reply,
Services,
SimpleFeature,
)
from .budgets import BudgetsFeature
from .coaching import CoachingFeature
from .core import CoreFeature
from .dashboard import DashboardFeature
from .expenses import ExpensesFeature
__all__ = [
"Attachment",
"BotContext",
"BudgetsFeature",
"CoachingFeature",
"CommandSpec",
"CoreFeature",
"ExpensesFeature",
"Feature",
"Reply",
"Services",
"SimpleFeature",
"default_features",
]
def default_features() -> list[Feature]:
"""The stock feature set, in registration order."""
return [
ExpensesFeature(),
BudgetsFeature(),
DashboardFeature(),
CoachingFeature(),
CoreFeature(),
]