Add README and simplify ViewEngine API

- ViewEngine.init() no longer requires allocator
- render() and renderTpl() accept allocator parameter
- Remove deinit() - no resources to clean up
- Remove unused parse/renderDoc methods
- Add memory management guidance to runtime.zig
- Clean up unused imports and options
This commit is contained in:
2026-01-17 23:59:22 +05:30
parent 1fff91d7d9
commit 458de03c02
19 changed files with 1036 additions and 366 deletions

View File

@@ -0,0 +1,30 @@
doctype html
html(lang="en")
head
meta(charset="UTF-8")
title Friends
body
div.friends
each friend in friends
div.friend
ul
li Name: #{friend.name}
li Balance: #{friend.balance}
li Age: #{friend.age}
li Address: #{friend.address}
li Image:
img(src=friend.picture)
li Company: #{friend.company}
li Email:
a(href=friend.emailHref) #{friend.email}
li About: #{friend.about}
if friend.tags
li Tags:
ul
each tag in friend.tags
li #{tag}
if friend.friends
li Friends:
ul
each subFriend in friend.friends
li #{subFriend.name} (#{subFriend.id})

View File

@@ -0,0 +1,13 @@
each account in accounts
div
if account.status == "closed"
div Your account has been closed!
if account.status == "suspended"
div Your account has been temporarily suspended
if account.status == "open"
div
| Bank balance:
if account.negative
span.negative= account.balanceFormatted
else
span.positive= account.balanceFormatted

View File

@@ -0,0 +1,11 @@
doctype html
html
head
title #{title}
body
p #{text}
each project in projects
a(href=project.url) #{project.name}
p #{project.description}
else
p No projects

View File

@@ -0,0 +1,33 @@
.search-results-container
.searching#searching
.wait-indicator-icon Searching...
#resultsContainer
.hd
span.count
span#count= totalCount
| results
.view-modifiers
.view-select
| View:
.view-icon.view-icon-selected#viewIconGallery
i.icon-th
.view-icon#viewIconList
i.icon-th-list
#resultsTarget
.search-results.view-gallery
each searchRecord in searchRecords
.search-item
.search-item-container.drop-shadow
.img-container
img(src=searchRecord.imgUrl)
h4.title
a(href=searchRecord.viewItemUrl)= searchRecord.title
| #{searchRecord.description}
if searchRecord.featured
div Featured!
if searchRecord.sizes
div
| Sizes available:
ul
each size in searchRecord.sizes
li= size

View File

@@ -0,0 +1 @@
h1 Hello, #{name}

View File

@@ -0,0 +1,14 @@
.simple-1(style="background-color: blue; border: 1px solid black")
.colors
span.hello Hello #{name}!
strong You have #{messageCount} messages!
if colors
ul
each color in colors
li.color= color
else
div No colors!
if primary
button(type="button" class="primary") Click me!
else
button(type="button" class="secondary") Click me!

View File

@@ -0,0 +1,10 @@
div
h1.header #{header}
h2.header2 #{header2}
h3.header3 #{header3}
h4.header4 #{header4}
h5.header5 #{header5}
h6.header6 #{header6}
ul.list
each item in list
li.item #{item}