Expense Tracker es una aplicación de gestión de finanzas personales desarrollada en Java. La aplicación permite a los usuarios realizar un seguimiento de sus ingresos y gastos, ayudándoles a gestionar sus finanzas de manera más eficiente. Los usuarios pueden agregar, actualizar y eliminar registros de ingresos y gastos. La aplicación también permite exportar e importar datos desde archivos CSV para persistir y cargar registros financieros.
El proyecto está basado en la práctica del proyecto Expense Tracker descrito en Roadmap.sh.
- Seguimiento de Ingresos y Gastos: Los usuarios pueden agregar registros de ingresos y gastos con una descripción, monto, categoría y fecha.
- Importar y Exportar Datos: La aplicación puede leer y guardar datos de ingresos y gastos desde/hacia archivos CSV.
- Operaciones CRUD:
- Crear nuevos registros de ingresos y gastos.
- Leer registros por mes o todos los registros.
- Actualizar detalles de ingresos y gastos.
- Eliminar registros.
- Ver Resúmenes: La aplicación proporciona un resumen del total de ingresos y gastos para cualquier mes especificado.
- Interfaz CLI: La aplicación utiliza una interfaz de línea de comandos (CLI) para interactuar con los usuarios.
- Java 11 o superior
- Un IDE Java (por ejemplo, IntelliJ IDEA, Eclipse) o un editor de texto
- Maven (opcional para construir y gestionar dependencias)
-
Clona el repositorio:
git clone https://github.com/kgonzagao/expense-tracker.git cd expense-tracker
-
Compilar y ejecutar el programa: Usando un IDE: Abre el proyecto en tu IDE Java preferido y ejecuta ExpenseTrackerCLI.java. Usando Maven (si estás utilizando Maven para la gestión de dependencias):
mvn clean compile exec:java -Dexec.mainClass="ExpenseTrackerCLI"
-
Interactuar con la CLI:
-
Una vez que la aplicación se inicie, sigue las instrucciones en pantalla para cargar, guardar o modificar registros.
-
Ejemplo de las opciones del menú:
Menú: 1. Cargar archivo CSV 2. Guardar archivo CSV 3. Agregar Ingreso 4. Agregar Egreso 5. Listar Ingresos 6. Listar Egresos 7. Actualizar Ingreso/Egreso 8. Eliminar Ingreso/Egreso 9. Salir
Este proyecto está bajo la Licencia Apache 2.0