261 - Se el dueño de tu economía con Firefly
¿Como gestionar tus finanzas de forma segura y sin una aplicación de terceros? La solución la tienes en gestionar tu economía con Firefly
La nueva sección Comunidad Linux, no solo está resultando muy, pero que muy interesante, sino que además me está descubriendo auténticas perlas. Así, por ejemplo, una de las perlas que dejó el otro día JF en el Comunidad Linux, fue Firefly. Un auténtico gestor de finanzas autohospedado. Ahora podrás ser el auténtico dueño de tu economía con Firefly.
Pero no solo esto, sino que además tienes que tener en cuenta la realimentación. Hace unas semanas en el capítulo 248 de preguntas y respuestas titulado el bucle infinito Eduardo preguntaba por una aplicación de finanzas personales. Y Firefly, no solo es una aplicación de finanzas personales, sino que va mucho mas allá en tanto en cuanto, tu eres el dueño completo de tus finanzas, sin tener que depender de terceros. Y aquí, la palabra dueños adquiere su verdadera dimensión, tu te lo guisas tu te lo comes. Tu alojas el gestor de finanzas y la aplicación de móvil ataca directamente a tu gestor.
Se el dueño de tu economía con Firefly
Antes de nada, agradecerle nuevamente a JF, no solo su participación en el podcast, sino también las perlas que dejó en el mismo, y con las que estoy disfrutando como un niño chico.
¿Que es Firefly?
Por supuesto que lo primero que te estás preguntando es ¿Que es esto de Firefly?. Se trata de un gestor de finanzas personales, auto hospedado y de código abierto. Una aplicación implementada en PHP y liberada bajo licencia GNU Affero General Public License v3.0.
Sobre el auto hospedado
¿Que quiere decir esto de auto hospedado? Quiere decir, que la aplicación, la tienes que poner en marcha en tu propio servidor. Este servidor, puede ser una Raspberry, un VPS o cualquier otra máquina donde la quieras alojar.
Además es realmente interesante y recomendable que esta servidor tenga acceso desde internet. Si no sabes como hacerlo, te recomiendo escuches el episodio 142 del podcast en el que te hablo sobre contenedores accesibles desde internet.
Si, porque esto es otra cuestión interesantes… Aunque podrías desplegar la aplicación directamente en el servidor, mi recomendación es que lo hagas en un contenedor, ya sea Docker o Podman (así le hago un guiño al tutorial sobre Podman.
Pero no solo que lo hagas con contenedores, sino también te recomiendo que lo hagas utilizando Traefik, lo que te permitirá desplegar otros servicios en paralelo de forma sencilla, y sin complicarte la vida con certificados y cuestiones similares.
Algunos detalles importantes del auto hospedado de Firefly,
- Se trata de una aplicación aislada. Nunca se pondrá en contacto con servidores externos a menos que tu lo indiques de forma explícita.
- Tiene una API Rest, que cubre casi todas las partes de Firefly. Esto quiere decir, que puedes automatizarlo hasta límites insospechados. Como dijo no se quien…
Dame una API Rest y gobernaré el mundo
Sobre la gestión de tu economía con Firefly
Como te indicaba Firefly es una herramienta que te ayudará en la gestión de tus finanzas personales. Es una herramienta con la que hacer el seguimiento de gastos e ingresos, de forma que puedas gastar menos y ahorrar mas.
Esto de las finanzas personales es mucho mas sencillo de lo que nos podemos imaginar. El problema, nadie nos ha enseñado. Probablemente esta debería ser una asignatura obligatoria y necesaria, pero…
La cuestión es que cada uno tenemos nuestro propio enfoque, nuestra propia manera de llevar nuestras finanzas. Hay quien hace presupuestos, otros limitan el uso de tarjetas de crédito. Existen cientos de formas de ahorrar dinero.
Firefly funciona según el principio de si sabes donde va tu dinero, puede evitar que vaya allí. Cuando realizas un seguimiento de gastos e ingresos, puedes actuar en consecuencia y ahorrar dinero.
¿Para quien es FireFly?
FireFly es para aquellas personas que quieren realizar una gestión de sus finanzas y controlar donde va su dinero, sin tener que ceder sus datos a terceros, ni subirlos a la nube, sino tenerlos bajo tu propio control. No solo vas a controlar el flujo de tu economía con Firefly, sino que también vas a controlar donde están tus finanzas.
Algunas características de Firefly
Entre otras cosas Firefly te permite hacer lo siguiente,
- Te permite crear y editar transacciones y cuentas y asignarles presupuestos categorías y etiquetas.
- Con Firefly puedes automatizar parte de estas operaciones con transacciones recurrentes y presupuestos automáticos. Estas transacciones están basadas en reglas. Además tienes la posibilidad de crear tus propias reglas.
- Puedes realizar un seguimiento de los pasivos.
- Te permite un sistema de contabilidad de doble entrada.
- Firefly te permite guardar, editar, eliminar depósitos y transferencias.
- Te permite gestionar diferentes tipos de cuentas. Cuentas de activo, cuentas de activos compartidos, cuentas de ahorro, tarjetas de crédito, préstamos, hipotécas,…
- Puedes utilizar presupuestos y organizar las transacciones utilizando categorías.
Y si esto te parece poco,
- Puedes utilizar doble factor de autenticación para mejorar tu seguridad o mejor dicho la seguridad de tu economía con Firefly. En concreto, siempre recomiendo el uso de un doble factor de autenticación, pero en este caso, mas que una recomendación es una obligación.
- Firefly soporta cualquier moneda que puedas imaginar, incluyendo criptomonedas, entre ellas Bitcoin y Ethereum.
- Tienes una imagen Docker para levantar tu propia instancia en segundos.
¿Como funciona Firefly?
Antes de que te lances a que cambiar toda tu forma de gestionar tu economía con Firefly, te recomiendo que le des un vistazo a la descripción del funcionamiento de Firefly, mas allá de lo que yo te pueda explicar aquí. Pero no solo esto, sino que además te recomiendo que lo pruebes no solo en la versión demo, sino que lo instales en tu propio contenedor, y que lo pruebes hasta que llegues a la conclusión, por ti mismo, si esta herramienta satisface tus necesidades o no.
Lo primero es indicarte que Firefly está construido conforme su desarrollador gestiona sus finanzas. Tienes que tener en cuenta esto, porque es posible que Firefly no se adapte a tus necesidades.
Empezamos por el principio.
- El último día del mes en curso haces un presupuesto para saber cuanto dinero vas a necesitar al mes siguiente.
- Con el resultado del presupuesto, el primer día del mes pones ese dinero en tu cuenta corriente.
- Cuanto te pagan tu sueldo, pongamos que es el día 24, este dinero, va directamente a la cuenta de ahorros. Si en lugar de pagar de pagarte una vez al mes, te pagan por semanas, o de cualquier otra forma, esto siempre tiene que seguir el mismo proceso. Ir a la cuenta de ahorros
Dicho esto, me remito a las palabras del desarrollador de Firefly para que sepas controlar o gestionar tus finanzas,
Para estar al tanto de tu economía con Firefly, o como quieras, tienes que estar al tanto de tu economía. No hay atajos.
Si realmente quieres cambiar tus hábitos financieros, debes ingresar cada transacción de forma manual, de forma que sientas el impacto de cada euro que gasta. Esta es la forma de que gastes menos.
Instalación de Firefly
Actualmente tengo instalado Firefly en un VPS detrás, por supuesto, de Traefik. Mi configuración es la siguiente,
version: '3'
services:
fireflyiii:
image: jc5x/firefly-iii:latest
container_name: fireflyiii
restart: unless-stopped
networks:
- proxy
- internal
volumes:
- ./upload:/var/www/html/storage/upload
depends_on:
- fireflyiiidb
env_file:
- fireflyiii.env
labels:
- "traefik.enable=true"
- "traefik.http.routers.firefly.entrypoints=http"
- "traefik.http.routers.firefly.rule=Host(`firefly.tuservidor.es`)"
- "traefik.http.middlewares.firefly-https-redirect.redirectscheme.scheme=https"
- "traefik.http.routers.firefly.middlewares=firefly-https-redirect"
- "traefik.http.routers.firefly-secure.entrypoints=https"
- "traefik.http.routers.firefly-secure.rule=Host(`firefly.tuservidor.es`)"
- "traefik.http.routers.firefly-secure.tls=true"
- "traefik.http.routers.firefly-secure.tls.certresolver=myresolver"
fireflyiiidb:
image: yobasystems/alpine-mariadb:latest
environment:
- MYSQL_RANDOM_ROOT_PASSWORD=yes
- MYSQL_USER=firefly
- MYSQL_PASSWORD=secret_firefly_password
- MYSQL_DATABASE=firefly
volumes:
- ./database:/var/lib/mysql
networks:
- internal
networks:
internal:
proxy:
external: true
En cuanto al archivo con las variables de entorno solo he modificado las siguientes,
DB_CONNECTION=mysql
DB_HOST=fireflyiiidb
DB_PORT=3306
DB_DATABASE=firefly
DB_USERNAME=firefly
DB_PASSWORD=secret_firefly_password
Móvil
Probablemente Firefly sin aplicación móvil se quede coja, en tanto en cuanto esto te permite gestionar el día a día sin tener que sentarte delante del ordenador para gestionar tus finanzas.
Pero esto no te tiene que preocupar en absoluto, porque Firefly tiene su aplicación móvil Android, y funciona a las mil maravillas. La puedes instalar directamente desde la tienda de aplicaciones de Google Play.
Una vez instalado, para configurarlo y poderte conectar con tu Firefly auto hospedado, tienes que crear un token auto hospedado. Esto lo puedes hacer en Options> Profile > OAuth > Personal Access Token
.
De la misma manera, y una vez aquí, te recomiendo que vayas a 2-step verification
y lo habilites para dejar tu instancia lo mas segura posible.
Donaciones
Como de costumbre, indicar que la aplicación sea de código abierto, no quiere decir, que sus desarrolladores vivan del aire. Necesitan comer, como todos en esta vida. Y no solo necesitan alimentarse de físicamente sino también espiritualmente. Digo esto, porque una donación también repercute en la parte espiritual.
Mientras escribía el guión del podcast, he caído en la cuenta que, una donación es mucho mas poderosa que una compra. Si un producto está a la venta, o lo compras o no lo tienes, al menos de forma legal. Sin embargo, en el caso de la donación, el producto ya lo tienes, con lo que donar, es un esfuerzo mayor.
En fin, que si quieres donar, indicarte que puedes patrocinar Firefly a través de Patreon.
Espero que te haya gustado este nuevo episodio del podcast. Si puedes, te agradecería una valoración en iVoox y/o en Apple Podcast.
Más información,
Imagen de portada de Josh Appel en Unsplash
Hola, te hago una consulta, es posible crear una cuenta familiar, por ejemplo para anotar gastos en común con mi señora? Estuve buscando pero no veo nada al respecto
No te sabría decir, siempre lo utilizo en solitario.
Lo siento.
Un saludo.
Muchas gracias por esta guia Lorenzo! Por curiosidad, cómo gestionas la subida de movimientos financieros? Te has montado tu propio sistema a través de la API, lo haces de forma manual, usas el Data Importer…?
¡Un abrazo!