Je opent je databasetool en Activiteitenweergave laat zien dat het 400 MB RAM opslokt nog voordat je een bestand hebt geladen. De interface hapert bij het scrollen door een grote tabel. Sneltoetsen komen niet overeen met wat elke andere Mac-app gebruikt. Dit gebeurt er wanneer je SQLite-editor eigenlijk een webbrowser is die doet alsof hij een desktop-app is.
Het Electron-probleem
Electron-apps bundelen een volledige Chromium-browser om hun interface te renderen. Voor een database-editor — een app die vooral tabellen met tekst weergeeft — is dit extreme overhead. Je krijgt trage opstarttijden, hoog geheugengebruik en een interface die nooit helemaal goed voelt op macOS. Bestandsdialogen zien er anders uit. Tekstweergave klopt net niet. De app verschijnt niet correct in Finder's "Open met"-menu.
Sommige ontwikkelaars kiezen voor Electron omdat het hen toelaat vanuit één codebase te leveren voor Mac, Windows en Linux. Dat is een redelijke zakelijke beslissing, maar jij bent degene die de prestatietol betaalt telkens wanneer je een database opent.
Tome: gebouwd met AppKit, geen webbrowser
Tome is een native macOS-toepassing gebouwd met Swift en AppKit. Het gebruikt dezelfde frameworks als Finder, Xcode en elke andere first-party Apple-app. Het resultaat is een SQLite-editor die binnen een seconde opstart, soepel scrollt door tienduizenden rijen en een fractie gebruikt van het geheugen dat een Electron-app nodig zou hebben.
Echte macOS-integratie
Tome registreert zich als handler voor .db-, .sqlite- en .sqlite3-bestanden. Dubbelklik op een database in Finder en het opent direct. Sleep bestanden naar het dock-icoon. Gebruik macOS-tabs en vensterbeheer. Alles werkt zoals je van een Mac-app verwacht, omdat het een Mac-app is.
Bewerken zonder SQL te schrijven
Klik op een willekeurige cel om de waarde inline te bewerken. Voeg rijen in, verwijder rijen en maak nieuwe tabellen met een visuele editor. Wanneer je SQL nodig hebt, heeft de ingebouwde query-editor syntaxismarkering en auto-aanvulling — maar voor dagelijkse bewerkingen hoef je er nooit aan te komen.
Lichtgewicht van ontwerp
Tome doet één ding goed: SQLite. Het probeert niet te verbinden met PostgreSQL, MySQL of MongoDB. Door zich exclusief op SQLite te richten, is elke functie geoptimaliseerd voor het formaat waar je daadwerkelijk mee werkt.