diff --git a/404.html b/404.html new file mode 100644 index 0000000..e8c9706 --- /dev/null +++ b/404.html @@ -0,0 +1,181 @@ + + + + + + 404 Not Found + + + + + +
+ +
+
+
+ A wild 404-PAGE appeared! +
+ +
+
+ + + diff --git a/Caddyfile b/Caddyfile new file mode 100644 index 0000000..44b062d --- /dev/null +++ b/Caddyfile @@ -0,0 +1,18 @@ +:80 { + root * /srv + file_server { + hide Caddyfile + hide .git .gitignore Caddyfile *.md + } + + handle_errors { + @404 { + expression {http.error.status_code} == 404 + } + rewrite @404 /404.html + file_server + } + + log + metrics /metrics +} \ No newline at end of file diff --git a/README.md b/README.md index caa7087..5211958 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,8 @@ ![Logo](https://cdn.cottle.cloud/littlelink/littlelink.gif) # LittleLink +This repository is a fork of [LittleLink](https://github.com/sethcottle/littlelink) hosted on my [website](https://syyrell.com). It adds additional websites as long as a custom toggle button to switch between dark and light mode. Default theme is chosen according to client operating system preference thanks to **prefers-color-scheme** CSS media feature (see [Mozilla documentation](https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-color-scheme)) + The DIY self-hosted LinkTree alternative. LittleLink has more than 100 branded button styles you can easily use, with more being added by our community all the time. ![Theme](https://cdn.cottle.cloud/littlelink/themesupport.gif) diff --git a/css/brands.css b/css/brands.css index b078cd7..b8675b7 100644 --- a/css/brands.css +++ b/css/brands.css @@ -357,6 +357,16 @@ button:hover, filter: brightness(90%); } +/* Gitea */ +.button.button-gitea { + color: #ffffff; + background-color: #87ab63; +} +.button.button-gitea:hover, +.button.button-gitea:focus { + filter: brightness(90%); +} + /* GitHub */ .button.button-github { color: #ffffff; @@ -443,6 +453,16 @@ button:hover, filter: brightness(90%); } +/* GPG */ +.button.button-gpg { + color: #ffffff; + background-color: #29aff1; +} +.button.button-gpg:hover, +.button.button-gpg:focus { + filter: brightness(90%); +} + /* Guilded */ .button.button-guilded { color: #000000; @@ -464,6 +484,16 @@ button:hover, filter: brightness(90%); } +/* Hedgedoc */ +.button.button-hedgedoc { + color: #ffffff; + background-color: #eebc7a; +} +.button.button-hedgedoc:hover, +.button.button-hedgedoc:focus { + filter: brightness(90%); +} + /* Instagram */ .button.button-instagram { color: #ffffff; @@ -568,6 +598,20 @@ button:hover, filter: brightness(90%); } +/* Mealie */ +.button.button-mealie { + color: #ffffff; + background-color: #e58325; +} +.button.button-mealie:hover, +.button.button-mealie:focus { + filter: brightness(90%); +} + +.icon.icon-mealie { + filter: brightness(0) invert(1); +} + /* Medium */ .button.button-medium { color: #ffffff; diff --git a/css/skeleton-auto.css b/css/skeleton-auto.css index 56f49cb..2d2abfe 100644 --- a/css/skeleton-auto.css +++ b/css/skeleton-auto.css @@ -276,4 +276,50 @@ hr { url('../fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-800.woff') format('woff'), /* Modern Browsers */ url('../fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-800.ttf') format('truetype'), /* Safari, Android, iOS */ url('../fonts/open-sans-v34-vietnamese_latin-ext_latin_hebrew_greek-ext_greek_cyrillic-ext_cyrillic-800.svg#OpenSans') format('svg'); /* Legacy iOS */ +} + +label { + width:70px; + height:35px; + position: relative; + display: block; + top: -40px; + left: 265px; + background: #ebebeb; + border-radius: 20px; + box-shadow: inset 0px 0px 10px rgba(0,0,0,0.4), inset 0px 0px 10px rgba(255,255,255,0.4); + cursor: pointer; +} + +label:after { + content: ""; + width:28px; + height: 28px; + position: absolute; + top:4px; + left:2px; + background: linear-gradient(180deg,#ffcc89,#d8860b); + border-radius: 60px; + box-shadow: 0px 5px 10px rgba(0,0,0,0.2); +} +input { + width: 0; + height: 0; + visibility: hidden; +} + +input:checked + label { + background: #242424; +} +input:checked + label:after { + left:68px; + transform: translateX(-100%); + background: linear-gradient(180deg,#777,#3a3a3a); +} +label, label:after { + transition: 0.3s +} + +label:active:after{ + width: 40px; } \ No newline at end of file diff --git a/images/icons/gitea.svg b/images/icons/gitea.svg new file mode 100644 index 0000000..9df6b83 --- /dev/null +++ b/images/icons/gitea.svg @@ -0,0 +1,31 @@ + + + + + + + + + + + + diff --git a/images/icons/gpg.svg b/images/icons/gpg.svg new file mode 100644 index 0000000..7671d73 --- /dev/null +++ b/images/icons/gpg.svg @@ -0,0 +1,88 @@ + + + + + + + image/svg+xml + + + + + + + + + + + + + diff --git a/images/icons/hedgedoc.png b/images/icons/hedgedoc.png new file mode 100644 index 0000000..02e40ab Binary files /dev/null and b/images/icons/hedgedoc.png differ diff --git a/images/icons/mealie.png b/images/icons/mealie.png new file mode 100644 index 0000000..e1ce9da Binary files /dev/null and b/images/icons/mealie.png differ diff --git a/images/parrot.png b/images/parrot.png new file mode 100644 index 0000000..147de74 Binary files /dev/null and b/images/parrot.png differ diff --git a/index.html b/index.html index df1105f..0afead6 100644 --- a/index.html +++ b/index.html @@ -6,15 +6,12 @@ - LittleLink - - + Syrell - @@ -24,12 +21,20 @@ Light: css/skeleton-light.css Dark: css/skeleton-dark.css --> + - @@ -63,13 +68,12 @@ --> - + -

LittleLink

+

Syrell

-

An open source DIY Linktree alternative.

+ + - - LittleLink
+ - - Amazon Wishlist
+ + Email
- - Listen on Amazon Music
- - - Apple App Store
+ + GPG
- - Listen on Apple Music
- - - Listen on Apple Music
- - - Listen on Apple Podcasts
- - - Listen on Apple Podcasts
- - - Bandcamp
- - - Behance
- - - Bluesky
- - - Buy Me A Coffee
- - - Schedule with Cal.com
- - - Schedule with Calendly
- - - Cash App
- - - Clubhouse
- - - Dev.to
- - - Discord
- - - Dribbble
- - - Shop on Etsy
- - - Find us on Facebook
- - - Chat on Messenger
- - - Figma Community
- - - Fiverr Gig
- - - Flickr
- - - GitHub
+ + Gitea
- GitLab
+ GitLab
- - GoFundMe
+ + Hedgedoc
- - Goodreads
+ + Mealie
- - View in Google Drive
- - - Google Play Store
- - - Listen on Google Podcasts
- - - Google Scholar
- - - Guilded
- - - Hashnode
- - - Instagram
- - - Kickstarter
- - - Kit
- - - Ko-fi
- - - Last.fm
- - - Letterboxd
- - - Line
- - - LinkedIn
- - - Mailchimp
- - - Mastodon
- - - Medium
- - - Notion
- - - OnlyFans (18+)
- - - Patreon
- - - PayPal
- - - Pinterest
- - - Post.news
- - - Product Hunt
- - - Read.cv
- - - Redbubble
- - - Reddit
- - - Buy with Shop
- - - Signal
- - - Skoob
- - - Join Slack
- - - Snapchat
- - - SoundCloud
- - - Listen on Spotify
- - - Listen on Spotify
- - - Buy with Square
- - - Steam
- - - Strava
- - - Substack
- - - Telegram
- - - Threema
- - - TikTok
- - - Trello
- - - Tumblr
- - - Twitch
- - - Twitter
- - - Unsplash
- - - Untappd
- - - Upwork
- - - Venmo
- - - Vimeo
- - - VRChat
- - - VSCO
- - - WhatsApp
- - - WordPress
- - - Xing
- - - YouTube
- - - Listen on YouTube Music
- - - Join Zoom Webinar
- - - Read our blog
- - - Event RSVP
- - - Download File
- - - View the code
- - - Homelab Setup
- - - Email Us
- - - Email Us
- - - Visit Homepage
- - - Get Directions
- - - Call Us
- - - Leave us a review
- - - RSS Subscribe
- - - Visit Our Shop
- - - 10% Discount
- - - Send us a message
- - - Visit Website
- -
-

Privacy Policy | Build your own by forking LittleLink.

- +

© Syrell

diff --git a/privacy.html b/privacy.html deleted file mode 100644 index bbf642b..0000000 --- a/privacy.html +++ /dev/null @@ -1,164 +0,0 @@ - - - - - - - - LittleLink Privacy Policy - - - - - - - - - - - - - - - - - - - - - -
-
-
-

- ⬅️ Back to main page -

- - - - -

🔒 Privacy Overview

- - -

- Personal Data collected for the following purposes and using the - following services: -
-
- - 🧮 Analytics -
- The services contained in this section enable the Owner to monitor - and analyze web traffic and can be used to keep track of User - behavior. -
-
- - 1.) Example LLC.
- Personal Data: - various types of Data as specified in the privacy policy of the - service
- Privacy Policy -

- - - -

- 📦 Displaying Content From External Platforms -
- This type of service allows you to view content hosted on external - platforms directly from the pages of this website and interact with - them.

- This type of service might still collect web traffic data for the - pages where the service is installed, even when Users do not use it. -
-
- - 1.) Example LLC
- Personal Data: - Usage Data; various types of Data as specified in the privacy - policy of the service -
- Privacy Policy -

- - - -

- 📁 Hosting and Backend Infrastructure -
- This type of service has the purpose of hosting Data and files that - enable this website to exist. -
-
- Some services among those listed below, if any, may work through - geographically distributed servers, making it difficult to determine - the actual location where the Personal Data are stored. -
-
- - 1.) Example LLC.
- Personal Data: - various types of Data as specified in the privacy policy of the - service -
- Privacy Policy -

- -
-
- - -
-

Build your own by forking LittleLink.

-
-
-
-
- - - -