Google a publié Gumbo en mode Open source, une bibliothèque d'analyse HTML écrite en C. Gumbo adhère à l’algorithme d'analyse du HTML5, en surmontant tous les tests html5lib-0.95 et a été également testé sur plus de 2,5 milliards de pages indexées par Google.
Selon la page de description du projet, le but de proposer Gumbo est de fournir aux développeurs une bibliothèque légère d'analyse HTML qui n'a aucune dépendance extérieure et peut-être appelée à partir de la majorité des langages de programmation. La bibliothèque pourrait être incluse dans un validateur de page web, des analyseurs statiques, des modèles de langage, ou des outils de refactoring, etc….
Google considère Gumbo comme « robuste et résistant aux mauvais inputs », mais il recommande de ne pas maintenir des pointeurs vers certaines structures de données internes, car l'API est susceptible de changer dans le futur. Cependant, l'API est considérée comme assez stable, l'équipe est en attente des commentaires des utilisateurs avant de la délivrer en version 1.0, ce qui devrait arriver très prochainement.
Certaines des prochaines fonctionnalités sont les suivantes:
- Prise en charge des derniers changements de la spécification HTML5 pour supporter le modèle de balisage
- Prise en charge de l'analyse de fragment
- Rapports d'erreur complet
- Liaisons (binding) avec d'autres langages
Avant la normalisation de l'algorithme d'analyse du HTML5, chaque navigateur a choisi comment traiter les pages en entrée et la manière de les interpréter. Au moment où HTML4 avait des spécifications sur les balisages valides, il n'y avait aucune indication sur ce qu'un navigateur devrait faire lorsque l'entrée n'était pas valide alors que 95% des pages web du monde n'ont pas passé l’outil de validation W3C de référence. La validation des pages HTML avec un outil tel que Gumbo assure que les pages seront traitées et interprétées correctement dans tous les navigateurs.