summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEltrac <hi@guhub.cn>2025-11-27 11:57:23 +0800
committerEltrac <hi@guhub.cn>2025-11-27 11:57:23 +0800
commit3c656160f5efaef301eb4fc7937ae5de94d4921b (patch)
tree4259e293d3b06f170d7205eb3e0530a3cd7a0936
parentc41a8f36676bca96b3a3c4af7ca6ab96f2ad9fc1 (diff)
docs: add README
-rw-r--r--README.md40
1 files changed, 40 insertions, 0 deletions
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..f4c7dc1
--- /dev/null
+++ b/README.md
@@ -0,0 +1,40 @@
+# Growel
+
+**Minimal, headless, zero-dependency Web framework written in Go.** This is toy software I develop to learn, so do not use in production.
+
+## Usage
+
+```go
+api := growel.New()
+
+api.GET("/hello", func(c *growel.Context) {
+ c.JSON(200, map[string]string{
+ "message": "Hello, Growel!"
+ })
+})
+
+api.GET("/user/", func(c *growel.Context) {
+ c.JSON(200, Users)
+})
+
+api.GET("/user/:uid", func(c *growel.Context) {
+ uid, err := strconv.Atoi(c.Params["uid"])
+ if err != nil {
+ c.BadRequest("Invalid user ID")
+ return
+ }
+
+ for _, user := range Users {
+ if user.ID == uid {
+ c.JSON(200, user)
+ return
+ }
+ }
+
+ c.NotFound("User not found")
+})
+```
+
+## License
+
+MIT