Skip to content

Financial Goals management UI #499

Description

@clstaudt

Summary

Tuttle has a FinancialGoal model in the backend — revenue targets with deadlines. These goals already appear as timeline events and can inform forecasting. However, there is no UI to create, edit, or manage financial goals. Users cannot currently set revenue targets without direct database access.

Existing infrastructure

  • The FinancialGoal model exists in tuttle/model.py with fields: title, description, target amount, deadline
  • The timeline view already derives events from financial goals (deadline markers)
  • The dashboard shows KPIs like YTD revenue — goals would give these numbers context
  • Revenue forecasting is implemented in tuttle/forecasting.py

Goals

  • Freelancers can create, edit, and delete financial goals through the UI
  • Goals are visible on the dashboard (e.g. progress bar: "€42,000 / €60,000 target")
  • Goals continue to appear on the timeline
  • Optional: goals inform the revenue forecast visualization

Possible approaches (to be discussed)

  1. Section on the Dashboard — a goals card showing each active goal with a progress bar (YTD revenue vs. target), plus a create/edit modal
  2. Dedicated Goals view — under Insights, alongside Dashboard/Timeline/Tax/Salary
  3. Settings panel — if goals are rarely changed, a simple CRUD list in Settings might be enough
  4. Inline on existing views — overlay goal lines on the revenue chart that already exists on the dashboard

Questions to refine

  • Where should goal management live in the UI? (Dashboard, its own view, Settings?)
  • Should goals be annual only, or support arbitrary date ranges?
  • Should there be different goal types? (revenue, hours worked, number of clients, …)
  • How should goal progress be calculated? (paid invoices only, or include sent/pipeline?)

Feedback wanted

  • Do you set revenue targets for your freelance business? If so, how do you track them today?
  • What kinds of goals matter most? (annual revenue, monthly income, utilization rate, …)
  • Where would you expect to see goal progress in the app?

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestgood first issueGood for newcomershelp wantedExtra attention is neededneeds refinementThe feature needs to be defined in more detail

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions