Skip to content

KevinL10/browser

Repository files navigation

browser

Actions status

A web browser implemented from scratch in Python.

Adapted from browser.engineering.

Supported features:

ch. 1

  • HTTP/1.1
  • File URI scheme
  • data scheme
  • view-source scheme

Todo:

ch.2

  • Scrolling (mouse wheel & up/down keys)

Todo:

ch.3

  • font size, weight, slant (support for <big>, <small>, <i>, <b>, <br>)
  • font caching

Todo:

  • ch. 1: Custom testing infrastructure (serving test websites with specific headers / content)

  • ch. 1: HTTP response caching

  • ch. 1: Support transfer-encoding: chunked

  • ch. 2: Emoji support

  • ch. 2: Allow browser resizing

  • ch. 2: Zoom for font size

  • ch. 3: Superscripts (<sup>)

  • ch. 3: Soft hyphens – breaking a long word across lines

  • ch. 3: Small caps (<abbr>)

  • ch. 3: Preformatted text (<pre>)

  • ch. 4: comments

  • ch. 4: paragraphs

  • ch. 4: scripts

  • ch. 4: quoted attributes

  • ch. 4: syntax highlighting

About

A web browser implemented from scratch in C++ & Python

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published