Skip to content

Code-Castor28/finanplanen

Repository files navigation

Finanplanen

Aplicación web fullstack para la gestión de finanzas personales con soporte multi-inquilino


Typing SVG


📌 Descripción

Finanplanen es una aplicación web diseñada para ayudarte a tomar el control total de tus finanzas personales. Permite registrar ingresos y gastos, administrar múltiples cuentas (crédito, débito, efectivo), establecer presupuestos mensuales por categoría, definir metas de ahorro, y programar transferencias recurrentes entre cuentas. Con soporte multi-inquilino, es ideal tanto para uso personal como para pequeños equipos o familias que deseen centralizar su gestión financiera.


🛠️ Stack

Capa Tecnología
Backend Django 4.2.20
Base de datos MySQL
Frontend HTML5 · CSS3 · JavaScript
Autenticación Django Auth
Tareas asíncronas Celery + Redis
Imágenes Pillow

⚙️ Instalación

Requisitos previos

  • Python 3.10+
  • MySQL corriendo localmente
  • Redis (para Celery)
  • Git

Pasos

# 1. Clonar el repositorio
git clone https://github.com/Code-Castor28/finanplanen.git
cd finanplanen

# 2. Crear entorno virtual
python -m venv venv
source venv/bin/activate        # Linux/Mac
venv\Scripts\activate           # Windows

# 3. Instalar dependencias
pip install -r requirements.txt

# 4. Configurar variables de entorno
cp .env.example .env
# Editar .env con tus valores

# 5. Crear la base de datos MySQL
mysql -u root -p -e "CREATE DATABASE finanplanen CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;"

# 6. Aplicar migraciones
python manage.py migrate

# 7. Crear superusuario
python manage.py createsuperuser

# 8. Correr el servidor
python manage.py runserver

Abrí http://127.0.0.1:8000 en tu navegador.


🌱 Variables de entorno

Creá un archivo .env en la raíz del proyecto basado en .env.example:

Variable Descripción Ejemplo
SECRET_KEY Clave secreta de Django django-insecure-...
DEBUG Modo depuración True
DB_NAME Nombre de la base de datos finanplanen
DB_USER Usuario de la base de datos root
DB_PASSWORD Contraseña de la base de datos
DB_HOST Host de la base de datos 172.31.128.1
DB_PORT Puerto de la base de datos 3306
ALLOWED_HOSTS Hosts permitidos *

🗂️ Estructura del proyecto

finanplanen/
├── apps/
│   ├── accounts/          # Cuentas financieras (crédito, débito, efectivo)
│   ├── budgets/           # Presupuestos mensuales por categoría
│   ├── categories/        # Categorías y etiquetas
│   ├── core/              # Dashboard principal e infraestructura
│   ├── savings/           # Metas de ahorro y depósitos
│   ├── theme/             # Personalización de temas (colores, íconos)
│   ├── transactions/      # Ingresos y gastos
│   ├── transfers/         # Transferencias entre cuentas
│   └── users/             # Usuarios, autenticación e inquilinos
├── config/
│   └── settings/          # Configuración de Django (base, dev, prod)
├── static/                # Archivos estáticos (CSS, JS)
├── templates/             # Templates HTML
├── media/                 # Archivos subidos (comprobantes, etc.)
├── manage.py
├── requirements.txt
└── .env.example

🚀 Uso

Módulos principales

Módulo Descripción
Dashboard Panel principal con resumen de balance total, ingresos/gastos del mes, gráficos de evolución (6 meses) y distribución por categorías
Cuentas Administración de cuentas de crédito, débito y efectivo con saldo en tiempo real
Transacciones Registro de ingresos y gastos con soporte para comprobantes
Presupuestos Límites de gasto mensual por categoría con indicador de progreso y alertas de exceso
Metas de ahorro Definición de objetivos de ahorro con seguimiento de depósitos y porcentaje de avance
Transferencias Transferencias entre cuentas con soporte para recurrencias (diarias, semanales, mensuales)
Categorías Organización de transacciones por categorías y etiquetas

Tareas programadas (Celery Beat)

  • Ejecución de recurrencias (diaria a las 6:00 AM) — procesa transferencias recurrentes
  • Recordatorio de tarjetas de crédito (diaria a las 9:00 AM) — notifica próximos pagos

Hecho con ❤️ por Code-Castor28

About

Finanplanen es una aplicación web diseñada para ayudarte a tomar el control total de tus finanzas personales. Permite registrar ingresos y gastos, administrar múltiples cuentas (crédito, débito, efectivo)

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Packages

 
 
 

Contributors