aboutsummaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
authorFuwn <[email protected]>2022-05-15 01:45:59 +0000
committerFuwn <[email protected]>2022-05-15 01:45:59 +0000
commit0ce99108e78f9402a1aa5cc2541420de1e3fbf69 (patch)
treeb58611c09aabf26b416512d5f605e73f1c10c8af /README.md
downloadlaurali-0ce99108e78f9402a1aa5cc2541420de1e3fbf69.tar.xz
laurali-0ce99108e78f9402a1aa5cc2541420de1e3fbf69.zip
feat(0.1.0): initial release0.1.0
Diffstat (limited to 'README.md')
-rw-r--r--README.md66
1 files changed, 66 insertions, 0 deletions
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..2367dae
--- /dev/null
+++ b/README.md
@@ -0,0 +1,66 @@
+<h1 align="center">Laurali</h1>
+<p align="center"><b>An object-oriented Gemini server for Deno!</b></p>
+
+- Super simple
+- Object-oriented
+- Decorators!
+- Fun!
+
+## Usage
+
+The latest stable release of Laurali can be `import`ed from
+[deno.land/x](https://deno.land/x) using https://deno.land/x/laurali/mod.ts, or,
+you can `import` the latest bleeding-edge commit straight from GitHub using
+https://raw.githubusercontent.com/gemrest/laurali/main/mod.ts.
+
+## Documentation
+
+The latest documentation ([main](https://github.com/gemrest/laurali/tree/main))
+is available
+[here](https://doc.deno.land/https/raw.githubusercontent.com/gemrest/laurali/main/mod.ts),
+and the latest stable documentation is available
+[here](https://doc.deno.land/https/deno.land/x/laurali/mod.ts).
+
+## Example
+
+To create a simple Laurali server, you must first have a valid OpenSSL keypair.
+You can create a new OpenSSL keypair using the provided script by running
+
+```shell
+# Requires that you have both Deno and OpenSSL installed on your system
+
+$ deno run --allow-write --allow-run --allow-net --allow-read https://deno.land/x/laurali/key.ts # Optionally, `--overwrite`
+```
+
+You can then begin to implement your very own Laurali server.
+
+```ts
+import {
+ Callback,
+ callback,
+ route,
+ Server,
+} from "https://deno.land/x/laurali/mod.ts";
+
+class MyCoolServer extends Server {
+ /** Visit /hi */
+ @route()
+ hi() {
+ return "Hello, World!";
+ }
+}
+```
+
+After you have implemented your Laurali server, start listening for connections!
+
+```ts
+// `deno run --allow-net --allow-read https://deno.land/x/examples/my_cool_server.ts`
+
+(new MyCoolServer(".laurali/public.pem", ".laurali/private.pem")).listen();
+```
+
+More examples can be found in the [`examples/`](examples) directory.
+
+## License
+
+This project is licensed with the [GNU General Public License v3.0](LICENSE).