budgetzero is a free, open-source, privacy-friendly, offline-first budgeting system. Zero-based 'envelope' budgeting. Offline-first storage. Import transactions in several file formats (OFX, QFX, CSV). Carry negative balances into next month. Privacy-focused; zero trackers or analytics.
node.js is required to build it, but it's an HTML page with CSS and Javascript that you can host anywhere. All of your data is stored in your browser's persistent storage and will be lost if you clear your browser's data.