.deploy | ||
.github | ||
.sandstorm | ||
app | ||
bootstrap | ||
config | ||
database | ||
public | ||
resources | ||
routes | ||
storage | ||
tests | ||
.dockerignore | ||
.env.example | ||
.gitattributes | ||
.gitignore | ||
.htaccess | ||
.scrutinizer.yml | ||
.travis.yml | ||
app.json | ||
artisan | ||
changelog.md | ||
composer.json | ||
composer.lock | ||
COPYING | ||
crowdin.yml | ||
docker-compose.yml | ||
Dockerfile | ||
Dockerfile.amd64 | ||
Dockerfile.arm | ||
Dockerfile.arm64 | ||
index.php | ||
LICENSE | ||
nginx_app.conf | ||
package.json | ||
phpunit.coverage.specific.xml | ||
phpunit.coverage.xml | ||
phpunit.xml | ||
Procfile | ||
readme.md | ||
server.php | ||
webpack.mix.js | ||
yarn.lock |
Firefly III
Introduction
"Firefly III" is a (self-hosted) manager for your personal finances. It can help you keep track of your expenses and income, so you can spend less and save more. Firefly III supports the use of budgets, categories and tags. It can import data from external sources and it has many neat financial reports available. Here are some screenshots:
Purpose
Personal financial management is pretty difficult, and everybody has their own approach to it. Some people make budgets, other people limit their cashflow by throwing away their credit cards, others try to increase their current cashflow. There are tons of ways to save and earn money. Firefly III works on the principle that if you know where your money is going, you can stop it from going there.
By keeping track of your expenses and your income you can budget accordingly and save money. Stop living from paycheck to paycheck but give yourself the financial wiggle room you need.
You can read more about this in the official documentation.
Features
Firefly III is pretty feature packed. Some important stuff first:
- It is completely self-hosted and isolated, and will never contact external servers until you explicitly tell it to.
- It features a REST JSON API that covers almost every part of Firefly III.
- There are many translations available.
- All pages feature help texts and support popups.
The most exciting features are:
- Create recurring transactions to manage your money
- Rule based transaction handling with the ability to create your own rules
- Import data from external systems
Then the things that make you go "yeah OK, makes sense".
- A double-entry bookkeeping system
- You can store, edit and remove withdrawals, deposits and transfers. This allows you full financial management
- You can manage different types of accounts
- Asset accounts
- Shared asset accounts (household accounts)
- Saving accounts
- Credit cards
- Loans, mortgages
- It's possible to create, change and manage money using budgets
- Organize transactions using categories
- Save towards a goal using piggy banks
- Predict and anticipate bills
- View income and expense reports
- Organize expenses using tags
And the things you would hope for but not expect:
- 2 factor authentication for extra security 🔒
- Supports any currency you want, including crypto currencies such as ₿itcoin and Ξthereum
- There is a Docker image, a Sandstorm.io grain and an Heroku script.
- Lots of help text in case you don't get it
And to organise everything:
- Clear views that should show you how you're doing
- Easy navigation through your records
- Browse back and forth to see previous months or even years
- Lots of charts because we all love them
- If you feel you’re missing something you can just ask me and I’ll add it!
Who is it for?
This application is for people who want to track their finances, keep an eye on their money without having to upload their financial records to the cloud. You're a bit tech-savvy, you like open source software and you don't mind tinkering with (self-hosted) servers.
Get started
There are many ways to run Firefly III
- There is a demo site with an example financial administration already present.
- You can install it on your server.
- You can run it using Docker.
- You can deploy to Heroku.
- Please read the considerations when using Heroku first though.
- You can deploy to Sandstorm.io.
- Note that you must have a paid Sandstorm account for this to work, or you must self-host your Sandstorm server.
- You can install it using Softaculous. These guys even have made another demo site!
- You can install it using AMPPS
- You can install it with YunoHost.
- Even more options are on the way!
Update your instance
Make sure you check for updates regularly. Your Firefly III instance will ask you to do this. Upgrade instructions can be found in the official documentation.
Contribute
Your help is always welcome! Feel free to open issues, ask questions, talk about it and discuss this tool. I've created several social media accounts and I invite you to follow them, tweet at them and post to them. There's reddit and Twitter. It's not very active but it's a start!
Of course, there are some contributing guidelines and a code of conduct, which I invite you to check out.
I can always use your help squashing bugs, thinking about new features or translating Firefly III into other languages.
For all other contributions, see below.
The goal
Firefly III should give you insight into and control over your finances. Money should be useful, not scary. You should be able to see where it is going, to feel your expenses and to... wow, I'm going overboard with this aren't I?
But you get the idea: this is your money. These are your expenses. Stop them from controlling you. I built this tool because I started to dislike money. Having it, not having, paying bills with it, etc. But no more. I want to feel "safe", whatever my balance is. And I hope this tool can help. I know it helps me.
Contact
You can contact me at thegrumpydictator@gmail.com, you may open an issue or contact me through the various social media pages there are: reddit, Twitter and Facebook.
Over time, many people have contributed to Firefly III.
Other stuff
Tools
Several users have built pretty awesome stuff around the Firefly III API. Check out these tools:
Want to be in this list? Let me know!
Versioning
We use SemVer for versioning. For the versions available, see the tags on this repository.
License
This work is licensed under the GNU Affero General Public License v3.
Donate
If you like Firefly III and if it helps you save lots of money, why not send me a dime for every dollar saved!
OK that was a joke. You can donate using PayPal or Patreon.
Thank you for considering donating to Firefly III!
Alternatives
If you are looking for alternatives, check out Kickball's Awesome-Selfhosted list which features not only Firefly III but also many other noteworthy alternatives.
Badges
I like badges!