The all-in-one app at app.${domain} is a minimal hub: only the base
module (auth, profile, relays, PWA, image upload) plus a chakra-
themed entry point linking out to the seven standalone module PWAs
(market, sortir, wallet, chat, forum, tasks, castle), with an
eighth tile reserved for a forthcoming restaurant module.
UI:
- 2-column grid of 8 module tiles with Lucide icons, occupying the
full viewport between the title and the bottom dock. Status hints
(alpha/beta/coming soon) shown beneath each label.
- Faint chakra-mandala column rendered behind the tiles (peeks
through their translucent backgrounds), plus a subtle vertical
hue gradient (red at the bottom → violet at the top) — the chakras
inform the visual frame without forcing a 1:1 module mapping.
- Bottom dock with system-level controls: Profile (Sheet hosting
the existing ProfileSettings.vue), Theme (light/dark/system),
Language (uses available locales), and a Currency placeholder.
- Each tile is a link to VITE_HUB_<NAME>_URL with the user's
lnbits_access_token appended as ?token= so the destination logs
in via the existing acceptTokenFromUrl() relay.
Wiring:
- src/App.vue: stripped to the same minimal shell as the standalone
apps (no AppLayout/AppSidebar — the hub is the navigation).
- src/app.ts: only base module is registered. Hub is the / route.
- src/app.config.ts: only base module config remains.
- public/chakras/*.svg: 7 chakra mandala SVGs copied from the legacy
frontend (Atitlan.io).
- nginx.conf.example: rewritten with one server block per subdomain
pointing at its own dist-<name>/ output.
Closes #26.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
76 lines
7.2 KiB
XML
76 lines
7.2 KiB
XML
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
|
|
|
<svg
|
|
width="26.373173mm"
|
|
height="26.373281mm"
|
|
viewBox="0 0 26.373173 26.373281"
|
|
version="1.1"
|
|
id="svg1911"
|
|
inkscape:version="1.2 (dc2aedaf03, 2022-05-15)"
|
|
sodipodi:docname="muladhara.svg"
|
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
xmlns:svg="http://www.w3.org/2000/svg">
|
|
<sodipodi:namedview
|
|
id="namedview1913"
|
|
pagecolor="#ffffff"
|
|
bordercolor="#000000"
|
|
borderopacity="0.25"
|
|
inkscape:showpageshadow="2"
|
|
inkscape:pageopacity="0.0"
|
|
inkscape:pagecheckerboard="0"
|
|
inkscape:deskcolor="#d1d1d1"
|
|
inkscape:document-units="mm"
|
|
showgrid="false"
|
|
inkscape:zoom="10.35098"
|
|
inkscape:cx="60.912107"
|
|
inkscape:cy="50.333398"
|
|
inkscape:window-width="2004"
|
|
inkscape:window-height="1979"
|
|
inkscape:window-x="8"
|
|
inkscape:window-y="64"
|
|
inkscape:window-maximized="0"
|
|
inkscape:current-layer="layer1" />
|
|
<defs
|
|
id="defs1908" />
|
|
<g
|
|
inkscape:label="Layer 1"
|
|
inkscape:groupmode="layer"
|
|
id="layer1"
|
|
transform="translate(-50.435614,-75.884446)">
|
|
<path
|
|
d="M 58.003949,94.689232 H 69.240346 V 83.452977 H 58.003949 Z"
|
|
style="fill:none;stroke:#eb3c2d;stroke-width:0.740833;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:0.5"
|
|
id="path1042" />
|
|
<path
|
|
d="m 68.658227,94.106902 c -2.781406,2.781265 -7.290647,2.781265 -10.071665,0 -2.7813,-2.781335 -2.7813,-7.290541 0,-10.071489 2.781018,-2.7813 7.290259,-2.7813 10.071665,0 2.7813,2.780948 2.7813,7.290154 0,10.071489 z"
|
|
style="fill:none;stroke:#eb3c2d;stroke-width:0.740833;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:0.5"
|
|
id="path1044" />
|
|
<path
|
|
d="m 69.587091,95.566908 v -0.01199 c 0.08925,-0.08156 0.1778,-0.165911 0.265289,-0.253259 1.719792,-1.720215 2.580922,-3.974677 2.579864,-6.230691 0.0011,-2.255661 -0.860072,-4.510264 -2.579864,-6.230056 -0.08749,-0.08784 -0.176036,-0.172156 -0.265289,-0.253647 v -0.01199 c 3.84422,0.0011 4.563886,3.281892 5.094817,4.341284 0.529872,1.060803 1.756481,2.154414 1.756481,2.154414 0,0 -1.226609,1.093611 -1.756481,2.154414 -0.530931,1.059603 -1.250597,4.340437 -5.094817,4.34153 z"
|
|
style="fill:none;stroke:#eb3c2d;stroke-width:0.740833;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:0.5"
|
|
id="path1046" />
|
|
<path
|
|
d="m 70.118022,83.106197 h -0.01199 c -0.08149,-0.08961 -0.165805,-0.1778 -0.253294,-0.265289 -1.720145,-1.720145 -3.974677,-2.580923 -6.230409,-2.579864 -2.255979,-0.0011 -4.510582,0.859719 -6.230373,2.579864 -0.08752,0.08749 -0.172121,0.175683 -0.253577,0.265289 h -0.01196 c 9.52e-4,-3.84422 3.281786,-4.563887 4.341495,-5.094817 1.060803,-0.529872 2.154414,-1.756481 2.154414,-1.756481 0,0 1.093611,1.226609 2.154167,1.756481 1.059709,0.53093 4.340472,1.250597 4.341531,5.094817 z"
|
|
style="fill:none;stroke:#eb3c2d;stroke-width:0.740833;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:0.5"
|
|
id="path1048" />
|
|
<path
|
|
d="m 57.657345,82.575266 v 0.01199 c -0.08929,0.08149 -0.177764,0.165805 -0.265253,0.253294 -1.720215,1.719792 -2.580923,3.974748 -2.579829,6.230409 -0.0011,2.256014 0.859614,4.510617 2.579829,6.230409 0.08749,0.08749 0.175965,0.17212 0.265253,0.253541 v 0.01199 c -3.844149,-9.52e-4 -4.563921,-3.281786 -5.094852,-4.34153 -0.529872,-1.060803 -1.756481,-2.154414 -1.756481,-2.154414 0,0 1.226609,-1.093611 1.756481,-2.154061 0.530931,-1.060098 1.250703,-4.340578 5.094852,-4.341637 z"
|
|
style="fill:none;stroke:#eb3c2d;stroke-width:0.740833;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:0.5"
|
|
id="path1050" />
|
|
<path
|
|
d="m 57.126556,95.035978 h 0.01196 c 0.08146,0.08929 0.165806,0.177765 0.253294,0.265253 1.719792,1.719792 3.974677,2.580923 6.230656,2.57997 2.255732,9.53e-4 4.510476,-0.860178 6.230268,-2.57997 0.08749,-0.08749 0.171803,-0.175965 0.253647,-0.265253 h 0.01199 c -0.0011,3.844149 -3.282033,4.563921 -4.341742,5.094852 -1.060838,0.52987 -2.154167,1.75644 -2.154167,1.75644 0,0 -1.093893,-1.22657 -2.154273,-1.75644 -1.060132,-0.530931 -4.340684,-1.250703 -4.341636,-5.094852 z"
|
|
style="fill:none;stroke:#eb3c2d;stroke-width:0.740833;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:0.5"
|
|
id="path1052" />
|
|
<path
|
|
d="m 65.891144,87.468647 c -0.01517,-0.271286 -0.06809,-0.5461 -0.09028,-0.811742 -0.0049,-0.06068 -0.0074,-0.121708 -0.01129,-0.182739 0.35553,-0.04515 0.703086,-0.116063 1.029406,-0.237419 0.231986,-0.08608 0.302542,-0.494242 0,-0.542925 -0.349638,-0.05609 -0.702804,-0.06491 -1.05724,-0.0508 -0.0029,-0.1651 -0.0056,-0.329847 -0.01129,-0.494595 -0.01489,-0.439561 -0.622053,-0.419805 -0.668232,0 -0.02011,0.181681 -0.02783,0.363362 -0.03101,0.545042 -0.336656,0.0314 -0.672747,0.06844 -1.006933,0.08996 -1.051172,0.06809 -2.11127,0.03281 -3.158032,0.156634 -0.242676,0.02858 -0.350591,0.418394 -0.06311,0.46743 0.91761,0.155928 1.841465,0.145345 2.770399,0.137937 0.479002,-0.0035 0.984885,0.0071 1.488017,-0.01341 0.0031,0.04163 0.0056,0.08326 0.0091,0.124883 0.02483,0.264584 0.0441,0.555625 0.106962,0.828323 -0.517173,0.09454 -1.024185,0.348544 -1.295365,0.627944 -0.506554,0.522817 -1.007216,-0.125589 -1.696932,-0.123472 -0.676204,0.0014 -1.146104,0.220839 -1.577552,0.751064 -0.970139,1.194153 -0.01764,2.845153 1.034345,3.556353 0.260315,0.175683 0.623958,-0.177095 0.438079,-0.43815 -0.56582,-0.796925 -1.240649,-1.366661 -1.038895,-2.4638 0.334433,-1.816453 1.509501,-0.667809 2.138574,-0.565503 0.02148,0.0035 0.411621,0.122414 0.540033,0.04692 0.592702,-0.347133 1.157146,-0.869597 1.773131,-0.759178 0.0459,0.02787 0.09839,0.04269 0.149261,0.03986 0.188348,0.06562 0.381705,0.191206 0.582753,0.407106 0.919551,0.987072 -0.418359,2.264833 -1.041788,2.975328 -0.18796,0.214136 0.102235,0.509411 0.313902,0.313619 1.11058,-1.027289 1.666134,-2.112786 1.262697,-3.600097 -0.131303,-0.483659 -0.475967,-0.716139 -0.888682,-0.784578"
|
|
style="fill:#ef3e31;fill-opacity:0.5;fill-rule:nonzero;stroke:#eb3c2d;stroke-width:0.0352778;stroke-opacity:0.5"
|
|
id="path1054" />
|
|
<path
|
|
d="m 63.635024,91.761247 c -0.264301,-0.466725 -0.542255,-0.922514 -0.832203,-1.371953 0.251495,-0.02434 0.502991,-0.04904 0.75558,-0.06773 0.359798,-0.02681 0.735577,-0.105128 1.101337,-0.09172 -0.335845,0.512586 -0.699911,1.013178 -1.024714,1.531408 m 1.54298,-1.990372 c -0.971515,-0.199672 -2.037716,-0.09807 -3.024365,-0.07232 -0.264865,0.0071 -0.491842,0.319969 -0.323426,0.563738 0.478719,0.692503 0.978112,1.350081 1.513769,1.996793 -0.0834,0.201719 0.166441,0.383364 0.334716,0.228883 0.690668,-0.633942 1.195176,-1.521531 1.658056,-2.326923 0.08075,-0.141111 0.01199,-0.354894 -0.15875,-0.390172"
|
|
style="fill:#ef3e31;fill-opacity:0.5;fill-rule:nonzero;stroke:#eb3c2d;stroke-width:0.0352778;stroke-opacity:0.5"
|
|
id="path1056" />
|
|
</g>
|
|
</svg>
|