aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--LICENSE.md (renamed from LICENSE)0
-rw-r--r--README.md9
2 files changed, 9 insertions, 0 deletions
diff --git a/LICENSE b/LICENSE.md
index 961f981..961f981 100644
--- a/LICENSE
+++ b/LICENSE.md
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..23d5fac
--- /dev/null
+++ b/README.md
@@ -0,0 +1,9 @@
+# bamboo
+
+A lightweight and flexible web browser built from scratch.
+
+This project currently includes an implementation of most of HTTP, a (fragile) HTML parser, an OpenGL-based renderer, and a basic style engine. This is planned to include the rest of HTTP, an implementation of HTML5, an implementation of CSS3, a JavaScript compilation target (to run in the browser), and JavaScript support through an embedded external library.
+
+This does not implement TCP or UDP, and instead relies on Nim's [`std/net`](https://nim-lang.org/docs/net.html) to provide a cross-platform implementation of Berkeley Sockets. This also relies on [`treeform/[windy,`](https://github.com/treeform/windy)[`boxy]`](https://github.com/treeform/boxy) for a cross-platform windowing API, and [`treeform/pixie`](https://github.com/treeform/pixie) for a Skia-like graphics engine.
+
+`bamboo` is primarily a learning project, but also happens to be a lightweight and embeddable browser due to its multiple frontends and backends and minimal dependencies. As it is a learning project first and foremost, many features better provided by the standard library have been reimplemented here (notably HTML and URI parsing).