silver-finanas

byVinicius Kwiecien Ruoso

construa um sistema de controle de finanças pessoais muito completo... precisamos de contas, controle de cartão de crédito, categorias com subcategorias, orçamentação, dashboards e gráficos para análises dos dados de gastos e receitas... precisa de importação de dados via pdf de faturas de cartão ou extrados bancários, além de arquivos ofx... sistema de login com possibilidade de multiplos usuários acessarem a mesma conta (por exemplo uma familia)

No preview

Comments (0)

No comments yet. Be the first!

System Requirements

System Requirement Document
Page 1 of 7

System Requirements Document (SRD)

Project Name: silver-finanas

1. Introduction

The silver-finanas project is a comprehensive personal finance management system designed to empower users in Brazil to take control of their financial lives. This system focuses on simplicity and accessibility, catering to individuals and families with limited experience using computers or financial software.

The goal is to provide a robust yet user-friendly platform for managing accounts, credit cards, budgets, categories, and subcategories, while offering powerful dashboards and visualizations for analyzing spending and income data. The system will also support importing financial data from PDFs, bank statements, and OFX files, and allow users to belong to multiple tenants (e.g., families or businesses managing finances together).

This document outlines the system requirements for silver-finanas, ensuring clarity and alignment with Vinicius's vision for the project.

Page 2 of 7

2. System Overview

silver-finanas will be a desktop-first web application that prioritizes usability and simplicity. The system will include:

  • Account management for tracking balances and transactions.
  • Credit card tracking, including statement imports and payment reminders.
  • Categorization of expenses and income, with support for subcategories.
  • Budgeting tools to set financial goals and monitor progress.
  • Interactive dashboards and graphs for data analysis.
  • Secure login functionality with multi-tenant access, allowing users to belong to multiple tenants.
  • Data import capabilities for PDFs, bank statements, and OFX files.
  • Comprehensive audit fields to track user actions, including created_by, created_at, updated_by, and updated_at.

The system will be built using modern technologies to ensure scalability, security, and performance, while maintaining a focus on accessibility for users with minimal technical expertise.

3. Functional Requirements

  • As a User, I should be able to create and manage multiple accounts to track balances and transactions.
  • As a User, I should be able to add and manage credit cards, including importing statements from PDFs and OFX files.
  • As a User, I should be able to categorize expenses and income into categories and subcategories for better organization.
  • As a User, I should be able to set budgets for specific categories and monitor progress against those budgets.
  • As a User, I should be able to view dashboards with graphs and charts to analyze spending and income trends.
  • As a User, I should be able to securely log in to my account and belong to multiple tenants, switching between them as needed.
  • As a User, I should be able to invite other users to share access within a tenant.
  • As a User, I should be able to import financial data from PDFs, bank statements, and OFX files.
  • As a User, I should be able to manually trigger selective re-runs of SRD regeneration for updated system documentation.

4. User Personas

Page 3 of 7

4.1 Primary User

Name: João Silva
Description: João is a 35-year-old father who manages his family's finances. He has basic computer skills and wants a simple tool to track expenses, income, and budgets for his household.

4.2 Secondary User

Name: Maria Oliveira
Description: Maria is a 28-year-old freelancer who needs to organize her personal and business finances. She values clear visualizations and easy categorization of expenses.

4.3 Guest User

Name: Ana Costa
Description: Ana is a 60-year-old retiree who shares financial responsibilities with her spouse. She prefers straightforward navigation and minimal complexity.

4.4 Business User

Name: Pedro Santos
Description: Pedro is a 40-year-old small business owner who manages finances for multiple business entities. He needs a system that supports multi-tenant functionality to separate personal and business accounts.

Page 4 of 7

5. Visuals Colors and Theme

The design will focus on simplicity and accessibility, with a color palette that is calming and easy on the eyes:

  • Background: #F4F9F9 (soft pale blue)
  • Surface: #FFFFFF (pure white for clarity)
  • Text: #2D3748 (deep slate gray for readability)
  • Accent: #38B2AC (teal for actionable elements)
  • Muted Tones: #A0AEC0 (soft gray for secondary elements)

This palette ensures a clean and professional look while maintaining user comfort during extended use.

6. Signature Design Concept

The silver-finanas homepage will feature a living financial tree that grows and evolves based on user data.

Concept Details:

  • Visual: The homepage will display a tree with branches representing financial categories. Leaves will symbolize subcategories, and their size and color will reflect spending or income levels.
  • Interaction: Users can click on branches to zoom into specific categories, revealing detailed graphs and data. Hovering over leaves will display quick stats in tooltips.
  • Animation: The tree will subtly sway, and new leaves will grow as users add data, creating a sense of life and progress.
  • Color Shifts: The tree's color scheme will change based on financial health — green for surplus, yellow for balanced, and red for overspending.
  • Micro-interactions: Smooth transitions, hover effects, and tooltips will make the experience engaging and intuitive.

This unique design will make the homepage memorable and encourage users to explore their financial data in a visually captivating way.

Page 5 of 7

7. Non-Functional Requirements

  • The system must support secure authentication and authorization for multi-tenant access.
  • The system must handle large volumes of financial data efficiently.
  • The system must provide responsive dashboards and graphs with minimal loading times.
  • The system must ensure data privacy and comply with relevant regulations in Brazil.
  • The system must be accessible to users with minimal technical expertise.
  • The system must include audit fields (created_by, created_at, updated_by, updated_at) for tracking user actions.

8. Tech Stack

Frontend

  • React for Web

Backend

  • Python
  • FastAPI

Database

  • MySQL (preferred for relational data)
  • Alembic for migrations

AI Models

  • GPT 5.2 for user-friendly responses
Page 6 of 7

AI Tools

  • Langchain

Local Orchestration

  • Docker
  • docker-compose

Server-Side Orchestration

  • Kubernetes

9. Assumptions and Constraints

  • The system will initially focus on desktop usage, with potential expansion to mobile platforms in the future.
  • Users will primarily be located in Brazil, so the system will default to Portuguese language and BRL currency.
  • The system must integrate with Brazilian financial institutions for data import.
  • The system will prioritize simplicity and usability over advanced features for the initial release.
  • The system will use a tenant_id concept to allow users to belong to multiple tenants.
  • The system will include audit fields to track user actions and data changes.
Page 7 of 7

10. Glossary

  • PDF: Portable Document Format, used for importing financial statements.
  • OFX: Open Financial Exchange, a file format for exchanging financial data.
  • BRL: Brazilian Real, the currency used in Brazil.
  • Dashboard: A visual interface displaying key financial metrics and graphs.
  • Multi-tenant Access: The ability for users to belong to multiple tenants and manage shared financial data within each tenant.
  • Audit Fields: Metadata fields (created_by, created_at, updated_by, updated_at) used to track changes and user actions.

This document provides a clear and detailed roadmap for the development of silver-finanas, ensuring alignment with Vinicius's vision and the needs of the target audience.

No completed page designs yet.

Completed design pages will appear here when they are ready to preview.

Login: Sign In
Dashboard: View Summary
Accounts: View Balances
Transactions: View History
Budget: View Progress
Profile: Manage Family Access