Repository navigation
Releases: zenonymous/box3balans
Release list
v0.1.45
docker compose pull && docker compose up -dAan de slag: waarden gaan niet meer verloren
Vulde je bij Aan de slag → Waarden op 1 januari twee waarden heel snel na elkaar in, bijvoorbeeld met automatisch invullen, dan kon de tweede de eerste weer wissen, terwijl er "✓ Opgeslagen" stond. De waarden van een rekening worden nu na elkaar opgeslagen. Twijfel je, kijk dan bij Rekeningen → Waarden per jaar of alles er staat.
Inloggen en tweestapsverificatie
- Herstelcodes: het codeveld bij het inloggen opent op een telefoon geen cijfertoetsenbord meer, want herstelcodes hebben ook letters.
- Bewaren: na het aanzetten van tweestapsverificatie kun je de herstelcodes kopiëren of als tekstbestand downloaden.
- Foutmeldingen: ze noemen geen interne veldnamen meer, zoals "password:" voor de tekst.
- Toegankelijkheid:
- schermlezers lezen foutmeldingen voor;
- de cursor gaat naar het veld waar de fout over gaat;
- de uitleg bij een veld wordt met dat veld voorgelezen, in elk formulier;
- de knop zegt "Account aanmaken…" of "Inloggen…" terwijl hij bezig is.
Ook
- Resultaat en Inkomsten verwijzen, als er nog niets is, naar Transacties en Koppelingen.
- Bij de box 3-schatting staat "zonder fiscale partner" in plaats van "alleen".
- Draai je Box3balans zonder Docker, dan zegt de waarschuwing over onversleutelde back-ups nu dat je
BACKUP_PASSPHRASE_FILEofBACKUP_PASSPHRASEmoet zetten. De README zegt het ook. - De berekening van het werkelijk rendement is opgesplitst in kleinere stappen, zonder verschil in uitkomst.
v0.1.44
docker compose pull && docker compose up -dWoning gekocht of verkocht? Vul de bedragen in
Waarden per jaar van een woning hebben nu de kolommen Gekocht of verbeterd en Verkocht voor. Heb je een woning gekocht of verkocht in een jaar dat al in Box3balans staat, vul ze dan aan:
- Gekocht: 0 als waarde voor het jaar van aankoop, en bij Gekocht of verbeterd de aankoopprijs met de kosten van de aankoop. Verbeteringen horen daar ook.
- Verkocht: bij Verkocht voor de verkoopprijs min de kosten van de verkoop, en 0 als waarde voor het jaar erna.
Zonder die bedragen telde een verkochte woning in het werkelijk rendement als verlies van haar hele waarde.
Woningen in de vooruitblik op 2028
De vooruitblik onder Box 3 → Werkelijk rendement rekent woningen en andere onroerende zaken nu zoals het wetsvoorstel dat de Tweede Kamer aannam. Eerder telde hij elk jaar hun waardeverandering.
- Bij verkoop: de winst wordt pas belast als je de woning verkoopt of als ze box 3 verlaat. Ze telt vanaf de WOZ-waarde van het jaar na het eerste dat je invulde, zoals het wetsvoorstel voor 2028 begint bij de WOZ-waarde van 2029.
- Elk jaar: de huur telt als de woning met huurbescherming verhuurd is of als de huur hoger is. Anders telt de vastgoedbijtelling: 3,35% van de WOZ-waarde. Dat percentage kun je als aanname aanpassen.
- Kosten: de kosten van een woning gaan alleen af van de huur.
- Nog niet belast: de vooruitblik zegt hoeveel winst op woningen nog op een verkoop wacht.
Wat de app aanneemt waar het wetsvoorstel niets zegt, staat in docs/box3-sources.md.
v0.1.43
docker compose pull && docker compose up -dBelasting ingehouden op rente in het buitenland
Spaar je bij een bank in het buitenland, bijvoorbeeld via Raisin, dan houdt dat land vaak bronbelasting in op de rente. Die leg je nu vast bij Waarden per jaar (#36):
- Vink bij de rekening In het buitenland aan. Een bankrekening of uitgeleend geld krijgt dan de kolom Ingehouden in het buitenland, met het land dat het inhield.
- Vul de rente bruto in. Het Werkelijk rendement telt de rente bruto; de belasting staat bij de ingehouden belasting, naast de dividendbelasting.
- Voor de aangifte toont de belasting en het land bij de rekening, en per land onder Ingehouden belasting.
Voor het lopende jaar, zolang de waarde op 1 januari van volgend jaar nog niet bekend is, telt de eindwaarde nu mee met wat er sindsdien bij kwam en af ging: een storting telt niet meer als verlies.
Bybit-exports inlezen
Transacties → CSV importeren herkent nu de bestanden Asset Change Details die Bybit maakt bij Account → Data Export → Transaction Log, één voor de Unified Trading Account en één voor de Funding-rekening. Importeer ze allebei in dezelfde rekening (#51). Futures blijven weg, met een waarschuwing om het saldo van de munt waarin ze worden afgerekend na te kijken.
De herkenner is gebouwd op de indeling die andere open-sourceprogramma's voor Bybit EU gebruiken en nog niet getest met een echte export. Gebruik je Bybit en klopt er iets niet, meld het in #51 (zonder bedragen).
Ook
- Dialogen hebben een naam voor schermlezers.
- Aandacht nodig laadt pas als je de pagina opent.
- Nieuwe documentatie: architectuur en beveiligingsonderbouwing, ook in het Engels.
- Wie wil bijdragen vindt in CONTRIBUTING.md de issues die goed zijn om mee te beginnen.
v0.1.42
docker compose pull && docker compose up -dBack-ups terugzetten met alleen de naam
cli.js restore en cli.js decrypt nemen nu de naam van een back-up zoals cli.js list hem toont; /backups/ ervoor is niet meer nodig:
docker compose exec app node dist/cli.js list
docker compose exec app node dist/cli.js restore box3balans-20261026-030000-auto.json.gz.encEen volledig pad werkt nog steeds.
Ook
- De documentatie is er nu ook in het Engels: README.en.md en
docs/en/. In de app linkt Instellingen → Netwerk in het Engels naar de Engelse uitleg. - De README beschrijft hoe Box3balans met AI-hulp wordt gemaakt.
- Beveiliging: CodeQL draait nu als eigen workflow, en Box3balans heeft het OpenSSF Best Practices-badge (passing).
v0.1.41
docker compose pull && docker compose up -dBack-ups: de wachtzin gaat nooit meer verloren
Was het bestand met de wachtzin van je back-ups (/data/backup-passphrase) er wel maar leeg, dan maakte Box3balans een nieuwe wachtzin. Back-ups die met de oude waren versleuteld, waren dan niet meer terug te zetten. Nu start Box3balans in dat geval niet, en zegt het hoe je de wachtzin terugzet (uit je wachtwoordmanager).
- Kan Box3balans het bestand niet lezen, dan krijg je nu een duidelijke melding in plaats van alleen
EACCES. - Verander je
PUID/PGID, dan krijgt de nieuwe gebruiker het bestand nu ook, net als de andere bestanden in/data. - Bij het starten volgt Box3balans geen symbolische links meer in
/dataals het bestanden aan die gebruiker geeft (extra beveiliging).
Ook
- Beveiligingsupdates van drie onderdelen (fast-uri, ip-address en happy-dom).
npm auditmeldt nu niets meer. - Voor de aangifte zonder belastingjaar was een lege pagina. Nu staat er hoe je er een krijgt, net als op de pagina Box 3.
- Posities zei "Geen posities gevonden" als je nog niets had vastgelegd. Nu wijst het naar Aan de slag.
- De inventaris van edelmetaal toonde "0 pieces". Dat is nu "0 stuks".
- De melding over onversleutelde back-ups noemt nu ook
BACKUP_PASSPHRASE(voor wie Box3balans zonder Docker draait).
v0.1.40
docker compose pull && docker compose up -dBeter leesbaar en beter te bedienen
Een controle van alle pagina's op toegankelijkheid en gebruiksgemak (Nederlands en Engels, telefoon en computer, licht en donker) leverde deze verbeteringen op:
- Knoppen in donkere modus zijn beter leesbaar: witte tekst op de blauwe knoppen haalde niet het vereiste contrast (3,6:1, WCAG vraagt 4,5:1); nu 5,1:1.
- Tabbladen op een telefoon scrollen nu binnen hun eigen balk. Op Geschiedenis schoof de hele pagina zijwaarts.
- Geschiedenis toont bedragen als € 18.000,00 in plaats van 18000, getallen in je gekozen notatie en tijden in de taal van de app. Velden die van leeg naar 0 gingen worden niet meer apart getoond.
Ook
- De (i)-knopjes en de schakelaars op Netwerk hebben een groter tikvlak (24 × 24 px).
- Tabbladen werken met de pijltjestoetsen, Home en End.
- Links in de checklist voor 1 januari noemen voor schermlezers de rekening ("Transacties van Bitvavo").
- Het label "Toegevoegd" heeft meer contrast, knoppen tonen het handje, en bij een kind staat nu "Wordt 18 op …".
v0.1.39
docker compose pull && docker compose up -dING Eenvoudig Beleggen en Zelf op de Beurs
Box3balans leest nu het Historisch portefeuilleoverzicht van ING (CSV; in Mijn ING onderaan je beleggingsrekening, op elke datum). Het werkt als het portefeuilleoverzicht van DEGIRO:
- Maak een rekening (soort broker, aanbieder ING).
- Lees bij CSV importeren het overzicht van 31 december in: de dag staat in het bestand.
- Je fonds wordt aangemaakt op ISIN, met de dagkoers van Yahoo, en met Corrigeren zet je de rekening gelijk aan het overzicht.
Voor box 3 is dat elk jaar in januari genoeg. Getest met een echt overzicht van Eenvoudig Beleggen (#34).
Ook
- Een fonds op een portefeuilleoverzicht dat nog niet in Box3balans staat, wordt nu meteen aangemaakt, ook bij DEGIRO. Zo kun je een verschil met één klik corrigeren, ook zonder transacties.
v0.1.38
docker compose pull && docker compose up -dBitcoin-wallets via je eigen server
Een Bitcoin-wallet volgt Box3balans via mempool.space. Bij een xpub ziet mempool.space daardoor welke adressen bij elkaar horen, en dus het saldo en de geschiedenis van die hele wallet (niet van wie hij is). Draai je zelf een mempool- of Electrs-server, bijvoorbeeld op een Umbrel of Start9, dan kun je Box3balans nu daar laten kijken: zet in .env
MEMPOOL_URL=http://192.168.1.10:3006/apimet het adres van de API van je eigen server, en herstart. Er gaat dan niets over je Bitcoin-wallets je netwerk uit. Gewoon http mag op je eigen netwerk (een privé-adres, Tailscale, of een lokale naam zoals umbrel.local); daarbuiten alleen https. Je server staat bij de wallets onder Instellingen → Netwerk. Zonder deze instelling verandert er niets (#81).
v0.1.37
docker compose pull && docker compose up -dBack-ups zijn nu vanzelf versleuteld
Had je geen BACKUP_PASSPHRASE ingesteld, dan maakt Box3balans bij de eerste start na deze update een wachtzin en versleutelt het daarmee de nieuwe back-ups. Zo is een kopie op je NAS-back-up of in de cloud niet meer te lezen voor wie hem in handen krijgt.
Zet de wachtzin meteen in je wachtwoordmanager. Je vindt hem onder Instellingen → Back-ups (na je wachtwoord); Aandacht nodig herinnert je eraan. Zonder de wachtzin kun je een nieuwe back-up niet terugzetten als de gegevens van je server weg zijn (een nieuwe NAS, een kapotte schijf). De wachtzin staat in het volume app-data, naast de app-sleutel, niet in de back-upmap.
- Had je al een eigen
BACKUP_PASSPHRASE, dan verandert er niets. - Liever onversleuteld: zet
BACKUP_ENCRYPT=falsein.env. - Oudere, onversleutelde back-ups blijven gewoon terug te zetten.
Ook
- Back-ups worden per tabel weggeschreven in plaats van eerst helemaal in het geheugen: minder geheugen bij een grote database, en de app blijft reageren terwijl de back-up loopt. Het bestand is hetzelfde als voorheen.
- Elke uitgave krijgt een ondertekende beschrijving van hoe de bestanden zijn gebouwd (SLSA-provenance); controleren kan met
gh attestation verify, zie SECURITY.md.
v0.1.36
docker compose pull && docker compose up -d- Sneller met een lange geschiedenis. Box 3 en de vooruitblik op 2028 lezen alle transacties nu één keer per keer dat je de pagina opent, in plaats van per datum. Met 50.000 transacties (bijvoorbeeld jaren dagelijkse stakingbeloningen) gaat één jaar van 1,7 naar 0,9 seconde en de vooruitblik van 9 naar 2,3 seconden (#84).
- Binance: handel tussen twee munten. Een ruil van bijvoorbeeld ETH voor BTC werd overgeslagen, zodat de saldi daarna niet klopten. Hij komt nu binnen als een verkoop en een aankoop, elk tegen de slotkoers van die munt op die dag (#75). Heb je een Binance-export al ingelezen, lees hem dan opnieuw in: eerder ingelezen regels worden herkend, alleen de ruilen komen erbij.
- Tests voor de pagina's zelf van box 3 en de CSV-import, naast die van de server (#85).