summaryrefslogtreecommitdiff
path: root/documentation/directory_structure.mdwn
blob: e9d00a76fed4c548e9ae22391f50c13a5aabb082 (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
[[!meta title="Documentation/Directory Structure"]]
[[!meta author="Tlsa"]]
[[!meta date="2012-10-23T10:53:54Z"]]


[[!toc]] NetSurf's code is broadly
split into two; core code, and front end code. All ports make use of the
core code and each port has its own front end code.

Directory Structure
-------------------

The source is split at top level as follows:

### Core

#### Content handling

-   **content** -- Generic content handling: Fetching, caching,
    managing, etc
-   **css** -- CSS content specific handling
-   **image** -- Image content specific handling (conversion)
-   **javascript** -- JavaScript content specific handling
-   **render** -- HTML and Text content specific handling (processing,
    layout, render)

#### Other core components

-   **desktop** -- Non-platform specific front-end
-   **utils** -- Misc reusable components

### Front ends

-   **amiga** -- AmigaOS specific code
-   **atari** -- Atari FreeMiNT code
-   **beos** -- BeOS/Haiku specific code
-   **cocoa** -- Mac OS X specific code
-   **framebuffer** -- Framebuffer specific code
-   **gtk** -- GTK specific code
-   **monkey** -- Terminal based test engine specific code
-   **riscos** -- RISC OS specific code
-   **windows** -- Windows specific code

[[!inline raw=yes pages="Documentation"]]