Files
actual/packages/docs/docs-sidebar.js
tabedzki e4903ca6e3 Feat/add-budget-analysis-report (#6137)
* Add Budget Analysis report with full implementation

Co-authored-by: tabedzki <35670232+tabedzki@users.noreply.github.com>

* Add preset time ranges, intervals, bar chart, hide balance, and display controls

Co-authored-by: tabedzki <35670232+tabedzki@users.noreply.github.com>

* Fix duplicate function declaration syntax error in budget-analysis-spreadsheet.ts

Co-authored-by: tabedzki <35670232+tabedzki@users.noreply.github.com>

* Fix floating point precision error in daily/weekly intervals and replace interval button with dropdown

Co-authored-by: tabedzki <35670232+tabedzki@users.noreply.github.com>

* Make card always display monthly data and match report's chart type

Co-authored-by: tabedzki <35670232+tabedzki@users.noreply.github.com>

* fix: adjust widget placement and presentation

* fix: adjusted the dot presentation

* feat: added svg for line chart/barchart

* fix: added one month to the report

* added the upcoming release notes

* amended the upcoming release notes

* fix: removed unused variables

* formatted using prettier --write

* [autofix.ci] apply automated fixes

* feat: added new feature to the Reports Page in the test budget

* fix: amended the reports.test.ts file to expect Budget Analysis

* Update VRT screenshots

Auto-generated by VRT workflow

PR: #6137

* Update VRT screenshots

Auto-generated by VRT workflow

PR: #6137

* revert: removed the inclusion of the Budget Analysis tool from the test file

* Update VRT screenshots

Auto-generated by VRT workflow

PR: #6137

* fix: changed the display to always be monthly since budgets are monthly; removed the 1month view

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* fix: removed comment

* feat: added experimental feature flag for Budget Analysis tool

* feat: Switched option to use SVG Icons instead of words to shorten horizontal layout

* Removed interval possibilities and removed unnecessary compact variable as indicated by CodeRabbit

* Update packages/desktop-client/src/components/reports/reports/BudgetAnalysisCard.tsx

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Added basic documentation for Budget Analysis Report

* Update VRT screenshots

Auto-generated by VRT workflow

PR: #6137

* Update VRT screenshots

Auto-generated by VRT workflow

PR: #6137

* fix: added budget-analysis doc to sidebar

* Update VRT screenshots

Auto-generated by VRT workflow

PR: #6137

* feat(reports): improve Budget Analysis report UI and behavior

- Update chart colors to match Cash Flow report style
  (Budgeted: blue, Balance: pageTextLight)
- Remove legend items from report view for cleaner UI
- Add 1 month quick select option to header
- Pass isConcise prop to BudgetAnalysisGraph for proper date formatting
- Add dynamic daily/monthly interval switching based on date range

* Update VRT screenshots

Auto-generated by VRT workflow

PR: #6137

* feat(reports): refactor BudgetAnalysisGraph and improve isConcise calculation according to Rabbit AI

* feat(reports): add translation support for Budget Analysis graph labels

* feat(reports): centralize translation for Budget Analysis graph labels

* feat: use the budget values directly from the budget spreadsheet/server

* feat: enhance budget analysis with overspending adjustments and detailed reporting

* style: format code for better readability in BudgetAnalysis and budget-analysis-spreadsheet components

* refactor: remove unused variables

* docs: added in the image to the docs

* fix: reimplement support for conditionsOp

* [autofix.ci] apply automated fixes

* style: simplify budget analysis labels for clarity

* fix: add the on copy function

* feat: tooltip improvements

* feat: enhance budget analysis to track overspending adjustments across months

* fix: removed the absolute value for spent

* feat: update the charts to look closer to the CashFlow report

* fix: correct financial formatting for totalSpent in BudgetAnalysis

* feat: add filterExclude prop to Header and BudgetAnalysis for improved filtering options

* feat: implement privacy mode for Y-axis values in BudgetAnalysisGraph

* feat: change default graph type to Bar in BudgetAnalysis

* feat: remove commented-out filter button code in Header component

* feat: remove commented-out code for filter exclusion in Header component

* fix: update the feedback link to the dedicated issue

* refactor: financial display components to use FinancialText for consistency in Budget Analysis reports

* fix: update the card to also start as bar graph

* docs: update Budget Analysis report to include category filtering information

* style: refactor imports and whitespace

* refactor: simplify inline content structure in BudgetAnalysis component

* [autofix.ci] apply automated fixes

* Update VRT screenshots

Auto-generated by VRT workflow

PR: #6137

* fix: removed color descriptors from the chart

* fix: update color themes for Budget Analysis to use custom theme definitions

* [autofix.ci] apply automated fixes

* feat: update Budget Analysis merge md file

* Update VRT screenshots

Auto-generated by VRT workflow

PR: #6137

* fix: update budget analysis report image

* fix: white space adjustment in descriptor

* [autofix.ci] apply automated fixes

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: youngcw <calebyoung94@gmail.com>
2026-01-24 20:00:10 +00:00

338 lines
8.9 KiB
JavaScript

/**
* Creating a sidebar enables you to:
- create an ordered group of docs
- render a sidebar for each doc of that group
- provide next/previous navigation
The sidebars can be generated from the filesystem, or explicitly defined here.
Create as many sidebars as you want.
*/
// @ts-check
/** @type {import('@docusaurus/plugin-content-docs').SidebarsConfig} */
const sidebars = {
docs: [
'index',
'vision',
'releases',
{
type: 'category',
label: 'A Tour of Actual',
link: {
type: 'doc',
id: 'tour/index',
},
items: [
'tour/user-interface',
'tour/budget',
'tour/accounts',
'tour/reports',
'tour/schedules',
'tour/payees',
'tour/rules',
],
},
{
type: 'category',
label: 'Getting Started',
collapsible: false,
className: 'no-indent',
items: [
'getting-started/roadmap-for-new-users',
'getting-started/envelope-budgeting',
'getting-started/tracking-budget',
{
type: 'category',
label: 'Installation and Configuration',
link: {
type: 'doc',
id: 'install/index',
},
items: [
{
type: 'category',
label: 'On Your Own Machine',
collapsible: false,
className: 'no-indent',
items: [
'install/docker',
'install/cli-tool',
'install/desktop-app',
'install/build-from-source',
],
},
{
type: 'category',
label: 'In the Cloud',
collapsible: false,
className: 'no-indent',
items: ['install/pikapods', 'install/fly'],
},
{
type: 'category',
label: 'Configuration',
collapsible: false,
className: 'no-indent',
items: [
'config/index',
'config/https',
'config/reverse-proxies',
'config/oauth-auth',
'config/multi-user',
'advanced/http-header-auth',
],
},
],
},
{
type: 'category',
label: 'Migration',
link: {
type: 'doc',
id: 'migration/index',
},
items: ['migration/ynab4', 'migration/nynab'],
},
],
},
{
type: 'category',
label: 'Using Actual',
collapsible: false,
className: 'no-indent',
items: [
'getting-started/starting-fresh',
{
type: 'category',
label: 'Budgeting',
collapsed: true,
link: {
type: 'doc',
id: 'budgeting/index',
},
items: [
'budgeting/categories',
'budgeting/returns-and-reimbursements',
{
type: 'category',
label: 'Managing Credit Cards',
collapsible: true,
link: {
type: 'doc',
id: 'budgeting/credit-cards/index',
},
items: [
'budgeting/credit-cards/paying-in-full',
'budgeting/credit-cards/carrying-debt',
],
},
'budgeting/multi-currency',
'budgeting/joint-accounts',
'advanced/restart',
],
},
// End of Budgeting
'schedules',
{
type: 'category',
label: 'Accounts & Transactions',
collapsed: true,
link: {
type: 'doc',
id: 'accounts/index',
},
items: [
'transactions/filters',
'transactions/transfers',
{
type: 'category',
label: 'Rules',
collapsed: true,
link: {
type: 'doc',
id: 'budgeting/rules/index',
},
items: ['budgeting/rules/custom'],
},
'transactions/importing',
'transactions/merging',
'accounts/reconciliation',
'transactions/payees',
'transactions/bulk-editing',
'transactions/tags',
{
type: 'category',
label: 'Connecting Your Bank',
link: {
type: 'doc',
id: 'advanced/bank-sync',
},
items: [
'advanced/bank-sync/gocardless',
'advanced/bank-sync/simplefin',
],
},
'advanced/scripts/modify-transfers',
],
},
{
type: 'category',
label: 'Reports',
collapsed: true,
link: {
type: 'doc',
id: 'reports/index',
},
items: ['reports/custom-reports'],
},
{
type: 'category',
label: 'Backup & Restore',
collapsed: true,
items: ['backup-restore/backup', 'backup-restore/restore'],
},
'settings/index',
'getting-started/sync',
'getting-started/manage-files',
{
type: 'category',
label: 'Experimental features',
collapsed: true,
link: {
type: 'doc',
id: 'experimental/index',
},
items: [
'experimental/goal-templates',
'experimental/monthly-cleanup',
'experimental/rule-templating',
'experimental/formulas',
'experimental/pluggyai',
'experimental/crossover-point-report',
'experimental/custom-themes',
'experimental/budget-analysis-report',
],
},
'getting-started/tips-tricks',
{
type: 'category',
label: 'API',
link: { type: 'doc', id: 'api/index' },
items: [
'api/reference',
{
type: 'category',
label: 'ActualQL',
collapsed: true,
link: {
type: 'doc',
id: 'api/actual-ql/index',
},
items: ['api/actual-ql/functions', 'api/actual-ql/examples'],
},
],
},
],
},
{
type: 'category',
label: 'Help & Support',
collapsible: false,
className: 'no-indent',
items: [
'faq',
'actual-server-repo-move',
{
type: 'category',
label: 'Troubleshooting',
collapsed: true,
items: [
'troubleshooting/server',
'troubleshooting/shared-array-buffer',
'troubleshooting/reset_password',
'troubleshooting/edge-browser',
],
},
'community-repos',
],
},
{
type: 'category',
label: 'Contributing',
link: {
type: 'doc',
id: 'contributing/index',
},
collapsed: true,
items: [
{
type: 'link',
label: 'Open Bug Reports',
href: 'https://github.com/actualbudget/actual/issues',
},
{
type: 'link',
label: 'Feature Requests',
href: 'https://github.com/actualbudget/actual/issues?q=label%3A%22needs+votes%22+sort%3Areactions-%2B1-desc+',
},
{
type: 'category',
label: 'The Actual Project Structure',
link: {
type: 'doc',
id: 'contributing/project-details/index',
},
items: [
'contributing/project-details/database',
'contributing/project-details/architecture',
'contributing/project-details/feature-flags',
'contributing/project-details/electron',
'contributing/project-details/migrations',
'contributing/project-details/advice',
],
},
'contributing/development-setup',
'contributing/testing',
'contributing/code-style',
'contributing/troubleshooting',
'contributing/i18n',
'contributing/preview-builds',
'contributing/releasing',
'contributing/windows',
{
type: 'category',
label: 'Documentation',
collapsible: false,
className: 'no-indent',
items: ['contributing/writing-docs'],
},
{
type: 'category',
label: 'Project Leadership',
collapsible: false,
className: 'no-indent',
items: [
'contributing/leadership/funding',
'contributing/leadership/triaging-issues',
'contributing/leadership/new-core-contributors-guide',
'contributing/leadership/cursor-ide',
'contributing/leadership/paying-contributors',
],
},
],
},
],
};
module.exports = sidebars;