summaryrefslogtreecommitdiff
path: root/projects/hubbub/index.en
blob: 9d21b90467b675ae80385a78d98133059c95b275 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
        "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Hubbub | HTML Parsing Library</title>
<link rel="stylesheet" type="text/css" href="/projects/projects.css">
<link rel="icon" type="image/png" href="/webimages/favicon.png">
</head>
<body>

<div class="projects">
<ul>
<li><a href="/">NetSurf</a></li>
<li><strong>Hubbub</strong></li>
<li><a href="/projects/libcss/">LibCSS</a></li>
<li><a href="/projects/libdom/">LibDOM</a></li>
<li><a href="/projects/libparserutils/">LibParserUtils</a></li>
<li><a href="/projects/libwapcaplet/">LibWapcaplet</a></li>
<li><a href="/projects/libsvgtiny/">Libsvgtiny</a></li>
<li><a href="/projects/libnsfb/">LibNSFB</a></li>
<li><a href="/projects/libnsbmp/">Libnsbmp</a></li>
<li><a href="/projects/libnsgif/">Libnsgif</a></li>
<li><a href="/projects/librosprite/">LibROSprite</a></li>
<li><a href="/projects/iconv/">Iconv</a></li>
<li><a href="/projects/rufl/">RUfl</a></li>
<li><a href="/projects/ttf2f/">TTF2f</a></li>
<li><a href="/projects/tinct/">Tinct</a></li>
<li><a href="/projects/libpencil/">Libpencil</a></li>
</ul>
</div>

<h1>Hubbub</h1>

<h2>What is Hubbub?</h2>

<p>Hubbub is an <a href="http://www.whatwg.org/specs/web-apps/current-work/">HTML5</a> compliant parsing library, written in C. It was developed as part of the <a href="/">NetSurf</a> project and is available for use by other software under the MIT licence.</p>

<p>The HTML5 specification defines a parsing algorithm, based on the behaviour of mainstream browsers, which provides instructions for how to parse all markup, both valid and invalid. As a result, Hubbub parses web content well.</p>

<p>If you are looking for an HTML5 parser in Python or Ruby, you may wish to look at <a href="http://code.google.com/p/html5lib/">html5lib</a>.</p>

<h2>Features</h2>

<ul>
<li>Parses HTML, good and bad</li>
<li>Simple C API</li>
<li>Fast</li>
<li>Character encoding detection</li>
<li>Well-tested (~90% test coverage)</li>
<li>Portable</li>
<li>Shared library</li>
</ul>

<p>Future:</p>

<ul>
<li>Well-documented</li>
<li>Available and packaged in major Linux distributions</li>
</ul>

<h2>Source code</h2>

<p>You can <a href="http://source.netsurf-browser.org/?p=libhubbub.git;a=summary">browse the source code</a> via the online interface. Alternatively, you can check it out with Git:</p>

<p class="svncommand">$ git clone git://git.netsurf-browser.org/libhubbub.git</p>

<p>Hubbub is licensed under the <a href="http://opensource.org/licenses/mit-license.php">MIT Licence</a>.</p>

<h2>Releases</h2>

<ul>
<li><a href="http://download.netsurf-browser.org/libs/releases/hubbub-0.1.2-src.tar.gz">Hubbub 0.1.2 tarball</a></li>
<li><a href="http://download.netsurf-browser.org/libs/releases/hubbub-0.1.1-src.tar.gz">Hubbub 0.1.1 tarball</a></li>
<li><a href="http://download.netsurf-browser.org/libs/releases/hubbub-0.1.0-src.tar.gz">Hubbub 0.1.0 tarball</a></li>
<li><a href="http://download.netsurf-browser.org/libs/releases/hubbub-0.0.2-src.tar.gz">Hubbub 0.0.2 tarball</a></li>
<li><a href="http://download.netsurf-browser.org/libs/releases/hubbub-0.0.1-src.tar.gz">Hubbub 0.0.1 tarball</a></li>
</ul>

<h2>Contact</h2>

<p>If you would like to help develop Hubbub, or have questions about the library, please join the NetSurf <a href="http://www.netsurf-browser.org/lists/netsurf-dev">developer mailing list</a>.</p>

</body>
</html>