boilerplate more
This commit is contained in:
parent
bf77320bc7
commit
ae511a3871
8 changed files with 301 additions and 74 deletions
19
index.js
19
index.js
|
@ -1,28 +1,15 @@
|
|||
import express from "express";
|
||||
import { doInit } from "./init.js";
|
||||
|
||||
const app = express()
|
||||
const port = 3000;
|
||||
|
||||
app.use(express.static('public'));
|
||||
app.set('view engine', 'ejs');
|
||||
app.enable('view cache');
|
||||
|
||||
app.listen(port, () => {
|
||||
console.log(`Example app listening on port ${port}`)
|
||||
})
|
||||
|
||||
app.use((req, res, next) => {
|
||||
res.ctx = {
|
||||
mainPage: '404.ejs',
|
||||
mainCtx: {},
|
||||
headerCtx: {}
|
||||
};
|
||||
next();
|
||||
})
|
||||
|
||||
app.use('/api', (req, res, next) => {
|
||||
res.send(res.ctx);
|
||||
})
|
||||
|
||||
app.use((req, res, next) => {
|
||||
res.render('root.ejs', res.ctx)
|
||||
})
|
||||
doInit(app);
|
38
init.js
Normal file
38
init.js
Normal file
|
@ -0,0 +1,38 @@
|
|||
const aliases = {
|
||||
'/': '/walls/get/home'
|
||||
};
|
||||
|
||||
function doAliases(app) {
|
||||
for (let alias in aliases) {
|
||||
app.all(alias, (req,res,next) => {
|
||||
res.redirect(aliases[alias])
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
function doInit(app) {
|
||||
app.use((req, res, next) => {
|
||||
res.ctx = {
|
||||
mainPage: '404.ejs',
|
||||
mainCtx: {},
|
||||
headerCtx: [
|
||||
{ link: '/walls/get/home', icon: '/icon.svg', name: 'DervNet' },
|
||||
{ link: '/walls/list', icon: '/walls.svg', name: 'Explore' },
|
||||
{ link: '/you/logout', icon: '/logout.svg', name: 'Leave' } // fix icon
|
||||
]
|
||||
};
|
||||
next();
|
||||
})
|
||||
|
||||
doAliases(app);
|
||||
|
||||
app.use('/api', (req, res, next) => {
|
||||
res.send(res.ctx);
|
||||
})
|
||||
|
||||
app.use((req, res, next) => {
|
||||
res.render('root.ejs', res.ctx)
|
||||
})
|
||||
}
|
||||
|
||||
export { doInit };
|
|
@ -2,20 +2,20 @@
|
|||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="58.538853"
|
||||
height="62.269379"
|
||||
viewBox="0 0 58.538853 62.269381"
|
||||
width="65.538361"
|
||||
height="69.269028"
|
||||
viewBox="0 0 65.538361 69.26903"
|
||||
version="1.1"
|
||||
id="svg1"
|
||||
inkscape:version="1.4 (e7c3feb100, 2024-10-09)"
|
||||
sodipodi:docname="icon.svg"
|
||||
xml:space="preserve"
|
||||
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
|
||||
xmlns:svg="http://www.w3.org/2000/svg"><sodipodi:namedview
|
||||
id="namedview1"
|
||||
pagecolor="#000000"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#000000"
|
||||
borderopacity="0.25"
|
||||
inkscape:showpageshadow="2"
|
||||
|
@ -23,66 +23,50 @@
|
|||
inkscape:pagecheckerboard="0"
|
||||
inkscape:deskcolor="#d1d1d1"
|
||||
inkscape:document-units="px"
|
||||
showguides="true"
|
||||
inkscape:zoom="6.768"
|
||||
inkscape:cx="28.959811"
|
||||
inkscape:cy="26.521868"
|
||||
showguides="false"
|
||||
inkscape:zoom="8"
|
||||
inkscape:cx="33.25"
|
||||
inkscape:cy="37.6875"
|
||||
inkscape:window-width="1918"
|
||||
inkscape:window-height="1056"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="22"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="g4"
|
||||
showgrid="false" />
|
||||
<defs
|
||||
id="defs1" />
|
||||
<g
|
||||
showgrid="false"
|
||||
inkscape:lockguides="true" /><defs
|
||||
id="defs1" /><g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(-52.872929,-52.41062)">
|
||||
<g
|
||||
id="g4">
|
||||
<path
|
||||
transform="translate(-49.373422,-48.91062)"><g
|
||||
id="g4"
|
||||
style="stroke-width:10;stroke-dasharray:none"><path
|
||||
id="path1"
|
||||
style="fill:#350050;fill-opacity:1;stroke:#ffffff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
d="m 84.835608,53.91062 a 25.074709,25.074709 0 0 0 -25.074219,25.074219 25.074709,25.074709 0 0 0 5.835938,16.035156 l -11.22461,18.160155 25.271485,-9.72851 a 25.074709,25.074709 0 0 0 5.191406,0.60937 A 25.074709,25.074709 0 0 0 109.91178,78.984839 25.074709,25.074709 0 0 0 84.835608,53.91062 Z" />
|
||||
<circle
|
||||
style="fill:#7500b1;fill-opacity:1;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
id="circle8"
|
||||
r="19.014986"
|
||||
cy="78.985329"
|
||||
cx="84.836098" />
|
||||
<circle
|
||||
style="fill:#cb65ff;fill-opacity:1;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
style="fill:#ab88aa;fill-opacity:1;stroke:#0d0c11;stroke-width:10;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
d="m 84.835608,53.91062 a 25.074709,25.074709 0 0 0 -25.074219,25.074219 25.074709,25.074709 0 0 0 5.835938,16.035156 l -11.22461,18.160155 25.271485,-9.72851 a 25.074709,25.074709 0 0 0 5.191406,0.60937 A 25.074709,25.074709 0 0 0 109.91178,78.984839 25.074709,25.074709 0 0 0 84.835608,53.91062 Z" /><circle
|
||||
style="fill:#2f2835;fill-opacity:1;stroke:none;stroke-width:12.5237;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
id="circle3"
|
||||
r="13.373178"
|
||||
r="16.748178"
|
||||
cy="78.985329"
|
||||
cx="84.836098" />
|
||||
<circle
|
||||
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
cx="84.836098" /><circle
|
||||
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:11.0203;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
id="path5"
|
||||
cx="85.701805"
|
||||
cy="70.552505"
|
||||
r="2.7164268" />
|
||||
<circle
|
||||
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
cx="85.849609"
|
||||
cy="69.51593"
|
||||
r="2.9935966" /><circle
|
||||
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:11.0203;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
id="circle5"
|
||||
cx="84.836098"
|
||||
cy="78.985329"
|
||||
r="4.8582249" />
|
||||
<circle
|
||||
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
cx="84.895569"
|
||||
cy="78.809196"
|
||||
r="5.3539319" /><circle
|
||||
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:11.0203;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
id="circle6"
|
||||
cx="93.328705"
|
||||
cy="80.164467"
|
||||
r="1.6716473" />
|
||||
<circle
|
||||
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
cx="94.254715"
|
||||
cy="80.108643"
|
||||
r="1.8422132" /><circle
|
||||
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:11.0203;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
id="circle7"
|
||||
cx="76.716713"
|
||||
cy="86.537621"
|
||||
r="1.2537355" />
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
cx="75.947723"
|
||||
cy="87.13208"
|
||||
r="1.38166" /></g></g></svg>
|
||||
|
|
Before Width: | Height: | Size: 3.6 KiB After Width: | Height: | Size: 3.3 KiB |
50
public/logout.svg
Normal file
50
public/logout.svg
Normal file
|
@ -0,0 +1,50 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="50.735596"
|
||||
height="50.735592"
|
||||
viewBox="0 0 50.735596 50.735593"
|
||||
version="1.1"
|
||||
id="svg1"
|
||||
inkscape:version="1.4 (e7c3feb100, 2024-10-09)"
|
||||
sodipodi:docname="logout.svg"
|
||||
xml:space="preserve"
|
||||
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="namedview1"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#000000"
|
||||
borderopacity="0.25"
|
||||
inkscape:showpageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:deskcolor="#d1d1d1"
|
||||
inkscape:document-units="px"
|
||||
showguides="false"
|
||||
inkscape:zoom="8"
|
||||
inkscape:cx="14.375"
|
||||
inkscape:cy="14.6875"
|
||||
inkscape:window-width="1918"
|
||||
inkscape:window-height="1056"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="22"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="g4"
|
||||
showgrid="false"
|
||||
inkscape:lockguides="true" /><defs
|
||||
id="defs1" /><g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(-59.542179,-61.057033)"><g
|
||||
id="g4"
|
||||
style="stroke-width:10;stroke-dasharray:none"><path
|
||||
style="fill:none;fill-opacity:1;stroke:#0d0c11;stroke-width:4.45824;stroke-dasharray:none;stroke-opacity:1;paint-order:normal"
|
||||
d="M 61.118405,62.633259 108.70155,110.2164"
|
||||
id="path25" /><path
|
||||
style="fill:none;fill-opacity:1;stroke:#0d0c11;stroke-width:4.45824;stroke-dasharray:none;stroke-opacity:1;paint-order:normal"
|
||||
d="M 108.70155,62.633259 61.118405,110.2164"
|
||||
id="path26" /></g></g></svg>
|
After Width: | Height: | Size: 1.8 KiB |
167
public/walls.svg
Normal file
167
public/walls.svg
Normal file
|
@ -0,0 +1,167 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="48.672703"
|
||||
height="53.811192"
|
||||
viewBox="0 0 48.672703 53.811193"
|
||||
version="1.1"
|
||||
id="svg1"
|
||||
inkscape:version="1.4 (e7c3feb100, 2024-10-09)"
|
||||
sodipodi:docname="walls.svg"
|
||||
xml:space="preserve"
|
||||
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="namedview1"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#000000"
|
||||
borderopacity="0.25"
|
||||
inkscape:showpageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:deskcolor="#d1d1d1"
|
||||
inkscape:document-units="px"
|
||||
showguides="false"
|
||||
inkscape:zoom="8"
|
||||
inkscape:cx="14.875"
|
||||
inkscape:cy="17.0625"
|
||||
inkscape:window-width="1918"
|
||||
inkscape:window-height="1056"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="22"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="g4"
|
||||
showgrid="false"
|
||||
inkscape:lockguides="true" /><defs
|
||||
id="defs1" /><g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(-59.066227,-58.706081)"><g
|
||||
id="g4"
|
||||
style="stroke-width:10;stroke-dasharray:none"><path
|
||||
style="fill:#f8e0f5;fill-opacity:1;stroke:#0d0c11;stroke-width:3.25;stroke-dasharray:none;stroke-opacity:1;paint-order:normal"
|
||||
d="m 69.997002,71.564705 -9.038422,33.731855 8.989306,5.18997 25.043748,-25.043743"
|
||||
id="path2" /><g
|
||||
id="g11"
|
||||
transform="rotate(30,85.351954,98.307072)"><path
|
||||
id="path1"
|
||||
style="fill:#ab88aa;fill-opacity:1;stroke:#0d0c11;stroke-width:3.56524;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
d="m 81.016571,58.516151 a 8.939758,8.939758 0 0 0 -8.939583,8.93959 8.939758,8.939758 0 0 0 2.080659,5.716912 l -4.001855,6.47455 9.009917,-3.468429 a 8.939758,8.939758 0 0 0 1.850862,0.217242 8.939758,8.939758 0 0 0 8.940282,-8.940275 8.939758,8.939758 0 0 0 -8.940282,-8.93959 z" /><circle
|
||||
style="fill:#2f2835;fill-opacity:1;stroke:none;stroke-width:4.465;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
id="circle3"
|
||||
cy="67.455902"
|
||||
cx="81.016754"
|
||||
r="5.9711423" /><circle
|
||||
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
id="path5"
|
||||
cx="81.378105"
|
||||
cy="64.079811"
|
||||
r="1.0672917" /><circle
|
||||
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
id="circle5"
|
||||
cx="81.037964"
|
||||
cy="67.393112"
|
||||
r="1.90881" /><circle
|
||||
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
id="circle6"
|
||||
cx="84.374725"
|
||||
cy="67.856392"
|
||||
r="0.65679485" /><circle
|
||||
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
id="circle7"
|
||||
cx="77.847824"
|
||||
cy="70.36042"
|
||||
r="0.49259618" /></g><g
|
||||
id="g15"
|
||||
transform="matrix(0.4846688,0.27982366,-0.27982366,0.4846688,58.894002,29.396523)"><path
|
||||
id="path11"
|
||||
style="fill:#ab88aa;fill-opacity:1;stroke:#0d0c11;stroke-width:3.56524;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
d="m 81.016571,58.516151 a 8.939758,8.939758 0 0 0 -8.939583,8.93959 8.939758,8.939758 0 0 0 2.080659,5.716912 l -4.001855,6.47455 9.009917,-3.468429 a 8.939758,8.939758 0 0 0 1.850862,0.217242 8.939758,8.939758 0 0 0 8.940282,-8.940275 8.939758,8.939758 0 0 0 -8.940282,-8.93959 z" /><circle
|
||||
style="fill:#2f2835;fill-opacity:1;stroke:none;stroke-width:4.465;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
id="circle11"
|
||||
cy="67.455902"
|
||||
cx="81.016754"
|
||||
r="5.9711423" /><circle
|
||||
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
id="circle12"
|
||||
cx="81.378105"
|
||||
cy="64.079811"
|
||||
r="1.0672917" /><circle
|
||||
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
id="circle13"
|
||||
cx="81.037964"
|
||||
cy="67.393112"
|
||||
r="1.90881" /><circle
|
||||
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
id="circle14"
|
||||
cx="84.374725"
|
||||
cy="67.856392"
|
||||
r="0.65679485" /><circle
|
||||
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
id="circle15"
|
||||
cx="77.847824"
|
||||
cy="70.36042"
|
||||
r="0.49259618" /></g><g
|
||||
id="g20"
|
||||
transform="matrix(0.21728082,0.12544714,-0.12544714,0.21728082,61.483694,69.882052)"><path
|
||||
id="path15"
|
||||
style="fill:#ab88aa;fill-opacity:1;stroke:#0d0c11;stroke-width:3.56524;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
d="m 81.016571,58.516151 a 8.939758,8.939758 0 0 0 -8.939583,8.93959 8.939758,8.939758 0 0 0 2.080659,5.716912 l -4.001855,6.47455 9.009917,-3.468429 a 8.939758,8.939758 0 0 0 1.850862,0.217242 8.939758,8.939758 0 0 0 8.940282,-8.940275 8.939758,8.939758 0 0 0 -8.940282,-8.93959 z" /><circle
|
||||
style="fill:#2f2835;fill-opacity:1;stroke:none;stroke-width:4.465;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
id="circle16"
|
||||
cy="67.455902"
|
||||
cx="81.016754"
|
||||
r="5.9711423" /><circle
|
||||
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
id="circle17"
|
||||
cx="81.378105"
|
||||
cy="64.079811"
|
||||
r="1.0672917" /><circle
|
||||
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
id="circle18"
|
||||
cx="81.037964"
|
||||
cy="67.393112"
|
||||
r="1.90881" /><circle
|
||||
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
id="circle19"
|
||||
cx="84.374725"
|
||||
cy="67.856392"
|
||||
r="0.65679485" /><circle
|
||||
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
id="circle20"
|
||||
cx="77.847824"
|
||||
cy="70.36042"
|
||||
r="0.49259618" /></g><g
|
||||
id="g25"
|
||||
transform="matrix(0.18487168,-0.07196427,0.07196427,0.18487168,49.231001,96.575288)"><path
|
||||
id="path20"
|
||||
style="fill:#ab88aa;fill-opacity:1;stroke:#0d0c11;stroke-width:3.56524;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
d="m 81.016571,58.516151 a 8.939758,8.939758 0 0 0 -8.939583,8.93959 8.939758,8.939758 0 0 0 2.080659,5.716912 l -4.001855,6.47455 9.009917,-3.468429 a 8.939758,8.939758 0 0 0 1.850862,0.217242 8.939758,8.939758 0 0 0 8.940282,-8.940275 8.939758,8.939758 0 0 0 -8.940282,-8.93959 z" /><circle
|
||||
style="fill:#2f2835;fill-opacity:1;stroke:none;stroke-width:4.465;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
id="circle21"
|
||||
cy="67.455902"
|
||||
cx="81.016754"
|
||||
r="5.9711423" /><circle
|
||||
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
id="circle22"
|
||||
cx="81.378105"
|
||||
cy="64.079811"
|
||||
r="1.0672917" /><circle
|
||||
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
id="circle23"
|
||||
cx="81.037964"
|
||||
cy="67.393112"
|
||||
r="1.90881" /><circle
|
||||
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
id="circle24"
|
||||
cx="84.374725"
|
||||
cy="67.856392"
|
||||
r="0.65679485" /><circle
|
||||
style="fill:#f8e0f5;fill-opacity:1;stroke:none;stroke-width:3.92901;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke fill markers"
|
||||
id="circle25"
|
||||
cx="77.847824"
|
||||
cy="70.36042"
|
||||
r="0.49259618" /></g></g></g></svg>
|
After Width: | Height: | Size: 10 KiB |
|
@ -1,5 +1,5 @@
|
|||
<div class="nav">
|
||||
<a class='header-a' href="/"><img class="header-img" src="/icon.svg">DervNet</a>
|
||||
<a class='header-a' href="/"><img class="header-img" src="/icon.svg">Filler1</a>
|
||||
<a class='header-a' href="/"><img class="header-img" src="/icon.svg">Filler2</a>
|
||||
<% for (let headerEnt of headerCtx) { %>
|
||||
<%- include ('vblock.ejs', headerEnt) %>
|
||||
<% } %>
|
||||
</div>
|
|
@ -3,13 +3,13 @@
|
|||
|
||||
<head>
|
||||
<title>DervNet</title>
|
||||
<link rel="stylesheet" href="index.css">
|
||||
<link rel="stylesheet" href="/index.css">
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<%- include('header.ejs',headerCtx); %>
|
||||
<%- include('header.ejs',{headerCtx}); %>
|
||||
<%- include(mainPage, mainCtx); %>
|
||||
</body>
|
||||
|
||||
|
|
1
views/vblock.ejs
Normal file
1
views/vblock.ejs
Normal file
|
@ -0,0 +1 @@
|
|||
<a class='header-a' href="<%= link %>"><img class="header-img" src="<%= icon %>"><%= name %></a>
|
Loading…
Reference in a new issue