startpage

Start page for browsers
git clone https://codeberg.org/night0721/startpage
Log | Files | Refs | README

commit 405a46009e623ea5c36f89dbc7ba3401772c266f
Author: night0721 <[email protected]>
Date:   Sat, 20 Jan 2024 15:08:38 +0000

init

Diffstat:
A.github/workflows/publish.yml | 51+++++++++++++++++++++++++++++++++++++++++++++++++++
AREADME.md | 7+++++++
Aindex.html | 52++++++++++++++++++++++++++++++++++++++++++++++++++++
Astyle.css | 108+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
4 files changed, 218 insertions(+), 0 deletions(-)

diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml @@ -0,0 +1,51 @@ +name: "publish image" + +on: + push: + branches: ["master"] + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +defaults: + run: + shell: bash + +jobs: + package: + permissions: + contents: read + packages: write + runs-on: ubuntu-latest + steps: + + - name: generate image tag + id: tag + run: | + sha="${GITHUB_SHA::7}" + unix="$(date +%s)" + echo "tag=$sha-$unix" >> $GITHUB_OUTPUT + + - name: login to ghcr + uses: docker/login-action@v2 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + + - name: checkout repo + uses: actions/checkout@v3 + + - name: set up docker buildx + uses: docker/setup-buildx-action@v2 + + - name: build and push image + uses: docker/build-push-action@v3 + with: + context: . + platforms: linux/amd64,linux/arm64 + push: ${{ github.event_name != 'pull_request' }} + tags: | + ghcr.io/${{ github.repository }}:${{ steps.tag.outputs.tag }} + ghcr.io/${{ github.repository }}:latest diff --git a/README.md b/README.md @@ -0,0 +1,7 @@ +# startpage + +## `tree` inspired startpage with common links, as well as an html form forwarding to searx + +Try it out [here!](https://start.night0721.xyz) +![](https://media.discordapp.net/attachments/842014909264953354/1198282739321942067/image.png?ex=65be56c4&is=65abe1c4&hm=ec12847c50c9234f93f27ff38feb84969531ac202df9cb62ecf4449a611657fd&=&format=webp&quality=lossless&width=716&height=610) +Credits: [skovati](https://skovati.dev) diff --git a/index.html b/index.html @@ -0,0 +1,52 @@ +<!DOCTYPE html> +<html> + <head> + <meta charset="UTF-8"> + <link rel="stylesheet" type="text/css" href="style.css"> + <link rel="icon" href="data:,"> + <title> ~ </title> + </head> + <body> + <div class="container"> + <div class="prompt"><span>night</span>@<span>n10</span> ~ tree</div> + <div class="tree"> + <h1>.</h1> + <ul> + <li> + <h1>/usr/</h1> + <ul> + <li> + <h1>/docs/</h1> + <ul> + <li><a href="https://wiki.gentoo.org/">gentoo</a></li> + <li><a href="https://wiki.archlinux.org/">arch</a></li> + <li><a href="https://man7.org/linux/man-pages/index.html">man</a></li> + </ul> + </li> + <li><a href="https://youtube.com/">youtube</a></li> + </ul> + </li> + <li> + <h1>/dev/</h1> + <ul> + <li><a href="https://git.sr.ht/~night0721">sr.ht</a></li> + <li><a href="https://github.com/night0721">github</a></li> + <li><a href="https://codeberg.org/night0721">codeberg</a></li> + </ul> + </li> + <li> + <h1>/etc/</h1> + <ul> + <li><a href="https://singlelogin.se/">zlib</a></li> + </ul> + </li> + </ul> + </div> + <div class="prompt"><span>night</span>@<span>n10</span> ~ search</div> + <form action="https://priv.au/search" method="GET"> + <h1>search: </h1> + <input type="text" name="q" autofocus="autofocus"> + </form> + </div> + </body> +</html> diff --git a/style.css b/style.css @@ -0,0 +1,108 @@ +:root { + --font: "monospace"; + --font-family: "monospace"; + --background: #080c07; + --foreground: #B9C9B8; + --green: #638660; + --red: #BD4D5A; + --orange: #A47449; + --branch: 1px solid #B9C9B8; +} + +html { + font-size: 20px; +} + +body { + background: var(--background); +} + +.container { + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); +} + +.prompt { + font-family: var(--font); + color: var(--foreground); +} + +.prompt~.prompt { + padding: 1.5rem 0 0.3125rem; +} + +span { + color: var(--green); +} + +h1 { + display: inline; + font-family: var(--font); + font-size: 1rem; + font-weight: normal; + color: var(--red); +} + +.tree > ul { + margin: 0; + padding-left: 1rem; +} + +ul { + list-style: none; + padding-left: 2.5rem; +} + +li { + position: relative; +} + +li::before, li::after { + content: ""; + position: absolute; + left: -0.75rem; +} + +li::before { + border-top: var(--branch); + top: 0.75rem; + width: 0.5rem; +} + +li::after { + border-left: var(--branch); + height: 100%; + top: 0.25rem; +} + +li:last-child::after { + height: 0.5rem; +} + +a { + font-family: var(--font); + font-size: 1rem; + color: var(--foreground); + text-decoration: none; + outline: none; +} + +a:hover { + color: var(--background); + background: var(--orange); +} + +form h1 { + padding-left: 0.125rem; +} + +input { + font-family: var(--font); + font-size: 1rem; + color: var(--foreground); + background-color: var(--background); + border: none; + outline: none; +}