← Voltar para projetos

FinanceOS gestão financeira com isolamento e segurança.

Plataforma web de gestão financeira pessoal que reúne movimentações, cartões, faturas, planejamento e análise de dados em uma experiência multiusuário.

PythonStreamlitPostgreSQLSupabaseCloudflareDocker

Da informação fragmentada a uma visão financeira integrada.

01

O problema

Receitas, despesas, cartões, faturas e documentos financeiros geram informações relacionadas, mas frequentemente acompanhadas de forma separada.

Sem uma visão consolidada, conciliar registros, entender padrões e planejar decisões exige mais trabalho manual.

02

A solução

O FinanceOS concentra o ciclo financeiro em uma única plataforma, mantendo os dados isolados por usuário.

A aplicação conecta registro, conciliação, planejamento, importação documental e análise sem reduzir o produto a um dashboard de leitura.

Do registro cotidiano à leitura estratégica dos dados.

As telas já disponíveis no projeto demonstram os principais momentos da experiência.

Apresentação do FinanceOS com visão financeira, saldo disponível, cartão e evolução mensal
01 / DASHBOARD

Contexto para a próxima decisão

A página inicial aproxima saldos, compromissos e ações frequentes para reduzir a distância entre visualizar e registrar.

  • Resumo da situação financeira
  • Acesso rápido às principais operações
  • Cartões e faturas no mesmo fluxo
  • Planejamento conectado aos registros
Painel de métricas e análises do FinanceOS
02 / ANÁLISES

Dados transformados em leitura financeira

As análises organizam evolução, categorias, períodos e balanço para revelar como o dinheiro se movimenta.

  • Evolução ao longo do período
  • Distribuição por categorias
  • Comparações entre receitas e despesas
  • Apoio ao acompanhamento de hábitos
Tela de acesso protegida do FinanceOS
03 / ACESSO

Experiência multiusuário protegida

Autenticação, sessões e isolamento de dados fazem parte da arquitetura do produto, não apenas da interface de entrada.

  • Autenticação própria
  • Controle de sessões
  • Dados vinculados ao usuário
  • Proteção aplicada também no banco

Camadas conectadas para manter regras e dados consistentes.

A interface Streamlit orquestra os fluxos da aplicação em Python. A camada de dados suporta SQLite e PostgreSQL, com Supabase no ambiente PostgreSQL e entrega pela infraestrutura Cloudflare.

01

Interface

Streamlit apresenta navegação, formulários e dashboards.

02

Aplicação Python

Regras financeiras, autenticação, sessões, conciliação e importação.

03

Persistência híbrida

SQLite ou PostgreSQL conforme o ambiente de execução.

Fluxos do produtoMovimentações • Cartões • Faturas • Planejamento • OCR • Relatórios

Proteção aplicada em mais de uma camada.

Como o domínio envolve informações financeiras pessoais, autenticar o usuário não é suficiente: aplicação, sessão e banco precisam compartilhar o mesmo modelo de isolamento.

01

PBKDF2-HMAC-SHA256

Senhas são processadas com derivação criptográfica, evitando armazenamento em texto puro.

02

Row Level Security

Políticas de RLS reforçam no PostgreSQL/Supabase quais registros cada usuário pode acessar.

03

Controle de sessões

O estado autenticado é tratado como parte explícita do fluxo de acesso da aplicação.

04

Verificação contínua

CodeQL e Dependabot automatizam parte da análise de código e dependências no repositório.

Escolhas alinhadas ao produto e ao estágio atual.

01STREAMLIT

Produto orientado a fluxos e dados

A interface permanece próxima das regras escritas em Python.

Por quê?

Permite evoluir formulários, dashboards e operações sem separar prematuramente frontend e backend.

02SQLITE / POSTGRESQL

Persistência adaptável ao ambiente

A aplicação trabalha com uma arquitetura híbrida de dados.

Por quê?

SQLite reduz atrito em contextos locais, enquanto PostgreSQL atende o cenário multiusuário hospedado.

03OCR

Documentos entram no fluxo

A importação reduz a necessidade de transcrever manualmente informações disponíveis em documentos.

Por quê?

Automação agrega valor quando complementa a conferência do usuário em vez de ocultar possíveis inconsistências.

04RLS

Isolamento também no banco

O controle de acesso não depende exclusivamente da interface.

Por quê?

Defesa em profundidade reduz o impacto de uma consulta inadequada na camada da aplicação.

Complexidade adicionada somente onde protege ou entrega valor.

Os caminhos abaixo representam critérios de evolução, não promessas de funcionalidades já implementadas.

01
CENÁRIO ATUAL

Aplicação Streamlit integrada

Interface e regras evoluem no mesmo ecossistema Python.

SE A EXPERIÊNCIA EXIGIR

Frontend e API separados

Uma separação passa a fazer sentido quando UX, integrações ou clientes independentes justificarem o custo.

02
CENÁRIO ATUAL

Processamento no fluxo

Importações e conciliações permanecem próximas da interação do usuário.

SE O VOLUME EXIGIR

Processamento assíncrono

Filas e workers podem ser considerados quando documentos maiores ou maior concorrência tornarem o fluxo síncrono inadequado.

03
CENÁRIO ATUAL

Dois bancos suportados

SQLite e PostgreSQL atendem ambientes distintos.

SE A MANUTENÇÃO EXIGIR

Convergência de persistência

Reduzir variações pode valer a pena caso o custo de manter comportamentos equivalentes supere o benefício da flexibilidade.

PRINCÍPIO

Tratar segurança como requisito estrutural e evoluir a arquitetura a partir de necessidades observáveis.

Mais do que registrar valores: organizar o ciclo financeiro.

RESULTADO

Uma visão financeira conectada

O FinanceOS reúne operações, cartões, faturas, conciliação, documentos e análises em uma plataforma que preserva o contexto de cada usuário.

APRENDIZADOS

Segurança faz parte do domínio

O projeto aprofundou modelagem financeira, autenticação, sessões, isolamento de dados, compatibilidade entre bancos e automação de qualidade em uma aplicação real.

Quer conhecer o case de infraestrutura?

Explorar InfraOS