modularsoftware/laravel-gedcom
Laravel package for reading and parsing GEDCOM genealogy files. It loads GEDCOM data into an object-oriented model of individuals, families, events, and sources, making it easy to work with family-history records inside your Laravel application.
CONC/CONT line folding, custom _-prefixed tags, non-standard date formats, and vendor-specific dialect drift will eat 2–6 engineer-weeks. Adopting this package converts that into days, leaving budget for your actual differentiator.Adopt when all of these hold:
Look elsewhere when:
One legal/product note worth flagging early: GEDCOM files are user data and generally fine to import on a user's instruction, but the GEDCOM specification itself is distributed by FamilySearch under terms that have historically been read as restricting independent implementations. Low practical risk for a consumer app, but it belongs in the same conversation as your terms of service and data-processing agreement — not discovered later.
To executives (one paragraph): GEDCOM is the PDF of family history — the universal file format every genealogy product on earth reads and writes. Supporting it is table stakes for credibility and our best lever against incumbents: it means a customer can leave Ancestry, MyHeritage, or FamilySearch with their tree intact and land in our product in minutes, and it means we can promise them they can leave us just as easily. We can get both directions — import and export — for days of engineering effort rather than the multi-week build a hand-rolled parser would require, using a small MIT-licensed open-source component that fits our existing Laravel stack. The trade-off is maintenance risk on a low-activity project, which we mitigate by forking it internally and owning it. Recommend we adopt it as the substrate for an "Import your tree" onboarding flow and a standing "Export my data" feature, and treat import reconciliation (showing users what we found before we commit it) as our own product investment.
To engineering (summary): MIT-licensed, Laravel-native, parses GEDCOM into the framework and writes GEDCOM 5.5.1 back out. Saves us the parser and the dialect whack-a-mole: CONC/CONT folding, encoding handling, custom _-prefixed vendor tags, non-standard date strings. Constraints you should plan around: GEDCOM 5.5.1 only, no 7.0; last release January 2023; tiny community (~22 stars) — assume we own this code from day one. Plan to vendor or fork it, wrap it behind our own GenealogyImporter interface so we can swap implementations, run every import in a queued job, and stream/validate before loading large files. Budget a spike to confirm memory behavior on a 100k-individual file before we build the import UI on top of it.
How can I help you explore Laravel packages today?