2 let breadcrumbs = await _require('/_lib/breadcrumbs.jst')
3 let get_navigation = await _require('/_lib/get_navigation.jst')
4 let navbar = await _require('/_lib/navbar.jst')
12 await breadcrumbs(env, _out)
15 'The below projects are essentially frameworks that make it easier for you to build something. To make use of them, you will need to be familiar with either '
19 ' depending on each project’s language. The frameworks meet my needs for the present, and are intended to become more mature over time based on your feedback and/or contributions.'
23 'Go on, take a look inside! '
24 i {'[Actually don\'t because it\'s still under construction]'}
27 let transaction = await env.site.database.Transaction()
29 let root = await transaction.get()
30 let p = await get_navigation(root, env.component_names)
31 let children = await p.get('children')
32 let menu = await p.get_json('menu')
35 for (let i = 0; i < menu.length; ++i) {
37 let q = await children.get(name)
39 // note: make the row a link to show hover background at edges
40 // (similar to the grid-gutter-background class I use elsewhere)
41 // note: position: relative sets the target for stretched link
42 div.row.flex-nowrap.align-items-center.nav-link-outer.position-relative {
46 await env.site.get_min_svg(await q.get_json('icon'))
51 a.nav-link-inner.stretched-link(href=`${name}/index.html`) {
53 `${await q.get_json('title')}`
57 `${await q.get_json('description')}`
67 transaction.rollback()