added dashboard; decoupled theme from simple theme; added logs; fixed some color issues;
13
README.md
|
@ -18,14 +18,11 @@ Restart searx: `service uwsgi restart`
|
|||
|
||||
|
||||
## How to edit/change this theme
|
||||
All changes need to be done to Simple theme and then compiled. So:
|
||||
- You have clone the upstream repo first: `git clone https://github.com/searxng/searxng.git searx`.
|
||||
- Copy the `beetroot_static/src/less/definitions.less` and the `beetroot_static/src/less/disroot.less` from the beetroot theme repo to the clone (in `static/themes/simple/src/less/`).
|
||||
- Edit the `static/themes/simple/src/less/definitions.less` and `static/themes/simple/src/less/disroot.less` files copied in the clone with the colors and rules you want.
|
||||
- Once finished, build the theme: in searx root-src folder, as the searx user, do `make themes.simple`.
|
||||
- Copy the content of the `static/themes/simple/css` folder obtained in the clone back to this repo (if you didn't change any images, you don't have to copy the `images` folder again). Don't forget to also copy `definitions.less` and `disroot.less`, if you changed those, back to the beetroot repo.
|
||||
Simply clone the theme to your machine.
|
||||
All changes done to the the templates do not require compilation, only searxng reload.
|
||||
When changing static elements (css, images etc), edit files in `src/`. Once done run `grunt` to compile. You may need to install all dependencies first by running `npm install`.
|
||||
|
||||
If you want to test in live mode all your changes to the `Simple` theme, do `LIVE_THEME=simple make run` from searx-src folder and edit the `static/themes/simple/src/less/definitions.less` and `static/themes/simple/src/less/disroot.less` files as you wish.
|
||||
If you want to test in live mode all your changes to the `beetroot` theme, you need working searx instance with your changes pulled into it. You can then either select the theme from UI or run searx with theme by running `LIVE_THEME=beetroot make run` from searx-src folder and edit.
|
||||
|
||||
## Screenshots
|
||||
|
||||
|
@ -37,4 +34,4 @@ If you want to test in live mode all your changes to the `Simple` theme, do `LIV
|
|||
### Dark mode
|
||||
![Dark mode](img/Dark01.png)
|
||||
![Dark mode](img/Dark02.png)
|
||||
![Dark mode](img/Dark03.png)
|
||||
![Dark mode](img/Dark03.png)
|
||||
|
|
28
beetroot_static/.eslintrc.json
Normal file
|
@ -0,0 +1,28 @@
|
|||
{
|
||||
"env": {
|
||||
"browser": true,
|
||||
"es2021": true,
|
||||
"node": true
|
||||
},
|
||||
"extends": "eslint:recommended",
|
||||
"parserOptions": {
|
||||
"ecmaVersion": 12
|
||||
},
|
||||
"rules": {
|
||||
"indent": ["error", 2],
|
||||
"keyword-spacing": ["error", { "before": true, "after": true }],
|
||||
"no-trailing-spaces": 2,
|
||||
"space-before-function-paren": ["error", "always"],
|
||||
"space-infix-ops": "error",
|
||||
"comma-spacing": ["error", { "before": false, "after": true }],
|
||||
"brace-style": ["error", "1tbs", { "allowSingleLine": true }],
|
||||
"curly": ["error", "multi-line"],
|
||||
"block-spacing": ["error", "always"],
|
||||
"dot-location": ["error", "property"],
|
||||
"key-spacing": ["error", { "beforeColon": false, "afterColon": true }],
|
||||
"spaced-comment": ["error", "always", {
|
||||
"line": { "markers": ["*package", "!", "/", ",", "="] },
|
||||
"block": { "balanced": true, "markers": ["*package", "!", ",", ":", "::", "flow-include"], "exceptions": ["*"] }
|
||||
}]
|
||||
}
|
||||
}
|
2
beetroot_static/.gitattributes
vendored
Normal file
|
@ -0,0 +1,2 @@
|
|||
leaflet.css -diff
|
||||
leaflet.js -diff
|
2
beetroot_static/.gitignore
vendored
Normal file
|
@ -0,0 +1,2 @@
|
|||
/node_modules
|
||||
package-lock.json
|
8
beetroot_static/.jshintrc
Normal file
|
@ -0,0 +1,8 @@
|
|||
{
|
||||
"proto": true,
|
||||
"globals": {
|
||||
"browser": true,
|
||||
"jQuery": false,
|
||||
"devel": true
|
||||
}
|
||||
}
|
7
beetroot_static/.stylelintrc.json
Normal file
|
@ -0,0 +1,7 @@
|
|||
{
|
||||
"extends": "stylelint-config-standard",
|
||||
"rules": {
|
||||
"declaration-empty-line-before": null,
|
||||
"no-invalid-position-at-import-rule": null
|
||||
}
|
||||
}
|
2
beetroot_static/css/searxng-rtl.min.css
vendored
2
beetroot_static/css/searxng.min.css
vendored
BIN
beetroot_static/img/dashboard/D.png
Normal file
After Width: | Height: | Size: 158 KiB |
BIN
beetroot_static/img/dashboard/bin_circle.png
Normal file
After Width: | Height: | Size: 15 KiB |
BIN
beetroot_static/img/dashboard/chat_circle.png
Normal file
After Width: | Height: | Size: 253 KiB |
BIN
beetroot_static/img/dashboard/cloud_circle.png
Normal file
After Width: | Height: | Size: 163 KiB |
BIN
beetroot_static/img/dashboard/cryptpad_circle.png
Normal file
After Width: | Height: | Size: 162 KiB |
BIN
beetroot_static/img/dashboard/email_circle.png
Normal file
After Width: | Height: | Size: 209 KiB |
BIN
beetroot_static/img/dashboard/fe_circle.png
Normal file
After Width: | Height: | Size: 466 KiB |
BIN
beetroot_static/img/dashboard/gitea_circle.png
Normal file
After Width: | Height: | Size: 142 KiB |
BIN
beetroot_static/img/dashboard/howto_circle.png
Normal file
After Width: | Height: | Size: 24 KiB |
BIN
beetroot_static/img/dashboard/jitsi_circle.png
Normal file
After Width: | Height: | Size: 23 KiB |
BIN
beetroot_static/img/dashboard/logo.png
Normal file
After Width: | Height: | Size: 14 KiB |
BIN
beetroot_static/img/dashboard/mumble_circle.png
Normal file
After Width: | Height: | Size: 162 KiB |
BIN
beetroot_static/img/dashboard/pads_circle.png
Normal file
After Width: | Height: | Size: 145 KiB |
BIN
beetroot_static/img/dashboard/red_pill_circle.png
Normal file
After Width: | Height: | Size: 14 KiB |
BIN
beetroot_static/img/dashboard/upload_circle.png
Normal file
After Width: | Height: | Size: 204 KiB |
BIN
beetroot_static/img/dashboard/user-circle.png
Normal file
After Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 22 KiB |
|
@ -1,86 +1,99 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="92mm"
|
||||
height="92mm"
|
||||
viewBox="0 0 92 92"
|
||||
width="52.916668mm"
|
||||
height="52.916668mm"
|
||||
viewBox="0 0 52.916668 52.916668"
|
||||
version="1.1"
|
||||
id="svg283"
|
||||
sodipodi:docname="favicon.svg"
|
||||
id="svg310"
|
||||
inkscape:version="1.2.2 (b0a8486541, 2022-12-01)"
|
||||
inkscape:export-filename="favicon.png"
|
||||
inkscape:export-xdpi="72.058701"
|
||||
inkscape:export-ydpi="72.058701"
|
||||
sodipodi:docname="favicon.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">
|
||||
<defs
|
||||
id="defs287" />
|
||||
<sodipodi:namedview
|
||||
id="namedview285"
|
||||
id="namedview312"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#000000"
|
||||
borderopacity="0.25"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:showpageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:deskcolor="#d1d1d1"
|
||||
inkscape:document-units="mm"
|
||||
showgrid="false"
|
||||
inkscape:zoom="2.2805933"
|
||||
inkscape:cx="187.45122"
|
||||
inkscape:cy="180.87399"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="995"
|
||||
inkscape:zoom="0.72426347"
|
||||
inkscape:cx="312.7315"
|
||||
inkscape:cy="530.1938"
|
||||
inkscape:window-width="2560"
|
||||
inkscape:window-height="1403"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg283" />
|
||||
inkscape:current-layer="layer1" />
|
||||
<defs
|
||||
id="defs307" />
|
||||
<g
|
||||
id="g12851-2"
|
||||
transform="matrix(0.27333337,0,0,0.27333337,-18.69294,-5.0517884)"
|
||||
style="stroke:#50152c;stroke-opacity:0.992157"
|
||||
inkscape:export-filename="/home/fekete/Nextcloud-Antilopa/Disroot/Artwork/Icons/new_pngs/search.png"
|
||||
inkscape:export-xdpi="1080.73"
|
||||
inkscape:export-ydpi="1080.73">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3814-0-7-1"
|
||||
d="m 80.033739,36.455764 c -7.11959,15.242893 -10.17798,31.779192 -8.22563,48.814566 5.01677,43.77413 41.675291,79.3245 91.536091,95.16289 -6.62576,-22.40752 -5.34093,-44.9362 2.6395,-65.84431 C 118.24672,100.40622 84.338699,71.780528 80.033739,36.455764 Z"
|
||||
style="fill:#50142b;fill-opacity:0.992157;fill-rule:nonzero;stroke:#50152c;stroke-opacity:0.992157" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3814-0-8"
|
||||
d="m 313.2893,37.799153 c 7.11959,15.242893 10.17798,31.779192 8.22563,48.814566 -5.01677,43.774131 -41.67531,79.324501 -91.53611,95.162891 6.62576,-22.40752 5.34093,-44.9362 -2.6395,-65.84431 47.73698,-14.18269 81.64502,-42.808383 85.94998,-78.133147 z"
|
||||
style="fill:#50142b;fill-opacity:0.992157;fill-rule:nonzero;stroke:#50152c;stroke-opacity:0.992157" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="rect3804-7"
|
||||
d="m 201.77833,175.2842 12.07511,-13.9057 c 4.0785,-4.69679 19.95774,2.45971 35.60368,16.04598 l 130.50177,113.32219 c 15.64593,13.58626 24.95835,28.30512 20.87985,33.00192 l -12.07512,13.9057 c -4.07849,4.69679 -19.95774,-2.45971 -35.60367,-16.04598 L 222.65818,208.28612 C 207.01224,194.69986 197.69983,179.981 201.77833,175.2842 Z"
|
||||
style="fill:#50142b;fill-opacity:0.992157;fill-rule:nonzero;stroke:#50152c;stroke-opacity:0.992157" />
|
||||
<circle
|
||||
r="107.58125"
|
||||
cy="149.35568"
|
||||
cx="196.89389"
|
||||
id="path2987-9"
|
||||
style="fill:#50142b;fill-opacity:0.992157;fill-rule:nonzero;stroke:#50152c;stroke-opacity:0.992157" />
|
||||
<circle
|
||||
r="72.430138"
|
||||
cy="149.10315"
|
||||
cx="196.64131"
|
||||
id="path3757-9-0"
|
||||
style="fill:#ffffff;fill-opacity:0.992157;fill-rule:nonzero;stroke:#50152c;stroke-width:0.713454;stroke-opacity:0.992157" />
|
||||
<circle
|
||||
r="27.274118"
|
||||
cy="150.79912"
|
||||
cx="197.85327"
|
||||
id="path3800-2"
|
||||
style="fill:#50132a;fill-opacity:1;fill-rule:nonzero;stroke:#50152c;stroke-opacity:0.992157" />
|
||||
<circle
|
||||
r="5.5558391"
|
||||
cy="141.34952"
|
||||
cx="208.98526"
|
||||
id="path3802-3"
|
||||
style="fill:#ffffff;fill-opacity:0.992157;fill-rule:nonzero;stroke:#50152c;stroke-opacity:0.992157" />
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(-13.768987,-8.1793908)">
|
||||
<g
|
||||
id="g1653"
|
||||
transform="matrix(0.88194444,0,0,0.88194444,-127.34211,86.672446)">
|
||||
<circle
|
||||
r="30"
|
||||
cx="189.99998"
|
||||
cy="-59"
|
||||
id="circle23-562"
|
||||
style="color:#000000;fill:#50162d;fill-opacity:0.988462;stroke-width:2.51156;enable-background:accumulate" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3814-0-7"
|
||||
d="m 173.4803,-75.896588 c -0.79401,1.699956 -1.13509,3.544158 -0.91736,5.444019 0.55949,4.881886 4.64781,8.846622 10.20851,10.612989 -0.73893,-2.498986 -0.59564,-5.011485 0.29437,-7.343251 -5.32384,-1.581717 -9.10541,-4.774181 -9.58552,-8.713757 z"
|
||||
style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.111524" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3814-0"
|
||||
d="m 199.494,-75.746767 c 0.79401,1.699956 1.13509,3.544157 0.91736,5.444018 -0.55949,4.881887 -4.64782,8.846622 -10.20852,10.61299 0.73894,-2.498986 0.59565,-5.011485 -0.29437,-7.343251 5.32385,-1.581717 9.10542,-4.774182 9.58553,-8.713757 z"
|
||||
style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.111524" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="rect3804"
|
||||
d="m 187.0578,-60.413821 1.34667,-1.550826 c 0.45485,-0.523807 2.22578,0.274318 3.97068,1.789519 l 14.55414,12.638196 c 1.7449,1.515201 2.78347,3.156714 2.32861,3.680522 l -1.34667,1.550825 c -0.45485,0.523807 -2.22577,-0.274317 -3.97068,-1.789519 L 189.38641,-56.7333 c -1.7449,-1.5152 -2.78346,-3.156713 -2.32861,-3.680521 z"
|
||||
style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.111524" />
|
||||
<circle
|
||||
r="11.997941"
|
||||
cy="-63.305485"
|
||||
cx="186.51306"
|
||||
id="path2987"
|
||||
style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.111524" />
|
||||
<circle
|
||||
r="9.4527321"
|
||||
cy="-63.333649"
|
||||
cx="186.48489"
|
||||
id="path3757"
|
||||
style="fill:#50152c;fill-opacity:0.992157;fill-rule:nonzero;stroke:none;stroke-width:0.0931117" />
|
||||
<circle
|
||||
r="8.0777321"
|
||||
cy="-63.333649"
|
||||
cx="186.48489"
|
||||
id="path3757-9"
|
||||
style="fill:#ffffff;fill-opacity:0.992157;fill-rule:nonzero;stroke:none;stroke-width:0.0795676" />
|
||||
<circle
|
||||
r="3.0417314"
|
||||
cy="-63.144508"
|
||||
cx="186.62006"
|
||||
id="path3800"
|
||||
style="fill:#50152c;fill-opacity:0.992157;fill-rule:nonzero;stroke:none;stroke-width:0.111524" />
|
||||
<circle
|
||||
r="0.61961198"
|
||||
cy="-64.198372"
|
||||
cx="187.86154"
|
||||
id="path3802"
|
||||
style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.111524" />
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
|
Before Width: | Height: | Size: 3.7 KiB After Width: | Height: | Size: 4 KiB |
Before Width: | Height: | Size: 27 KiB After Width: | Height: | Size: 174 KiB |
|
@ -1,65 +1,92 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="853.677"
|
||||
height="146.304"
|
||||
viewBox="0 0 225.869 38.71"
|
||||
width="184.84857"
|
||||
height="170.00002"
|
||||
viewBox="0 0 48.907851 44.979173"
|
||||
version="1.1"
|
||||
id="svg6"
|
||||
sodipodi:docname="searxng.svg"
|
||||
id="svg2514"
|
||||
inkscape:version="1.2.2 (b0a8486541, 2022-12-01)"
|
||||
inkscape:export-filename="searxng.png"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96"
|
||||
sodipodi:docname="search.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">
|
||||
<defs
|
||||
id="defs10" />
|
||||
<sodipodi:namedview
|
||||
id="namedview8"
|
||||
id="namedview2516"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#000000"
|
||||
borderopacity="0.25"
|
||||
inkscape:showpageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
bordercolor="#999999"
|
||||
borderopacity="1"
|
||||
inkscape:showpageshadow="0"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:deskcolor="#d1d1d1"
|
||||
inkscape:document-units="mm"
|
||||
showgrid="false"
|
||||
inkscape:zoom="1.017006"
|
||||
inkscape:cx="426.74283"
|
||||
inkscape:cy="81.120468"
|
||||
inkscape:zoom="0.5946522"
|
||||
inkscape:cx="554.10541"
|
||||
inkscape:cy="518.79065"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="995"
|
||||
inkscape:window-height="1019"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg6" />
|
||||
inkscape:current-layer="layer1"
|
||||
showguides="false" />
|
||||
<defs
|
||||
id="defs2511" />
|
||||
<g
|
||||
aria-label="SearXNG"
|
||||
style="line-height:1.25;fill:#50162d;fill-opacity:1"
|
||||
font-style="normal"
|
||||
font-weight="400"
|
||||
font-size="50.8px"
|
||||
font-family="sans-serif"
|
||||
fill="#487cff"
|
||||
fill-opacity="1"
|
||||
stroke="none"
|
||||
stroke-width=".264583"
|
||||
id="g4">
|
||||
<path
|
||||
d="M56.494 102.704q-1.168-1.22-3.048-2.032-1.88-.813-4.42-.813-3.15 0-5.08 1.32-1.93 1.27-1.93 3.455 0 2.337 3.708 3.607l7.671 2.641q3.963 1.321 5.842 3.404 1.88 2.083 1.88 5.13 0 4.065-2.185 7.011-2.184 2.896-5.943 4.42-3.76 1.524-8.484 1.524-5.334 0-9.042-1.778-3.709-1.829-5.537-5.131-.204-.356-.204-.711 0-.356.407-.61l4.013-2.438q.356-.254.762-.254.61 0 1.118.66 1.32 1.626 2.387 2.54 1.118.864 2.693 1.321 1.625.457 4.165.457 3.2 0 5.182-1.168 1.981-1.22 1.981-3.76 0-1.27-.914-2.082-.915-.864-2.947-1.575l-7.417-2.49q-3.657-1.218-5.588-3.555-1.88-2.388-1.88-5.436 0-3.759 2.134-6.655 2.134-2.895 5.69-4.47 3.607-1.575 7.874-1.575 4.369 0 7.67 1.575 3.354 1.524 5.182 3.962.407.508.407.762t-.356.458l-4.52 2.997q-.052.05-.204.05-.305 0-1.067-.761zM77.004 132.37q-3.607 0-6.401-1.472-2.794-1.474-4.318-4.115-1.524-2.693-1.524-6.198 0-4.165 1.981-7.874 2.032-3.759 5.537-5.994 3.556-2.286 7.925-2.286 5.334 0 8.484 3.15 3.15 3.149 3.15 8.686 0 1.473-.204 2.845-.101.406-.355.61-.204.152-.813.152h-17.12q-.813 0-.813 2.184 0 2.388 1.524 3.709 1.575 1.27 4.064 1.27 1.93 0 3.607-.813 1.677-.813 3.302-2.54.254-.254.508-.254.153 0 .66.203l3.353 1.575q.61.203.61.66 0 .254-.254.66-2.946 3.303-5.893 4.573-2.895 1.27-7.01 1.27zm6.451-16.56q1.22 0 1.22-1.981 0-1.93-1.169-3.251-1.168-1.372-3.251-1.372-2.54 0-4.521 1.93-1.93 1.88-2.235 4.674zM109.411 129.374q-3.048 2.997-8.331 2.997-3.556 0-5.588-1.829t-2.032-4.775q0-3.607 2.387-5.893 2.388-2.337 5.995-3.353 3.657-1.067 7.569-1.168l1.829-.153q.965 0 1.117-.965l.153-1.067q.05-.254.05-.812 0-3.048-3.505-3.048-4.013 0-5.943 3.15-.254.355-.66.355-.305 0-.458-.051l-4.927-1.168q-.508-.102-.508-.66 0-.509.254-1.017 3.352-5.486 12.649-5.486 5.486 0 8.026 1.93 2.591 1.93 2.591 5.334 0 .457-.102 1.473l-2.54 17.78q-.05.66-.203.813-.152.102-.711.102h-5.232q-.508 0-.66-.305-.153-.305-.204-1.016l.05-1.32q0-.407-.253-.407-.254 0-.813.559zm2.184-9.754v-.305q0-.203-.101-.254-.102-.101-.407-.05l-1.828.152q-2.947.203-5.487 1.473t-2.54 3.912q0 1.219.864 1.98.914.712 2.438.712 1.321 0 2.49-.356 1.168-.406 2.031-1.066 1.88-1.423 2.083-2.896zM123.864 131.863q-.61 0-.915-.356-.254-.355-.152-.914l3.505-24.943q.05-.457.152-.559.153-.152.56-.152h6.044q.915 0 .712 1.067l-.356 2.286v.203q0 .355.203.355.153 0 .457-.304 1.778-1.88 3.963-2.998 2.184-1.117 3.962-1.117 1.067 0 1.575.152.508.153.457.61l-.813 5.69q-.05.558-.203.71-.101.153-.406.102-1.727-.254-3.455-.254-1.32 0-2.794.711-1.473.66-2.54 1.778-1.016 1.067-1.168 2.134l-2.083 14.834q-.101.66-.355.812-.204.153-.966.153zM176.481 130.085q.457.813.457 1.219 0 .305-.254.457-.254.102-.762.102h-7.06q-.61 0-.966-.153-.305-.152-.508-.61l-5.639-11.734q-.254-.508-.508-.508-.152 0-.559.559l-9.042 11.836q-.254.407-.61.508-.304.102-1.066.102h-5.944q-1.016 0-1.016-.66 0-.458.762-1.525l13.005-16.306q.559-.61.559-1.067 0-.356-.102-.559l-8.484-16.56q-.152-.255-.152-.509 0-.508.762-.508h7.417q.66 0 .914.153.254.152.508.66l4.928 10.363q.152.407.355.407.204 0 .508-.407l8.027-10.566q.305-.407.559-.508.304-.102.965-.102h6.553q.61 0 .61.559 0 .406-.305.914l-12.599 15.647q-.508.66-.508.914 0 .203.153.508zM218.113 94.17q.355 0 .457.202.101.153.05.56l-5.13 36.372q-.05.356-.254.457-.153.102-.559.102h-5.182q-.66 0-1.168-.813l-13.106-22.708q-.153-.254-.305-.254-.305 0-.356.56l-3.15 22.402q-.1.508-.304.66-.153.153-.711.153h-5.588q-.813 0-.712-1.118l5.08-35.814q.102-.508.204-.61.152-.152.66-.152h6.147q.508 0 .762.254.305.203.559.711l11.988 21.184q.254.406.508.406.407 0 .458-.61l2.946-21.284q.05-.407.203-.508.203-.153.66-.153zM236.44 132.37q-4.572 0-7.925-1.93-3.353-1.93-5.131-5.435-1.727-3.556-1.727-8.331 0-6.3 2.489-11.532 2.49-5.283 7.061-8.382 4.572-3.099 10.516-3.099 4.064 0 7.163 1.575 3.15 1.575 4.876 4.166 1.728 2.54 1.83 5.435 0 .508-.102.762-.051.203-.254.254l-6.96 1.016h-.05q-.204 0-.356-.254-.102-.254-.254-1.016-.356-2.54-1.93-4.115-1.525-1.574-4.319-1.574-3.607 0-5.994 2.641-2.337 2.642-3.455 6.807-1.117 4.115-1.117 8.586 0 4.368 1.625 6.299 1.677 1.88 4.877 1.88 3.099 0 5.233-1.728 2.133-1.727 3.15-4.216l.304-1.423q.152-.254.152-.355 0-.305-.61-.305h-6.248q-.304 0-.406-.102-.102-.152-.05-.558l.456-4.166q.051-.559.508-.559l14.53.051q.609 0 .761.203.203.153.102.66l-2.49 17.577q-.05.66-.812.66h-1.524q-.457 0-.711-.152-.204-.152-.356-.61l-.864-3.708q-.05-.254-.355-.254t-.66.407q-1.677 2.083-4.37 3.454-2.692 1.372-6.603 1.372z"
|
||||
style="-inkscape-font-specification:'Libre Franklin';fill:#50162d;fill-opacity:1"
|
||||
transform="translate(-29.722 -93.661)"
|
||||
font-style="normal"
|
||||
font-variant="normal"
|
||||
font-weight="400"
|
||||
font-stretch="normal"
|
||||
font-size="50.8px"
|
||||
font-family="Libre Franklin"
|
||||
fill="#487cff"
|
||||
fill-opacity="1"
|
||||
stroke-width=".264583"
|
||||
id="path2" />
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(-94.368149,-21.031308)">
|
||||
<g
|
||||
id="g12851-2"
|
||||
transform="matrix(0.14750574,0,0,0.14750574,83.934984,15.918245)"
|
||||
style="stroke:#50152c;stroke-opacity:0.992157"
|
||||
inkscape:export-filename="../../../searxng-beetroot/beetroot_static/img/searxng.png"
|
||||
inkscape:export-xdpi="1080.73"
|
||||
inkscape:export-ydpi="1080.73">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3814-0-7-1"
|
||||
d="m 80.033739,36.455764 c -7.11959,15.242893 -10.17798,31.779192 -8.22563,48.814566 5.01677,43.77413 41.675291,79.3245 91.536091,95.16289 -6.62576,-22.40752 -5.34093,-44.9362 2.6395,-65.84431 C 118.24672,100.40622 84.338699,71.780528 80.033739,36.455764 Z"
|
||||
style="fill:#50142b;fill-opacity:0.992157;fill-rule:nonzero;stroke:#50152c;stroke-opacity:0.992157" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3814-0-8"
|
||||
d="m 313.2893,37.799153 c 7.11959,15.242893 10.17798,31.779192 8.22563,48.814566 -5.01677,43.774131 -41.67531,79.324501 -91.53611,95.162891 6.62576,-22.40752 5.34093,-44.9362 -2.6395,-65.84431 47.73698,-14.18269 81.64502,-42.808383 85.94998,-78.133147 z"
|
||||
style="fill:#50142b;fill-opacity:0.992157;fill-rule:nonzero;stroke:#50152c;stroke-opacity:0.992157" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="rect3804-7"
|
||||
d="m 201.77833,175.2842 12.07511,-13.9057 c 4.0785,-4.69679 19.95774,2.45971 35.60368,16.04598 l 130.50177,113.32219 c 15.64593,13.58626 24.95835,28.30512 20.87985,33.00192 l -12.07512,13.9057 c -4.07849,4.69679 -19.95774,-2.45971 -35.60367,-16.04598 L 222.65818,208.28612 C 207.01224,194.69986 197.69983,179.981 201.77833,175.2842 Z"
|
||||
style="fill:#50142b;fill-opacity:0.992157;fill-rule:nonzero;stroke:#50152c;stroke-opacity:0.992157" />
|
||||
<circle
|
||||
r="107.58125"
|
||||
cy="149.35568"
|
||||
cx="196.89389"
|
||||
id="path2987-9"
|
||||
style="fill:#50142b;fill-opacity:0.992157;fill-rule:nonzero;stroke:#50152c;stroke-opacity:0.992157" />
|
||||
<circle
|
||||
r="72.430138"
|
||||
cy="149.10315"
|
||||
cx="196.64131"
|
||||
id="path3757-9-0"
|
||||
style="fill:#ffffff;fill-opacity:0.992157;fill-rule:nonzero;stroke:#50152c;stroke-width:0.713454;stroke-opacity:0.992157" />
|
||||
<circle
|
||||
r="27.274118"
|
||||
cy="150.79912"
|
||||
cx="197.85327"
|
||||
id="path3800-2"
|
||||
style="fill:#50132a;fill-opacity:1;fill-rule:nonzero;stroke:#50152c;stroke-opacity:0.992157" />
|
||||
<circle
|
||||
r="5.5558391"
|
||||
cy="141.34952"
|
||||
cx="208.98526"
|
||||
id="path3802-3"
|
||||
style="fill:#ffffff;fill-opacity:0.992157;fill-rule:nonzero;stroke:#50152c;stroke-opacity:0.992157" />
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
|
Before Width: | Height: | Size: 6.1 KiB After Width: | Height: | Size: 3.9 KiB |
|
@ -1 +1 @@
|
|||
{"version":3,"file":"searxng.head.min.js","sources":["../src/js/head/00_init.js"],"sourcesContent":["/* SPDX-License-Identifier: AGPL-3.0-or-later */\n(function (w, d) {\n 'use strict';\n\n // add data- properties\n var script = d.currentScript || (function () {\n var scripts = d.getElementsByTagName('script');\n return scripts[scripts.length - 1];\n })();\n\n w.searxng = {\n settings: JSON.parse(atob(script.getAttribute('client_settings')))\n };\n\n // update the css\n var hmtlElement = d.getElementsByTagName(\"html\")[0];\n hmtlElement.classList.remove('no-js');\n hmtlElement.classList.add('js');\n\n})(window, document);\n"],"names":["w","d","script","currentScript","scripts","getElementsByTagName","length","searxng","settings","JSON","parse","atob","getAttribute","hmtlElement","classList","remove","add","window","document"],"mappings":"CACA,SAAWA,EAAGC,gBAIZ,IAAIC,EAASD,EAAEE,eAAkB,WAC/B,IAAIC,EAAUH,EAAEI,qBAAqB,UACrC,OAAOD,EAAQA,EAAQE,OAAS,GAFD,GAKjCN,EAAEO,QAAU,CACVC,SAAUC,KAAKC,MAAMC,KAAKT,EAAOU,aAAa,sBAIhD,IAAIC,EAAcZ,EAAEI,qBAAqB,QAAQ,GACjDQ,EAAYC,UAAUC,OAAO,SAC7BF,EAAYC,UAAUE,IAAI,OAhB5B,CAkBGC,OAAQC"}
|
||||
{"version":3,"file":"searxng.head.min.js","sources":["../src/js/head/00_init.js"],"sourcesContent":["/* SPDX-License-Identifier: AGPL-3.0-or-later */\n(function (w, d) {\n 'use strict';\n\n // add data- properties\n var script = d.currentScript || (function () {\n var scripts = d.getElementsByTagName('script');\n return scripts[scripts.length - 1];\n })();\n\n w.searxng = {\n settings: JSON.parse(atob(script.getAttribute('client_settings')))\n };\n\n // update the css\n var hmtlElement = d.getElementsByTagName(\"html\")[0];\n hmtlElement.classList.remove('no-js');\n hmtlElement.classList.add('js');\n\n})(window, document);\n"],"names":["w","d","script","currentScript","scripts","getElementsByTagName","length","searxng","settings","JSON","parse","atob","getAttribute","hmtlElement","classList","remove","add","window","document"],"mappings":"CACA,SAAWA,EAAGC,GACZ,aAGA,IAAIC,EAASD,EAAEE,eAAkB,WAC/B,IAAIC,EAAUH,EAAEI,qBAAqB,QAAQ,EAC7C,OAAOD,EAAQA,EAAQE,OAAS,EACjC,EAAE,EAEHN,EAAEO,QAAU,CACVC,SAAUC,KAAKC,MAAMC,KAAKT,EAAOU,aAAa,iBAAiB,CAAC,CAAC,CACnE,EAGA,IAAIC,EAAcZ,EAAEI,qBAAqB,MAAM,EAAE,GACjDQ,EAAYC,UAAUC,OAAO,OAAO,EACpCF,EAAYC,UAAUE,IAAI,IAAI,CAE/B,GAAEC,OAAQC,QAAQ"}
|
|
@ -1,23 +1,23 @@
|
|||
{
|
||||
"devDependencies": {
|
||||
"ejs": "^3.1.8",
|
||||
"eslint": "^8.18.0",
|
||||
"grunt": "~1.6.1",
|
||||
"grunt-contrib-copy": "^1.0.0",
|
||||
"grunt-contrib-cssmin": "^4.0.0",
|
||||
"grunt-contrib-less": "~3.0.0",
|
||||
"grunt-contrib-uglify": "~5.2.1",
|
||||
"grunt-xmlmin": "~0.1.8",
|
||||
"grunt-contrib-watch": "~1.1.0",
|
||||
"grunt-eslint": "^24.0.0",
|
||||
"grunt-image": "^4.0.0",
|
||||
"grunt-stylelint": "^0.16.0",
|
||||
"grunt-image": "^6.4.0",
|
||||
"grunt-xmlmin": "~0.1.8",
|
||||
"ionicons": "^6.0.2",
|
||||
"less": "^4.1.3",
|
||||
"less-plugin-clean-css": "^1.5.1",
|
||||
"sharp": "^0.31.0",
|
||||
"stylelint": "^13.13.1",
|
||||
"stylelint-config-standard": "^22.0.0",
|
||||
"ejs": "^3.1.8",
|
||||
"svgo": "^3.0.0"
|
||||
},
|
||||
"dependencies": {
|
||||
|
|
|
@ -11,10 +11,10 @@
|
|||
--color-base-font-rgb: 68, 68, 68;
|
||||
--color-base-background: #fff;
|
||||
--color-base-background-mobile: #f2f5f8;
|
||||
--color-url-font: var(--disroot-green);
|
||||
--color-url-visited-font: var(--disroot-blueish);
|
||||
--color-url-font: #334999;
|
||||
--color-url-visited-font: #9822c3;
|
||||
/// Header Colors
|
||||
--color-header-background: var(--disroot-purple);
|
||||
--color-header-background: #fdfbff;
|
||||
--color-header-border: #ddd;
|
||||
/// Footer Colors
|
||||
--color-footer-background: #fdfbff;
|
||||
|
@ -28,7 +28,7 @@
|
|||
--color-backtotop-border: #ddd;
|
||||
--color-backtotop-background: #fff;
|
||||
/// Button Colors
|
||||
--color-btn-background: var(--disroot-purple);
|
||||
--color-btn-background: #3050ff;
|
||||
--color-btn-font: #fff;
|
||||
--color-show-btn-background: #bbb;
|
||||
--color-show-btn-font: #000;
|
||||
|
@ -46,8 +46,8 @@
|
|||
--color-success: #42db34;
|
||||
--color-success-background: lighten(#42db34, 40%);
|
||||
/// Categories Colors
|
||||
--color-categories-item-selected-font: var(--disroot-purple-even-lighter);
|
||||
--color-categories-item-border-selected: var(--disroot-purple-even-lighter);
|
||||
--color-categories-item-selected-font: #3050ff;
|
||||
--color-categories-item-border-selected: #3050ff;
|
||||
/// Autocomplete Colors
|
||||
--color-autocomplete-font: #000;
|
||||
--color-autocomplete-border: #bbb;
|
||||
|
@ -62,11 +62,11 @@
|
|||
--color-result-border: #ddd;
|
||||
--color-result-url-font: #000;
|
||||
--color-result-vim-selected: #f7f7f7;
|
||||
--color-result-vim-arrow: var(--disroot-purple);
|
||||
--color-result-vim-arrow: #000bbb;
|
||||
--color-result-description-highlight-font: #000;
|
||||
--color-result-link-font: var(--disroot-purple);
|
||||
--color-result-link-font-highlight: var(--disroot-purple-even-lighter);
|
||||
--color-result-link-visited-font: var(--disroot-green);
|
||||
--color-result-link-font: #000bbb;
|
||||
--color-result-link-font-highlight: #000bbb;
|
||||
--color-result-link-visited-font: #9822c3;
|
||||
--color-result-publishdate-font: #777;
|
||||
--color-result-engines-font: #545454;
|
||||
--color-result-search-url-border: #ddd;
|
||||
|
@ -102,13 +102,13 @@
|
|||
--color-toolkit-input-text-font: #222;
|
||||
--color-toolkit-checkbox-onoff-off-background: #ddd;
|
||||
--color-toolkit-checkbox-onoff-on-background: #ddd;
|
||||
--color-toolkit-checkbox-onoff-on-mark-background: var(--disroot-purple);
|
||||
--color-toolkit-checkbox-onoff-on-mark-background: #3050ff;
|
||||
--color-toolkit-checkbox-onoff-on-mark-color: #fff;
|
||||
--color-toolkit-checkbox-onoff-off-mark-background: #aaa;
|
||||
--color-toolkit-checkbox-onoff-off-mark-color: #fff;
|
||||
--color-toolkit-checkbox-label-background: #ddd;
|
||||
--color-toolkit-checkbox-label-border: #ddd;
|
||||
--color-toolkit-checkbox-input-border: var(--disroot-purple);
|
||||
--color-toolkit-checkbox-input-border: #3050ff;
|
||||
--color-toolkit-engine-tooltip-border: #ddd;
|
||||
--color-toolkit-engine-tooltip-background: #fff;
|
||||
--color-toolkit-loader-border: rgba(0, 0, 0, 0.2);
|
||||
|
@ -123,10 +123,10 @@
|
|||
--color-base-font-rgb: 187, 187, 187;
|
||||
--color-base-background: #222428;
|
||||
--color-base-background-mobile: #222428;
|
||||
--color-url-font: var(--disroot-green);
|
||||
--color-url-visited-font: var(--disroot-blueish-lighter);
|
||||
--color-url-font: #8af;
|
||||
--color-url-visited-font: #c09cd9;
|
||||
/// Header Colors
|
||||
--color-header-background: var(--disroot-purple-darker);
|
||||
--color-header-background: #1e1e22;
|
||||
--color-header-border: #333;
|
||||
/// Footer Colors
|
||||
--color-footer-background: #1e1e22;
|
||||
|
@ -140,7 +140,7 @@
|
|||
--color-backtotop-border: #333;
|
||||
--color-backtotop-background: #2b2e36;
|
||||
/// Button Colors
|
||||
--color-btn-background: var(--disroot-purple);
|
||||
--color-btn-background: #58f;
|
||||
--color-btn-font: #222;
|
||||
--color-show-btn-background: #555;
|
||||
--color-show-btn-font: #fff;
|
||||
|
@ -158,8 +158,8 @@
|
|||
--color-success: #79f56e;
|
||||
--color-success-background: darken(#42db34, 40%);
|
||||
/// Categories Colors
|
||||
--color-categories-item-selected-font: var(--disroot-purple-even-lighter);
|
||||
--color-categories-item-border-selected: var(--disroot-purple-even-lighter);
|
||||
--color-categories-item-selected-font: #58f;
|
||||
--color-categories-item-border-selected: #58f;
|
||||
/// Autocomplete Colors
|
||||
--color-autocomplete-font: #fff;
|
||||
--color-autocomplete-border: #555;
|
||||
|
@ -174,11 +174,11 @@
|
|||
--color-result-border: #333;
|
||||
--color-result-url-font: #fff;
|
||||
--color-result-vim-selected: #1f1f23cc;
|
||||
--color-result-vim-arrow: var(--disroot-purple);
|
||||
--color-result-vim-arrow: #8af;
|
||||
--color-result-description-highlight-font: #fff;
|
||||
--color-result-link-font: var(--disroot-purple-lighter);
|
||||
--color-result-link-font-highlight: var(--disroot-purple-even-lighter);
|
||||
--color-result-link-visited-font: var(--disroot-green);
|
||||
--color-result-link-font: #8af;
|
||||
--color-result-link-font-highlight: #8af;
|
||||
--color-result-link-visited-font: #c09cd9;
|
||||
--color-result-publishdate-font: #888;
|
||||
--color-result-engines-font: #a4a4a4;
|
||||
--color-result-search-url-border: #555;
|
||||
|
@ -214,13 +214,13 @@
|
|||
--color-toolkit-input-text-font: #fff;
|
||||
--color-toolkit-checkbox-onoff-off-background: #313338;
|
||||
--color-toolkit-checkbox-onoff-on-background: #313338;
|
||||
--color-toolkit-checkbox-onoff-on-mark-background: var(--disroot-purple);
|
||||
--color-toolkit-checkbox-onoff-on-mark-background: #58f;
|
||||
--color-toolkit-checkbox-onoff-on-mark-color: #222;
|
||||
--color-toolkit-checkbox-onoff-off-mark-background: #ddd;
|
||||
--color-toolkit-checkbox-onoff-off-mark-color: #222;
|
||||
--color-toolkit-checkbox-label-background: #222;
|
||||
--color-toolkit-checkbox-label-border: #333;
|
||||
--color-toolkit-checkbox-input-border: var(--disroot-purple-lighter);
|
||||
--color-toolkit-checkbox-input-border: #58f;
|
||||
--color-toolkit-engine-tooltip-border: #333;
|
||||
--color-toolkit-engine-tooltip-background: #222;
|
||||
--color-toolkit-loader-border: rgba(255, 255, 255, 0.2);
|
||||
|
@ -229,8 +229,6 @@
|
|||
--color-doc-code-background: #300;
|
||||
}
|
||||
|
||||
@import "disroot.less";
|
||||
|
||||
/// Dark Theme (autoswitch based on device pref)
|
||||
@media (prefers-color-scheme: dark) {
|
||||
:root.theme-auto {
|
||||
|
@ -276,4 +274,7 @@
|
|||
|
||||
// decoration of the select HTML elements
|
||||
@select-light-svg-path: "../svg/select-light.svg";
|
||||
@select-dark-svg-path: "../svg/select-dark.svg";
|
||||
@select-dark-svg-path: "../svg/select-dark.svg";
|
||||
|
||||
//import disroot theme custom changes
|
||||
@import "disroot.less";
|
||||
|
|
|
@ -13,8 +13,36 @@
|
|||
--disroot-green-darker: #71911e;
|
||||
--disroot-blueish: #1f5c60;
|
||||
--disroot-blueish-lighter: #38989f;
|
||||
--color-btn-font: white;
|
||||
--color-url-font: var(--disroot-green);
|
||||
--color-url-visited-font: var(--disroot-blueish);
|
||||
--color-header-background: var(--disroot-purple);
|
||||
--color-btn-background: var(--disroot-purple);
|
||||
--color-categories-item-selected-font: var(--disroot-purple-even-lighter);
|
||||
--color-categories-item-border-selected: var(--disroot-purple-even-lighter);
|
||||
--color-result-vim-arrow: var(--disroot-purple);
|
||||
--color-result-link-font: var(--disroot-purple);
|
||||
--color-result-link-font-highlight: var(--disroot-purple-even-lighter);
|
||||
--color-result-link-visited-font: var(--disroot-green);
|
||||
--color-toolkit-checkbox-onoff-on-mark-background: var(--disroot-purple);
|
||||
--color-toolkit-checkbox-input-border: var(--disroot-purple);
|
||||
--color-search-background-hover: var(--disroot-purple);
|
||||
}
|
||||
.dark-themes() {
|
||||
--color-url-font: var(--disroot-green);
|
||||
--color-url-visited-font: var(--disroot-blueish-lighter);
|
||||
--color-header-background: var(--disroot-purple-darker);
|
||||
--color-btn-background: var(--disroot-purple);
|
||||
--color-btn-font: var(--color-base-font);
|
||||
--color-categories-item-selected-font: var(--disroot-purple-even-lighter);
|
||||
--color-categories-item-border-selected: var(--disroot-purple-even-lighter);
|
||||
--color-result-vim-arrow: var(--disroot-purple);
|
||||
--color-result-link-font: var(--disroot-purple-lighter);
|
||||
--color-result-link-font-highlight: var(--disroot-purple-even-lighter);
|
||||
--color-result-link-visited-font: var(--disroot-green);
|
||||
--color-toolkit-checkbox-input-border: var(--disroot-purple-lighter);
|
||||
--color-search-background-hover: var(--disroot-purple-lighter);
|
||||
}
|
||||
|
||||
// Category color
|
||||
.category label {
|
||||
color: #c0bbbb;
|
||||
|
@ -40,6 +68,13 @@
|
|||
fill: var(--disroot-purple-even-lighter);
|
||||
}
|
||||
|
||||
//Logo
|
||||
.index {
|
||||
.title {
|
||||
min-height: 8rem;
|
||||
}
|
||||
}
|
||||
|
||||
// Have a slightly more bright disroot purple color on logo png
|
||||
// when in dark mode
|
||||
.theme-dark .index .title {
|
||||
|
@ -48,4 +83,44 @@
|
|||
|
||||
.theme-dark img.logo {
|
||||
filter: brightness(1.25);
|
||||
}
|
||||
}
|
||||
// Dashboard
|
||||
.dashboard {
|
||||
width: 50%;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
margin-top: 60px;
|
||||
}
|
||||
|
||||
.dashboard-grid {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
gap: 1rem;
|
||||
}
|
||||
|
||||
.image-dash {
|
||||
display: block;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
width: 50%;
|
||||
}
|
||||
|
||||
.dashlink-text {
|
||||
//position: absolute;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
text-align: center;
|
||||
color: var(--color-base-font);
|
||||
}
|
||||
|
||||
.image-dash img {
|
||||
max-width: 100%;
|
||||
height: auto;
|
||||
|
||||
&:hover {
|
||||
filter: grayscale(1);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -31,6 +31,7 @@
|
|||
|
||||
// to center the results
|
||||
@import "style-center.less";
|
||||
@import "disroot.less";
|
||||
|
||||
// ion-icon
|
||||
.ion-icon {
|
||||
|
|
381
beetroot_static/test.html
Normal file
|
@ -0,0 +1,381 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Image Grid</title>
|
||||
<style>
|
||||
.image-grid {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(auto-fit, minmax(4rem, 1fr));
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
gap: 10px;
|
||||
justify-items: center;
|
||||
}
|
||||
|
||||
.image-container {
|
||||
max-width: 4rem;
|
||||
}
|
||||
|
||||
.image-container img {
|
||||
max-width: 100%;
|
||||
height: auto;
|
||||
}
|
||||
|
||||
.image-container p {
|
||||
text-align: center;
|
||||
margin: 0;
|
||||
padding: 5px;
|
||||
font-size: 14px;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="image-grid">
|
||||
<div class="image-container">
|
||||
<img src="image1.jpg">
|
||||
<div><p>Title 1</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image2.jpg">
|
||||
<div><p>Title 2</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image3.jpg">
|
||||
<div><p>Title 3</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image4.jpg">
|
||||
<div><p>Title 4</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image5.jpg">
|
||||
<div><p>Title 5</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image1.jpg">
|
||||
<div><p>Title 1</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image2.jpg">
|
||||
<div><p>Title 2</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image3.jpg">
|
||||
<div><p>Title 3</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image4.jpg">
|
||||
<div><p>Title 4</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image5.jpg">
|
||||
<div><p>Title 5</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image1.jpg">
|
||||
<div><p>Title 1</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image2.jpg">
|
||||
<div><p>Title 2</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image3.jpg">
|
||||
<div><p>Title 3</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image4.jpg">
|
||||
<div><p>Title 4</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image5.jpg">
|
||||
<div><p>Title 5</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image1.jpg">
|
||||
<div><p>Title 1</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image2.jpg">
|
||||
<div><p>Title 2</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image3.jpg">
|
||||
<div><p>Title 3</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image4.jpg">
|
||||
<div><p>Title 4</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image5.jpg">
|
||||
<div><p>Title 5</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image1.jpg">
|
||||
<div><p>Title 1</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image2.jpg">
|
||||
<div><p>Title 2</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image3.jpg">
|
||||
<div><p>Title 3</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image4.jpg">
|
||||
<div><p>Title 4</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image5.jpg">
|
||||
<div><p>Title 5</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image1.jpg">
|
||||
<div><p>Title 1</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image2.jpg">
|
||||
<div><p>Title 2</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image3.jpg">
|
||||
<div><p>Title 3</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image4.jpg">
|
||||
<div><p>Title 4</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image5.jpg">
|
||||
<div><p>Title 5</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image1.jpg">
|
||||
<div><p>Title 1</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image2.jpg">
|
||||
<div><p>Title 2</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image3.jpg">
|
||||
<div><p>Title 3</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image4.jpg">
|
||||
<div><p>Title 4</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image5.jpg">
|
||||
<div><p>Title 5</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image1.jpg">
|
||||
<div><p>Title 1</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image2.jpg">
|
||||
<div><p>Title 2</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image3.jpg">
|
||||
<div><p>Title 3</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image4.jpg">
|
||||
<div><p>Title 4</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image5.jpg">
|
||||
<div><p>Title 5</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image1.jpg">
|
||||
<div><p>Title 1</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image2.jpg">
|
||||
<div><p>Title 2</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image3.jpg">
|
||||
<div><p>Title 3</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image4.jpg">
|
||||
<div><p>Title 4</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image5.jpg">
|
||||
<div><p>Title 5</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image1.jpg">
|
||||
<div><p>Title 1</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image2.jpg">
|
||||
<div><p>Title 2</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image3.jpg">
|
||||
<div><p>Title 3</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image4.jpg">
|
||||
<div><p>Title 4</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image5.jpg">
|
||||
<div><p>Title 5</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image1.jpg">
|
||||
<div><p>Title 1</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image2.jpg">
|
||||
<div><p>Title 2</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image3.jpg">
|
||||
<div><p>Title 3</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image4.jpg">
|
||||
<div><p>Title 4</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image5.jpg">
|
||||
<div><p>Title 5</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image1.jpg">
|
||||
<div><p>Title 1</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image2.jpg">
|
||||
<div><p>Title 2</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image3.jpg">
|
||||
<div><p>Title 3</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image4.jpg">
|
||||
<div><p>Title 4</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image5.jpg">
|
||||
<div><p>Title 5</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image1.jpg">
|
||||
<div><p>Title 1</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image2.jpg">
|
||||
<div><p>Title 2</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image3.jpg">
|
||||
<div><p>Title 3</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image4.jpg">
|
||||
<div><p>Title 4</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image5.jpg">
|
||||
<div><p>Title 5</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image1.jpg">
|
||||
<div><p>Title 1</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image2.jpg">
|
||||
<div><p>Title 2</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image3.jpg">
|
||||
<div><p>Title 3</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image4.jpg">
|
||||
<div><p>Title 4</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image5.jpg">
|
||||
<div><p>Title 5</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image1.jpg">
|
||||
<div><p>Title 1</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image2.jpg">
|
||||
<div><p>Title 2</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image3.jpg">
|
||||
<div><p>Title 3</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image4.jpg">
|
||||
<div><p>Title 4</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image5.jpg">
|
||||
<div><p>Title 5</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image1.jpg">
|
||||
<div><p>Title 1</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image2.jpg">
|
||||
<div><p>Title 2</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image3.jpg">
|
||||
<div><p>Title 3</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image4.jpg">
|
||||
<div><p>Title 4</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image5.jpg">
|
||||
<div><p>Title 5</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image1.jpg">
|
||||
<div><p>Title 1</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image2.jpg">
|
||||
<div><p>Title 2</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image3.jpg">
|
||||
<div><p>Title 3</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image4.jpg">
|
||||
<div><p>Title 4</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image5.jpg">
|
||||
<div><p>Title 5</p></div>
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="image6.jpg">
|
||||
<div><p>Title 6</p></div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
{% extends "simple/base.html" %}
|
||||
{% extends "beetroot/base.html" %}
|
||||
{% block content %}
|
||||
<div class="center">
|
||||
<h1>{{ _('Page not found') }}</h1>
|
||||
|
|
|
@ -28,7 +28,7 @@
|
|||
<link rel="icon" href="{{ url_for('static', filename='img/favicon.svg') }}" type="image/svg+xml">
|
||||
</head>
|
||||
<body class="{{ endpoint }}_endpoint" >
|
||||
<main id="main_{{ self._TemplateReference__context.name|replace("simple/", "")|replace(".html", "") }}" class="{{body_class}}">
|
||||
<main id="main_{{ self._TemplateReference__context.name|replace("beetroot/", "")|replace(".html", "") }}" class="{{body_class}}">
|
||||
{% if errors %}
|
||||
<div class="dialog-error" role="alert">
|
||||
<a href="#" class="close" aria-label="close" title="close">×</a>
|
||||
|
@ -41,13 +41,18 @@
|
|||
{% endif %}
|
||||
|
||||
<nav id="links_on_top">
|
||||
{%- from 'simple/icons.html' import icon_big -%}
|
||||
{%- from 'beetroot/icons.html' import icon_big -%}
|
||||
{%- block custom_url -%}
|
||||
<a href="{{ instance_name }}" class="link_on_top_about">{{ icon_big('people-outline') }}<span>{{ _('Account') }}</span></a>
|
||||
<a href="https://howto.disroot.org" class="link_on_top_about">{{ icon_big('school-outline') }}<span>{{ _('Help') }}</span></a>
|
||||
<a href="https://status.disroot.org" class="link_on_top_about">{{ icon_big('magnet-outline') }}<span>{{ _('Server Status') }}</span></a>
|
||||
{%- endblock -%}
|
||||
{%- block linkto_about -%}
|
||||
<a href="{{ url_for('info', pagename='about') }}" class="link_on_top_about">{{ icon_big('information-circle-outline') }}<span>{{ _('About') }}</span></a>
|
||||
{%- endblock -%}
|
||||
{%- block linkto_donate -%}
|
||||
{%- if donation_url -%}
|
||||
<a href="{{ donation_url }}" class="link_on_top_donate">{{ icon_big('heart-outline') }}<span>{{ _('Donate') }}</span></a>
|
||||
{%- if serverstatus_url -%}
|
||||
<a href="{{ serverstatus_url }}" class="link_on_top_donate">{{ icon_big('heart-outline') }}<span>{{ _('Status') }}</span></a>
|
||||
{%- endif -%}
|
||||
{%- endblock -%}
|
||||
{%- block linkto_preferences -%}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{% from 'simple/icons.html' import icon_big %}
|
||||
{% from 'beetroot/icons.html' import icon_big %}
|
||||
{%- set category_icons = {
|
||||
'general': 'search-outline',
|
||||
'images': 'image-outline',
|
||||
|
|
|
@ -1,8 +1,78 @@
|
|||
{% extends "simple/base.html" %}
|
||||
{% from 'simple/icons.html' import icon_big %}
|
||||
{% extends "beetroot/base.html" %}
|
||||
{% from 'beetroot/icons.html' import icon_big %}
|
||||
{% block content %}
|
||||
<div class="index">
|
||||
<div class="title"><h1>SearXNG</h1></div>
|
||||
{% include 'simple/simple_search.html' %}
|
||||
{% include 'beetroot/simple_search.html' %}
|
||||
</div>
|
||||
<div class="dashboard">
|
||||
<h1 class="title">More disroot apps:</h1>
|
||||
<div class="dashboard-grid">
|
||||
<div class="image-dash">
|
||||
<a class="dashlink" href="https://webmail.disroot.org">
|
||||
<img src="/static/themes/beetroot/img/dashboard/email_circle.png">
|
||||
<div class="dashlink-text"><p>Webmail</p></div>
|
||||
</a>
|
||||
</div>
|
||||
<div class="image-dash">
|
||||
<a class="dashlink" href="https://cloud.disroot.org">
|
||||
<img src="/static/themes/beetroot/img/dashboard/cloud_circle.png">
|
||||
<div class="dashlink-text"><p>Cloud</p></div>
|
||||
</a>
|
||||
</div>
|
||||
<div class="image-dash">
|
||||
<a class="dashlink" href="https://webchat.disroot.org">
|
||||
<img src="/static/themes/beetroot/img/dashboard/chat_circle.png">
|
||||
<div class="dashlink-text"><p>Webchat</p></div>
|
||||
</a>
|
||||
</div>
|
||||
<div class="image-dash">
|
||||
<a class="dashlink" href="https://cryptpad.disroot.org">
|
||||
<img src="/static/themes/beetroot/img/dashboard/cryptpad_circle.png">
|
||||
<div class="dashlink-text"><p>Cryptpad</p></div>
|
||||
</a>
|
||||
</div>
|
||||
<div class="image-dash">
|
||||
<a class="dashlink" href="https://fe.disroot.org">
|
||||
<img src="/static/themes/beetroot/img/dashboard/fe_circle.png">
|
||||
<div class="dashlink-text"><p>Akkoma</p></div>
|
||||
</a>
|
||||
</div>
|
||||
<div class="image-dash">
|
||||
<a class="dashlink" href="https://git.disroot.org">
|
||||
<img src="/static/themes/beetroot/img/dashboard/gitea_circle.png">
|
||||
<div class="dashlink-text"><p>Git</p></div>
|
||||
</a>
|
||||
</div>
|
||||
<div class="image-dash">
|
||||
<a class="dashlink" href="https://upload.disroot.org">
|
||||
<img src="/static/themes/beetroot/img/dashboard/upload_circle.png">
|
||||
<div class="dashlink-text"><p>File share</p></div>
|
||||
</a>
|
||||
</div>
|
||||
<div class="image-dash">
|
||||
<a class="dashlink" href="https://pad.disroot.org">
|
||||
<img src="/static/themes/beetroot/img/dashboard/pads_circle.png">
|
||||
<div class="dashlink-text"><p>Ether pads</p></div>
|
||||
</a>
|
||||
</div>
|
||||
<div class="image-dash">
|
||||
<a class="dashlink" href="https://bin.disroot.org">
|
||||
<img src="/static/themes/beetroot/img/dashboard/bin_circle.png">
|
||||
<div class="dashlink-text"><p>Paste Bin</p></div>
|
||||
</a>
|
||||
</div>
|
||||
<div class="image-dash">
|
||||
<a class="dashlink" href="https://calls.disroot.org">
|
||||
<img src="/static/themes/beetroot/img/dashboard/jitsi_circle.png">
|
||||
<div class="dashlink-text"><p>Video Conference</p></div>
|
||||
</a>
|
||||
</div>
|
||||
<div class="image-dash">
|
||||
<a class="dashlink" href="https://mumble.disroot.org">
|
||||
<img src="/static/themes/beetroot/img/dashboard/mumble_circle.png">
|
||||
<div class="dashlink-text"><p>Audio Conference</p></div>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{% extends 'simple/page_with_header.html' %}
|
||||
{% extends 'beetroot/page_with_header.html' %}
|
||||
{% block title %}{{ active_page.title }} - {% endblock %}
|
||||
{% block linkto_about %}{% endblock %}
|
||||
{% block linkto_donate %}{% endblock %}
|
||||
|