├── CNAME ├── .gitignore ├── .github ├── FUNDING.yml ├── dependabot.yml ├── workflows │ └── ci.yml └── PULL_REQUEST_TEMPLATE.yml ├── scripts ├── check_alphabetical_sorting.sh └── site_stats.sh ├── _includes ├── navigation.html ├── faq-02.html ├── sites.html ├── faq-04.html ├── faq-05.html ├── faq-01.html └── faq-03.html ├── _data ├── navigation.yml └── sites.yml ├── Gemfile ├── _config.yml ├── assets ├── js │ └── randomSite.js └── css │ └── style.css ├── faq.md ├── LICENSE ├── index.md ├── _layouts └── default.html ├── README.md ├── _plugins └── rss_feed.rb └── Gemfile.lock /CNAME: -------------------------------------------------------------------------------- 1 | darktheme.club -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .jekyll-cache 2 | _site -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | github: [garritfra] 2 | custom: ["https://www.buymeacoffee.com/garrit"] 3 | -------------------------------------------------------------------------------- /scripts/check_alphabetical_sorting.sh: -------------------------------------------------------------------------------- 1 | # Returns a non-zero exit code if the data sites are not alphabetically sorted. 2 | 3 | grep 'domain:' _data/sites.yml | tr '[:upper:]' '[:lower:]' | sort -c 4 | -------------------------------------------------------------------------------- /_includes/navigation.html: -------------------------------------------------------------------------------- 1 | 6 | -------------------------------------------------------------------------------- /_data/navigation.yml: -------------------------------------------------------------------------------- 1 | - name: Home 2 | link: / 3 | 4 | - name: FAQ 5 | link: /faq 6 | 7 | - name: RSS 8 | link: /feed.xml 9 | 10 | - name: GitHub 11 | link: https://github.com/garritfra/darktheme.club 12 | -------------------------------------------------------------------------------- /Gemfile: -------------------------------------------------------------------------------- 1 | # frozen_string_literal: true 2 | 3 | source "https://rubygems.org" 4 | 5 | git_source(:github) {|repo_name| "https://github.com/#{repo_name}" } 6 | 7 | # gem "rails" 8 | gem 'github-pages' 9 | gem 'tzinfo-data' 10 | 11 | # Plugins 12 | group :jekyll_plugins do 13 | gem 'jekyll-sitemap' 14 | gem 'jekyll-seo-tag' 15 | end 16 | 17 | gem "webrick", "~> 1.8" 18 | -------------------------------------------------------------------------------- /_includes/faq-02.html: -------------------------------------------------------------------------------- 1 |
2 | 3 | Can I add something to my site to show I'm in the Darktheme club? 4 | 5 |

6 | Yes! Once you're a proud member of the Darktheme Club, you are free to add a 7 | link to your own website. Simply copy the code snippet below, or make your 8 | own. 9 |

10 | 11 |
<p>👻 Proud member of <a href="https://darktheme.club/">darktheme.club</a> 👻</p>
12 |
13 | -------------------------------------------------------------------------------- /_config.yml: -------------------------------------------------------------------------------- 1 | plugins: 2 | - jekyll-sitemap 3 | - jekyll-seo-tag 4 | 5 | # SEO Stuff 6 | author: Garrit Franke 7 | title: Darktheme Club 8 | tagline: A showcase of dark themed websites. 9 | description: The Darktheme Club is an exclusive list of web pages that offer a dark theme. 10 | lang: en 11 | locale: en_GB 12 | url: "https://darktheme.club" 13 | baseurl: "" 14 | permalink: :title 15 | timezone: Etc/UTC 16 | 17 | # Syntax Highlighting 18 | highlighter: rouge 19 | 20 | exclude: 21 | - scripts/ 22 | 23 | theme: jekyll-theme-cayman -------------------------------------------------------------------------------- /assets/js/randomSite.js: -------------------------------------------------------------------------------- 1 | /** 2 | * This looks for elements with the 'site' class which in this case are all of the 3 | * anchor links for the sites. This could certainly be made more robust with 4 | * some sanity checks, but should work in this context. 5 | */ 6 | function randomSite() { 7 | const sites = document.getElementsByClassName('site') 8 | 9 | if (sites.length > 0) { 10 | const choiceIndex = Math.floor(Math.random() * sites.length) 11 | window.open(sites[choiceIndex].attributes.href.value, '_blank').focus() 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- 1 | # To get started with Dependabot version updates, you'll need to specify which 2 | # package ecosystems to update and where the package manifests are located. 3 | # Please see the documentation for all configuration options: 4 | # https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates 5 | 6 | version: 2 7 | updates: 8 | - package-ecosystem: "bundler" # See documentation for possible values 9 | directory: "/" # Location of package manifests 10 | schedule: 11 | interval: "weekly" 12 | -------------------------------------------------------------------------------- /scripts/site_stats.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # Write CSV header 4 | echo "commit_date;commit_hash;domain_count" 5 | 6 | # Iterate through the commit history and process each commit 7 | git log --reverse --format="%h %ad" --date=iso -- _data/sites.yml | while read -r commit_hash commit_date; do 8 | # Get the length of the "_data/sites.yml" file 9 | domain_count=$(git show "$commit_hash:_data/sites.yml" | grep "domain" | wc -l) 10 | 11 | # Append the commit date and calculated value to the output file 12 | echo "$commit_date;$commit_hash;$domain_count" 13 | done 14 | 15 | -------------------------------------------------------------------------------- /_includes/sites.html: -------------------------------------------------------------------------------- 1 | {% capture methods %}{{ item.method }}{% endcapture %} 2 | 3 | {% if methods == 'mediaquery' %} 4 | {% assign method = "MediaQuery" %} 5 | {% elsif methods == 'javascript' %} 6 | {% assign method = "JavaScript" %} 7 | {% elsif methods == 'darkonly' %} 8 | {% assign method = "DarkOnly" %} 9 | {% elsif methods == 'opt-in' %} 10 | {% assign method = "OptIn" %} 11 | {% else %} 12 | {% assign method = "Unknown" %} 13 | {% endif %} 14 |
  • 15 | {{ item.domain }} 16 | {{ method }} 17 |
  • 18 | -------------------------------------------------------------------------------- /faq.md: -------------------------------------------------------------------------------- 1 | --- 2 | permalink: /faq 3 | layout: default 4 | title: FAQ 5 | --- 6 | 7 | # Frequently Asked Questions 8 | 9 | This page is intended to answer any questions you may have about joining or 10 | maintaining the Darktheme Club. If you still have unanswered questions after 11 | reading this page, please [submit an issue in 12 | GitHub](https://github.com/garritfra/darktheme.club/issues) and we will 13 | endeavour to answer your question. 14 | 15 | {% include faq-01.html %} 16 | 17 | {% include faq-02.html %} 18 | 19 | {% include faq-03.html %} 20 | 21 | {% include faq-04.html %} 22 | 23 | {% include faq-05.html %} 24 | -------------------------------------------------------------------------------- /_includes/faq-04.html: -------------------------------------------------------------------------------- 1 |
    2 | I see a problem / how do I get in touch? 3 |

    4 | See a problem on this site? Maybe there's a site listed that's not 5 | longer live, or no longer qualifies for the club. Or, maybe you just 6 | want to get in touch for some reason. 7 |

    8 | 9 |

    10 | If so, 11 | create an issue on GitHub 16 | or use 17 | the contact page on my main website. 20 |

    21 |
    22 | -------------------------------------------------------------------------------- /_includes/faq-05.html: -------------------------------------------------------------------------------- 1 |
    2 | Illegal or inappropriate content 3 | 4 |

    5 | This can be anything we deem inappropriate for the Darktheme Club. 6 | Things like pornographic sites, or sites that contain NSFW material will 7 | not be added. Basically, if you wouldn't show it to your grandma or your 8 | kids, you're probably not going to get accepted. 9 |

    10 | 11 |

    12 | We reserve the right to refuse any site we deem to be 14 | inappropriate, even if it doesn't obviously align to any of the 15 | rules stated above. 17 |

    18 |
    19 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2023 Garrit Franke 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /index.md: -------------------------------------------------------------------------------- 1 | --- 2 | permalink: / 3 | layout: default 4 | hasRandomBtn: true 5 | --- 6 | 7 | With the internet being ever present and screens surrounding us all the time, 8 | personal preference is becoming more and more critical for a good user 9 | experience. Particularly when it comes to dark mode in order not to burn out 10 | the readers sight at night. 11 | 12 | **The Darktheme Club** is a collection of web pages from across the Internet. To 13 | qualify, your website must either use a dark theme by default, or respect the 14 | preference of the user, preferably through the 15 | [prefers-color-scheme](https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-color-scheme) 16 | media query. 17 | 18 |
    19 |
    20 | View FAQ for more details 21 |
    22 | 23 |
    24 |
    25 | 26 |
    27 |
    28 | Visit a Random Site 29 |
    30 | 31 | 37 | -------------------------------------------------------------------------------- /.github/workflows/ci.yml: -------------------------------------------------------------------------------- 1 | on: 2 | push: 3 | branches: 4 | - main 5 | 6 | name: PR Fixup 7 | 8 | jobs: 9 | format-sites: 10 | name: Run formatter and commit changes 11 | runs-on: ubuntu-latest 12 | permissions: 13 | # Give the default GITHUB_TOKEN write permission to commit and push the 14 | # added or changed files to the repository. 15 | contents: write 16 | steps: 17 | - name: Checkout 18 | uses: actions/checkout@v4.1.1 19 | with: 20 | # Make sure the actual branch is checked out when running on pull requests 21 | ref: ${{ github.head_ref }} 22 | 23 | - name: Format entries 24 | uses: mikefarah/yq@v4.35.2 25 | with: 26 | cmd: yq --inplace 'sort_by(.domain)' _data/sites.yml 27 | 28 | - name: Add back newline between entries 29 | run: | 30 | sed -i 's/- domain:/\n- domain:/g' _data/sites.yml 31 | 32 | - name: Format and commit code 33 | uses: creyD/prettier_action@v4.3 34 | with: 35 | # This part is also where you can pass other options, for example: 36 | prettier_options: --write _data/sites.yml 37 | commit_message: Fix formatting 38 | -------------------------------------------------------------------------------- /.github/PULL_REQUEST_TEMPLATE.yml: -------------------------------------------------------------------------------- 1 | 6 | 7 | Website (if applicable): https://example.com <-- TODO: CHANGE ME 8 | 9 | This PR is: 10 | 11 | - [ ] Adding a new domain 12 | - [ ] Updating existing domain 13 | - [ ] Changing domain name 14 | - [ ] Removing existing domain from list 15 | - [ ] Website code changes (darktheme.club site) 16 | - [ ] Other not listed 17 | 18 | 21 | 22 | - [ ] The following information is filled identical to the data file 23 | 24 | ***I confirm that I have read the [FAQ page](https://darktheme.club/faq), particularly the red section about inappropriate content, and I attest that this site is appropriate based on those criteria.*** 25 | 26 | - [ ] Check to confirm 27 | 28 | 36 | ``` 37 | - domain: 38 | url: 39 | method: 40 | last_checked: 41 | ``` 42 | -------------------------------------------------------------------------------- /_layouts/default.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | {% seo %} 9 | 10 | 11 | {% if page.hasRandomBtn == true %} 12 | 13 | {% endif %} 14 | 15 | 16 | 17 | 18 | 19 | 20 |
    21 | {% include navigation.html %} 22 |

    The Darktheme Club

    23 |
    24 | 25 |
    26 | 27 | {{ content }} 28 | 29 |
    30 | 31 | 44 | 45 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /_includes/faq-01.html: -------------------------------------------------------------------------------- 1 |
    2 | How do I join The Darktheme Club? 3 |

    4 | If you're interested in getting your site added to 5 | The Darktheme Club, all you need to do is follow these 6 | instructions: 7 |

    8 | 9 |
      10 |
    1. 11 | Make sure your site offers a dark mode by default, either by 12 | simply not having a light mode, through JavaScript or (best) through 13 | the 14 | prefers-color-scheme 18 | media query. 19 |
    2. 20 |
    3. 21 | If your site satisfies this requirement, create a pull request (instructions here) to add your site. 26 |
    4. 27 |
    5. 28 | I will then review you PR and merge it into main. Once merged, your 29 | site will be added to the list. 30 |
    6. 31 |
    32 | 33 |

    34 | Note: 35 | I reserve the right to not add sites based on whether I think 37 | they're suitable to be added or not. 39 |

    40 |
    41 | -------------------------------------------------------------------------------- /_includes/faq-03.html: -------------------------------------------------------------------------------- 1 |
    2 | What's the point of all this? 3 |

    That's a great question!

    4 | 5 |

    I decided to start this project for a couple of reasons:

    6 | 7 |
      8 |
    1. 9 | People with certain visual imparements have a hard time navigating a 10 | web without a dark theme. There are plugins that try to emulate a 11 | dark theme for some sites, but those are not always accurate. 12 |
    2. 13 |
    3. 14 | As a software engineer, I often stay up late browsing through 15 | articles on 16 | HackerNews or 17 | lobste.rs. After spending some time 18 | in my dark-themed editor and dark-themed search engines, the last 19 | thing my eyes want to see is a blindingly bright website preventing 20 | my brain from entering "sleep mode". 21 |
    4. 22 |
    5. 23 | Most, if not all, of the sites listed are personal sites. Many of 24 | which are blogs. The Darktheme Club is a great way of discovering 25 | other blog owners who are also interested in accessible web design. 26 | Think of it like a modern day 27 | webring. 30 |
    6. 31 |
    7. It's a bit of fun, so why not?
    8. 32 |
    33 |
    34 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Darktheme Club 2 | 3 | With the internet being ever present and screens surrounding us all the time, 4 | personal preference is becoming more and more critical for a good user 5 | experience. Particularly when it comes to dark mode in order not to burn out 6 | the readers sight at night. 7 | 8 | **The Darktheme Club** is a collection of web pages from across the Internet. To 9 | qualify, your website must either offer a dark theme by default, or respect the 10 | preference of the user, preferably through the 11 | [prefers-color-scheme](https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-color-scheme) 12 | media query. 13 | 14 | ## How to create a PR to add your site to the Darktheme Club 15 | 16 | It's simple! 17 | 18 | 1. Fork this repository. 19 | 2. Navigate to [`_data/sites.yml`](./_data/sites.yml) and add your site (template below). 20 | 3. Open a pull request and fill out the following template. 21 | 22 | ### Site template 23 | 24 | #### Sample 25 | ``` 26 | - domain: example.com 27 | url: http://example.com/ (Make sure you keep the trailing slash) 28 | method: mediaquery (Choose one of "mediaquery", "javascript", "darkonly", "opt-in", "unknown") 29 | last_checked: 2022-06-02 (YYYY-MM-DD) 30 | ``` 31 | #### Blank 32 | ``` 33 | - domain: 34 | url: 35 | method: 36 | last_checked: 37 | ``` 38 | 39 | **NOTE:** Entries are automatically sorted by domain name. Please add your site to the list without worrying about the alphabetical order. Our continuous integration process will handle the sorting for you. Just ensure that the details for your site are correctly formatted as per the existing entries. 40 | -------------------------------------------------------------------------------- /_plugins/rss_feed.rb: -------------------------------------------------------------------------------- 1 | require 'yaml' 2 | require 'rexml/document' 3 | require 'date' 4 | include REXML 5 | 6 | module RSSGenerator 7 | class Generator < Jekyll::Generator 8 | def generate(site) 9 | # Read the YAML file 10 | websites = YAML.load_file(File.join(site.source, '_data', 'sites.yml')) 11 | 12 | # Sort websites by "last_checked" in descending order 13 | websites.sort_by! { |website| website['last_checked'] }.reverse! 14 | 15 | # Get the 10 latest entries 16 | latest_websites = websites.take(10) 17 | 18 | # Create the RSS feed XML 19 | rss = Element.new('rss') 20 | rss.add_attribute('version', '2.0') 21 | 22 | channel = Element.new('channel') 23 | rss.add_element(channel) 24 | 25 | title = Element.new('title') 26 | title.text = 'The Darktheme Club' 27 | channel.add_element(title) 28 | 29 | link = Element.new('link') 30 | link.text = 'https://darktheme.club' 31 | channel.add_element(link) 32 | 33 | description = Element.new('description') 34 | description.text = 'Updates for the Darktheme Club.' 35 | channel.add_element(description) 36 | 37 | latest_websites.each do |website| 38 | item = Element.new('item') 39 | channel.add_element(item) 40 | 41 | title = Element.new('title') 42 | title.text = "Darktheme Club: #{website['domain']} was added or updated" 43 | item.add_element(title) 44 | 45 | link = Element.new('link') 46 | link.text = website['url'] 47 | item.add_element(link) 48 | 49 | pub_date = Element.new('pubDate') 50 | pub_date.text = website['last_checked'].strftime('%a, %d %b %Y %H:%M:%S %z') 51 | item.add_element(pub_date) 52 | 53 | description = Element.new('description') 54 | description.text = "Darktheme Club: #{website['domain']}" 55 | item.add_element(description) 56 | end 57 | 58 | FileUtils.mkdir_p(site.dest) unless File.exist?(site.dest) 59 | formatter = REXML::Formatters::Pretty.new 60 | formatter.compact = true 61 | 62 | # Write the RSS feed XML to a file 63 | rss_file_path = File.join(site.dest, 'feed.xml') 64 | File.open(rss_file_path, 'w') do |file| 65 | formatter.write(rss.root, file) 66 | end 67 | 68 | Jekyll::StaticFile.new(site, site.dest, '/', 'feed.xml') 69 | site.keep_files << "feed.xml" 70 | end 71 | end 72 | end 73 | -------------------------------------------------------------------------------- /assets/css/style.css: -------------------------------------------------------------------------------- 1 | /* Global colour variables */ 2 | :root { 3 | --sans-font: -apple-system, BlinkMacSystemFont, "Avenir Next", Avenir, "Nimbus Sans L", Roboto, Noto, "Segoe UI", Arial, Helvetica, "Helvetica Neue", sans-serif; 4 | --mono-font: Consolas, Menlo, Monaco, "Andale Mono", "Ubuntu Mono", monospace; 5 | 6 | --bg: #FAFAFA; 7 | --header-bg: #212121; 8 | --text: #212121; 9 | --header-text: #FAFAFA; 10 | --link: #0D47A1; 11 | --code: #D81B60; 12 | --pre: #D0D0D0; 13 | --pre-bg: #1A1A1A; 14 | --accent: #e6e6e6; 15 | --gh-hover: #D3D3D3; 16 | --before-blue: #64B5F6; 17 | --site: #D0D0D0; 18 | --after-blue: #BBDEFB; 19 | --before-orange: #FBC02D; 20 | --after-orange: #FFF176; 21 | --before-green: #4CAF50; 22 | --after-green: #C8E6C9; 23 | --notice-red-bg: #FFE4E1; 24 | --notice-red-border: #951818; 25 | } 26 | 27 | /* Define colours for auto dark mode */ 28 | @media (prefers-color-scheme: dark) { 29 | :root { 30 | --bg: #212121; 31 | --header-bg: #111; 32 | --text: #EEE; 33 | --link: #64B5F6; 34 | --accent: #333; 35 | --gh-hover: #222; 36 | --code: #F06292; 37 | --notice-red-bg: #951818; 38 | --notice-red-border: #EFD3CF; 39 | --site: #444; 40 | } 41 | 42 | ul li { 43 | opacity: .8; 44 | } 45 | } 46 | 47 | * { 48 | box-sizing: border-box; 49 | } 50 | 51 | html { 52 | scroll-behavior: smooth; 53 | } 54 | 55 | body { 56 | font-family: var(--sans-font); 57 | font-size: 1.1rem; 58 | margin: 0 0 4rem 0; 59 | padding: 0 .5rem; 60 | background: var(--bg); 61 | color: var(--text); 62 | } 63 | 64 | header, 65 | main, 66 | footer { 67 | margin: 0 auto; 68 | max-width: 50rem; 69 | width: 100%; 70 | } 71 | 72 | /* Format navigation */ 73 | nav { 74 | font-size: 1rem; 75 | line-height: 2; 76 | padding: 1rem 0; 77 | margin-left: 1rem; 78 | } 79 | 80 | nav a { 81 | border: 1px solid var(--text); 82 | border-radius: 5px; 83 | color: var(--text) !important; 84 | display: inline-block; 85 | padding: .1rem 1rem; 86 | margin-right: 1rem; 87 | text-decoration: none; 88 | transition: .4s; 89 | } 90 | 91 | nav a:hover, 92 | nav a.current { 93 | color: var(--text) !important; 94 | background: var(--accent); 95 | } 96 | 97 | nav a.current:hover { 98 | text-decoration: none; 99 | } 100 | 101 | header { 102 | padding-bottom: 2rem; 103 | border-bottom: 2px solid var(--text); 104 | } 105 | 106 | header h1 { 107 | margin: 0; 108 | font-size: 3rem; 109 | padding: 1rem 0 1rem 0; 110 | text-align: center; 111 | } 112 | 113 | main { 114 | margin-top: 3rem; 115 | } 116 | 117 | .small { 118 | font-size: .9rem; 119 | } 120 | 121 | .medium { 122 | font-weight: bold; 123 | font-size: 1.4rem; 124 | } 125 | 126 | .centre { 127 | text-align: center; 128 | } 129 | 130 | h1, 131 | h2, 132 | h3, 133 | h4, 134 | h5, 135 | h6 { 136 | line-height: 1.2; 137 | } 138 | 139 | h2 { 140 | margin: 4rem 0 -1.5rem 0; 141 | } 142 | 143 | .jump li { 144 | display: inline-block; 145 | padding-right: 1rem; 146 | } 147 | 148 | a, 149 | a:visited { 150 | color: var(--link) 151 | } 152 | 153 | a:hover, 154 | a:focus { 155 | text-decoration: none; 156 | } 157 | 158 | a.site, 159 | a.site:visited { 160 | color: currentColor; 161 | text-decoration: none; 162 | } 163 | 164 | a.site:hover, 165 | a.site:focus { 166 | text-decoration: underline; 167 | } 168 | 169 | span.method { 170 | font-size: .85em; 171 | align-self: center; 172 | opacity: 0.75; 173 | } 174 | 175 | .button { 176 | background: var(--link); 177 | color: var(--bg) !important; 178 | margin: 1.5rem 0; 179 | padding: 1rem 1.25rem; 180 | border-radius: 5px; 181 | text-decoration: none; 182 | } 183 | 184 | .button:hover { 185 | background: var(--text); 186 | } 187 | 188 | pre { 189 | font-family: var(--mono-font); 190 | background: var(--pre-bg) !important; 191 | border-radius: 5px; 192 | margin-bottom: 1.6em; 193 | max-width: 100%; 194 | white-space: pre-wrap; 195 | padding: 1.6em; 196 | max-height: 650px; 197 | } 198 | 199 | pre code { 200 | font-size: 1.1rem; 201 | font-family: var(--mono-font); 202 | color: #ccc; 203 | } 204 | 205 | code { 206 | font-family: var(--mono-font); 207 | color: var(--code); 208 | } 209 | 210 | ul { 211 | list-style: none; 212 | margin: 3rem 0 0 0; 213 | padding: 0; 214 | } 215 | 216 | /* BLUE COLOURS */ 217 | ul.blue li { 218 | background: var(--after-blue); 219 | color: #212121; 220 | line-height: 1; 221 | margin: 0 0 0.5rem 0; 222 | padding: 15px 10px 12px; 223 | position: relative; 224 | border-radius: 4px; 225 | } 226 | 227 | ul.blue li span.before { 228 | background: var(--before-blue); 229 | height: 100%; 230 | width: calc(var(--data-size)/512 * 100%); 231 | border-radius: 4px; 232 | z-index: 0; 233 | } 234 | 235 | /* ORANGE COLOURS */ 236 | ul.orange li { 237 | background: var(--after-orange); 238 | color: #212121; 239 | line-height: 1; 240 | margin: 0 0 0.5rem 0; 241 | padding: 15px 10px 12px; 242 | position: relative; 243 | border-radius: 4px; 244 | } 245 | 246 | ul.orange li span.before { 247 | background: var(--before-orange); 248 | height: 100%; 249 | width: calc(var(--data-size)/512 * 100%); 250 | border-radius: 4px; 251 | z-index: 0; 252 | } 253 | 254 | /* GREEN COLOURS */ 255 | ul.sites li { 256 | display: flex; 257 | justify-content: space-between; 258 | flex-wrap: wrap; 259 | background: var(--site); 260 | color: var(--text); 261 | line-height: 1; 262 | margin: 0 0 0.5rem 0; 263 | padding: 15px 10px 12px; 264 | position: relative; 265 | border-radius: 4px; 266 | } 267 | 268 | ul.sites li span.before { 269 | background: var(--site); 270 | height: 100%; 271 | width: calc(var(--data-size)/512 * 100%); 272 | border-radius: 4px; 273 | z-index: 0; 274 | } 275 | 276 | ul li span.before, 277 | ul li span.after { 278 | left: 0; 279 | position: absolute; 280 | top: 0; 281 | } 282 | 283 | ul li span.after { 284 | left: auto; 285 | opacity: 0.8; 286 | right: 10px; 287 | top: auto; 288 | } 289 | 290 | ul li a { 291 | font-weight: bold; 292 | position: relative; 293 | z-index: 2; 294 | } 295 | 296 | footer { 297 | border-top: 1px solid var(--text); 298 | margin: 3rem auto 0; 299 | padding: 0.5rem 0 0; 300 | text-align: center; 301 | font-size: .9rem; 302 | } 303 | 304 | @media(max-width:500px) { 305 | body { 306 | margin: 0 0 4rem 0; 307 | padding: 0 10px; 308 | } 309 | } 310 | 311 | /* Format the accordion */ 312 | details { 313 | padding: .6rem 1rem; 314 | background: var(--accent); 315 | border: 1px solid; 316 | border-radius: 5px; 317 | margin-bottom: 1rem; 318 | } 319 | 320 | details.red-notice { 321 | background: var(--notice-red-bg); 322 | border-color: var(--notice-red-border); 323 | } 324 | 325 | .red-notice h2 { 326 | margin: 0; 327 | } 328 | 329 | summary { 330 | cursor: pointer; 331 | font-weight: bold; 332 | } 333 | 334 | details[open] { 335 | padding-bottom: .75rem; 336 | } 337 | 338 | details[open] summary { 339 | margin-bottom: .5rem; 340 | } 341 | 342 | details[open]>*:last-child { 343 | margin-bottom: 0; 344 | } 345 | 346 | img { 347 | max-width: 100%; 348 | display: block; 349 | margin: 0 auto; 350 | } 351 | 352 | .divrandom { 353 | margin: 2rem 0 4rem 0; 354 | } 355 | 356 | .random { 357 | background: var(--before-green); 358 | } 359 | -------------------------------------------------------------------------------- /Gemfile.lock: -------------------------------------------------------------------------------- 1 | GEM 2 | remote: https://rubygems.org/ 3 | specs: 4 | activesupport (7.1.3.2) 5 | base64 6 | bigdecimal 7 | concurrent-ruby (~> 1.0, >= 1.0.2) 8 | connection_pool (>= 2.2.5) 9 | drb 10 | i18n (>= 1.6, < 2) 11 | minitest (>= 5.1) 12 | mutex_m 13 | tzinfo (~> 2.0) 14 | addressable (2.8.6) 15 | public_suffix (>= 2.0.2, < 6.0) 16 | base64 (0.2.0) 17 | bigdecimal (3.1.6) 18 | coffee-script (2.4.1) 19 | coffee-script-source 20 | execjs 21 | coffee-script-source (1.12.2) 22 | colorator (1.1.0) 23 | commonmarker (0.23.10) 24 | concurrent-ruby (1.2.3) 25 | connection_pool (2.4.1) 26 | dnsruby (1.70.0) 27 | simpleidn (~> 0.2.1) 28 | drb (2.2.0) 29 | ruby2_keywords 30 | em-websocket (0.5.3) 31 | eventmachine (>= 0.12.9) 32 | http_parser.rb (~> 0) 33 | ethon (0.16.0) 34 | ffi (>= 1.15.0) 35 | eventmachine (1.2.7) 36 | execjs (2.9.1) 37 | faraday (2.9.0) 38 | faraday-net_http (>= 2.0, < 3.2) 39 | faraday-net_http (3.1.0) 40 | net-http 41 | ffi (1.16.3) 42 | forwardable-extended (2.6.0) 43 | gemoji (4.1.0) 44 | github-pages (231) 45 | github-pages-health-check (= 1.18.2) 46 | jekyll (= 3.9.5) 47 | jekyll-avatar (= 0.8.0) 48 | jekyll-coffeescript (= 1.2.2) 49 | jekyll-commonmark-ghpages (= 0.4.0) 50 | jekyll-default-layout (= 0.1.5) 51 | jekyll-feed (= 0.17.0) 52 | jekyll-gist (= 1.5.0) 53 | jekyll-github-metadata (= 2.16.1) 54 | jekyll-include-cache (= 0.2.1) 55 | jekyll-mentions (= 1.6.0) 56 | jekyll-optional-front-matter (= 0.3.2) 57 | jekyll-paginate (= 1.1.0) 58 | jekyll-readme-index (= 0.3.0) 59 | jekyll-redirect-from (= 0.16.0) 60 | jekyll-relative-links (= 0.6.1) 61 | jekyll-remote-theme (= 0.4.3) 62 | jekyll-sass-converter (= 1.5.2) 63 | jekyll-seo-tag (= 2.8.0) 64 | jekyll-sitemap (= 1.4.0) 65 | jekyll-swiss (= 1.0.0) 66 | jekyll-theme-architect (= 0.2.0) 67 | jekyll-theme-cayman (= 0.2.0) 68 | jekyll-theme-dinky (= 0.2.0) 69 | jekyll-theme-hacker (= 0.2.0) 70 | jekyll-theme-leap-day (= 0.2.0) 71 | jekyll-theme-merlot (= 0.2.0) 72 | jekyll-theme-midnight (= 0.2.0) 73 | jekyll-theme-minimal (= 0.2.0) 74 | jekyll-theme-modernist (= 0.2.0) 75 | jekyll-theme-primer (= 0.6.0) 76 | jekyll-theme-slate (= 0.2.0) 77 | jekyll-theme-tactile (= 0.2.0) 78 | jekyll-theme-time-machine (= 0.2.0) 79 | jekyll-titles-from-headings (= 0.5.3) 80 | jemoji (= 0.13.0) 81 | kramdown (= 2.4.0) 82 | kramdown-parser-gfm (= 1.1.0) 83 | liquid (= 4.0.4) 84 | mercenary (~> 0.3) 85 | minima (= 2.5.1) 86 | nokogiri (>= 1.13.6, < 2.0) 87 | rouge (= 3.30.0) 88 | terminal-table (~> 1.4) 89 | github-pages-health-check (1.18.2) 90 | addressable (~> 2.3) 91 | dnsruby (~> 1.60) 92 | octokit (>= 4, < 8) 93 | public_suffix (>= 3.0, < 6.0) 94 | typhoeus (~> 1.3) 95 | html-pipeline (2.14.3) 96 | activesupport (>= 2) 97 | nokogiri (>= 1.4) 98 | http_parser.rb (0.8.0) 99 | i18n (1.14.1) 100 | concurrent-ruby (~> 1.0) 101 | jekyll (3.9.5) 102 | addressable (~> 2.4) 103 | colorator (~> 1.0) 104 | em-websocket (~> 0.5) 105 | i18n (>= 0.7, < 2) 106 | jekyll-sass-converter (~> 1.0) 107 | jekyll-watch (~> 2.0) 108 | kramdown (>= 1.17, < 3) 109 | liquid (~> 4.0) 110 | mercenary (~> 0.3.3) 111 | pathutil (~> 0.9) 112 | rouge (>= 1.7, < 4) 113 | safe_yaml (~> 1.0) 114 | jekyll-avatar (0.8.0) 115 | jekyll (>= 3.0, < 5.0) 116 | jekyll-coffeescript (1.2.2) 117 | coffee-script (~> 2.2) 118 | coffee-script-source (~> 1.12) 119 | jekyll-commonmark (1.4.0) 120 | commonmarker (~> 0.22) 121 | jekyll-commonmark-ghpages (0.4.0) 122 | commonmarker (~> 0.23.7) 123 | jekyll (~> 3.9.0) 124 | jekyll-commonmark (~> 1.4.0) 125 | rouge (>= 2.0, < 5.0) 126 | jekyll-default-layout (0.1.5) 127 | jekyll (>= 3.0, < 5.0) 128 | jekyll-feed (0.17.0) 129 | jekyll (>= 3.7, < 5.0) 130 | jekyll-gist (1.5.0) 131 | octokit (~> 4.2) 132 | jekyll-github-metadata (2.16.1) 133 | jekyll (>= 3.4, < 5.0) 134 | octokit (>= 4, < 7, != 4.4.0) 135 | jekyll-include-cache (0.2.1) 136 | jekyll (>= 3.7, < 5.0) 137 | jekyll-mentions (1.6.0) 138 | html-pipeline (~> 2.3) 139 | jekyll (>= 3.7, < 5.0) 140 | jekyll-optional-front-matter (0.3.2) 141 | jekyll (>= 3.0, < 5.0) 142 | jekyll-paginate (1.1.0) 143 | jekyll-readme-index (0.3.0) 144 | jekyll (>= 3.0, < 5.0) 145 | jekyll-redirect-from (0.16.0) 146 | jekyll (>= 3.3, < 5.0) 147 | jekyll-relative-links (0.6.1) 148 | jekyll (>= 3.3, < 5.0) 149 | jekyll-remote-theme (0.4.3) 150 | addressable (~> 2.0) 151 | jekyll (>= 3.5, < 5.0) 152 | jekyll-sass-converter (>= 1.0, <= 3.0.0, != 2.0.0) 153 | rubyzip (>= 1.3.0, < 3.0) 154 | jekyll-sass-converter (1.5.2) 155 | sass (~> 3.4) 156 | jekyll-seo-tag (2.8.0) 157 | jekyll (>= 3.8, < 5.0) 158 | jekyll-sitemap (1.4.0) 159 | jekyll (>= 3.7, < 5.0) 160 | jekyll-swiss (1.0.0) 161 | jekyll-theme-architect (0.2.0) 162 | jekyll (> 3.5, < 5.0) 163 | jekyll-seo-tag (~> 2.0) 164 | jekyll-theme-cayman (0.2.0) 165 | jekyll (> 3.5, < 5.0) 166 | jekyll-seo-tag (~> 2.0) 167 | jekyll-theme-dinky (0.2.0) 168 | jekyll (> 3.5, < 5.0) 169 | jekyll-seo-tag (~> 2.0) 170 | jekyll-theme-hacker (0.2.0) 171 | jekyll (> 3.5, < 5.0) 172 | jekyll-seo-tag (~> 2.0) 173 | jekyll-theme-leap-day (0.2.0) 174 | jekyll (> 3.5, < 5.0) 175 | jekyll-seo-tag (~> 2.0) 176 | jekyll-theme-merlot (0.2.0) 177 | jekyll (> 3.5, < 5.0) 178 | jekyll-seo-tag (~> 2.0) 179 | jekyll-theme-midnight (0.2.0) 180 | jekyll (> 3.5, < 5.0) 181 | jekyll-seo-tag (~> 2.0) 182 | jekyll-theme-minimal (0.2.0) 183 | jekyll (> 3.5, < 5.0) 184 | jekyll-seo-tag (~> 2.0) 185 | jekyll-theme-modernist (0.2.0) 186 | jekyll (> 3.5, < 5.0) 187 | jekyll-seo-tag (~> 2.0) 188 | jekyll-theme-primer (0.6.0) 189 | jekyll (> 3.5, < 5.0) 190 | jekyll-github-metadata (~> 2.9) 191 | jekyll-seo-tag (~> 2.0) 192 | jekyll-theme-slate (0.2.0) 193 | jekyll (> 3.5, < 5.0) 194 | jekyll-seo-tag (~> 2.0) 195 | jekyll-theme-tactile (0.2.0) 196 | jekyll (> 3.5, < 5.0) 197 | jekyll-seo-tag (~> 2.0) 198 | jekyll-theme-time-machine (0.2.0) 199 | jekyll (> 3.5, < 5.0) 200 | jekyll-seo-tag (~> 2.0) 201 | jekyll-titles-from-headings (0.5.3) 202 | jekyll (>= 3.3, < 5.0) 203 | jekyll-watch (2.2.1) 204 | listen (~> 3.0) 205 | jemoji (0.13.0) 206 | gemoji (>= 3, < 5) 207 | html-pipeline (~> 2.2) 208 | jekyll (>= 3.0, < 5.0) 209 | kramdown (2.4.0) 210 | rexml 211 | kramdown-parser-gfm (1.1.0) 212 | kramdown (~> 2.0) 213 | liquid (4.0.4) 214 | listen (3.9.0) 215 | rb-fsevent (~> 0.10, >= 0.10.3) 216 | rb-inotify (~> 0.9, >= 0.9.10) 217 | mercenary (0.3.6) 218 | minima (2.5.1) 219 | jekyll (>= 3.5, < 5.0) 220 | jekyll-feed (~> 0.9) 221 | jekyll-seo-tag (~> 2.1) 222 | minitest (5.22.2) 223 | mutex_m (0.2.0) 224 | net-http (0.4.1) 225 | uri 226 | nokogiri (1.16.2-arm64-darwin) 227 | racc (~> 1.4) 228 | nokogiri (1.16.2-x86_64-linux) 229 | racc (~> 1.4) 230 | octokit (4.25.1) 231 | faraday (>= 1, < 3) 232 | sawyer (~> 0.9) 233 | pathutil (0.16.2) 234 | forwardable-extended (~> 2.6) 235 | public_suffix (5.0.4) 236 | racc (1.7.3) 237 | rb-fsevent (0.11.2) 238 | rb-inotify (0.10.1) 239 | ffi (~> 1.0) 240 | rexml (3.2.6) 241 | rouge (3.30.0) 242 | ruby2_keywords (0.0.5) 243 | rubyzip (2.3.2) 244 | safe_yaml (1.0.5) 245 | sass (3.7.4) 246 | sass-listen (~> 4.0.0) 247 | sass-listen (4.0.0) 248 | rb-fsevent (~> 0.9, >= 0.9.4) 249 | rb-inotify (~> 0.9, >= 0.9.7) 250 | sawyer (0.9.2) 251 | addressable (>= 2.3.5) 252 | faraday (>= 0.17.3, < 3) 253 | simpleidn (0.2.1) 254 | unf (~> 0.1.4) 255 | terminal-table (1.8.0) 256 | unicode-display_width (~> 1.1, >= 1.1.1) 257 | typhoeus (1.4.1) 258 | ethon (>= 0.9.0) 259 | tzinfo (2.0.6) 260 | concurrent-ruby (~> 1.0) 261 | tzinfo-data (1.2024.1) 262 | tzinfo (>= 1.0.0) 263 | unf (0.1.4) 264 | unf_ext 265 | unf_ext (0.0.9.1) 266 | unicode-display_width (1.8.0) 267 | uri (0.13.0) 268 | webrick (1.8.1) 269 | 270 | PLATFORMS 271 | arm64-darwin-22 272 | x86_64-linux 273 | x86_64-linux-musl 274 | 275 | DEPENDENCIES 276 | github-pages 277 | jekyll-seo-tag 278 | jekyll-sitemap 279 | tzinfo-data 280 | webrick (~> 1.8) 281 | 282 | BUNDLED WITH 283 | 2.3.25 284 | -------------------------------------------------------------------------------- /_data/sites.yml: -------------------------------------------------------------------------------- 1 | - domain: 512kb.club 2 | url: https://512kb.club/ 3 | method: mediaquery 4 | last_checked: 2022-04-16 5 | 6 | - domain: adamsdesk.com 7 | url: https://www.adamsdesk.com/ 8 | method: darkonly 9 | last_checked: 2022-01-02 10 | 11 | - domain: adast.dk 12 | url: https://adast.dk/ 13 | method: mediaquery 14 | last_checked: 2024-01-11 15 | 16 | - domain: aitrack.work 17 | url: https://aitrack.work/ 18 | method: javascript 19 | last_checked: 2022-07-19 20 | 21 | - domain: alessandrocuzzocrea.com 22 | url: https://alessandrocuzzocrea.com 23 | method: mediaquery 24 | last_checked: 2023-05-26 25 | 26 | - domain: alperor.us 27 | url: https://alperor.us/ 28 | method: darkonly 29 | last_checked: 2023-02-27 30 | 31 | - domain: basementcommunity.com 32 | url: https://basementcommunity.com 33 | method: javascript 34 | last_checked: 2023-05-18 35 | 36 | - domain: bbbhltz.codeberg.page 37 | url: https://bbbhltz.codeberg.page/ 38 | method: mediaquery 39 | last_checked: 2023-08-30 40 | 41 | - domain: bburt.me 42 | url: https://bburt.me/ 43 | method: mediaquery 44 | last_checked: 2023-03-26 45 | 46 | - domain: bernsteinbear.com 47 | url: https://bernsteinbear.com/ 48 | method: mediaquery 49 | last_checked: 2022-07-18 50 | 51 | - domain: beuke.org 52 | url: https://beuke.org/ 53 | method: darkonly 54 | last_checked: 2023-10-17 55 | 56 | - domain: bfoliver.com 57 | url: https://www.bfoliver.com 58 | method: mediaquery 59 | last_checked: 2022-04-16 60 | 61 | - domain: block.sunappu.net 62 | url: https://block.sunappu.net 63 | method: mediaquery 64 | last_checked: 2023-08-30 65 | 66 | - domain: blog.darylsun.page 67 | url: https://blog.darylsun.page/ 68 | method: mediaquery 69 | last_checked: 2023-08-18 70 | 71 | - domain: blog.madelinepritchard.net 72 | url: https://blog.madelinepritchard.net/ 73 | method: mediaquery 74 | last_checked: 2023-03-20 75 | 76 | - domain: blog.vinfall.com 77 | url: https://blog.vinfall.com/ 78 | method: darkonly 79 | last_checked: 2023-10-14 80 | 81 | - domain: bubble.email 82 | url: https://bubble.email 83 | method: darkonly 84 | last_checked: 2022-07-17 85 | 86 | - domain: bukmark.club 87 | url: https://bukmark.club/ 88 | method: darkonly 89 | last_checked: 2024-02-19 90 | 91 | - domain: canistop.net 92 | url: https://canistop.net 93 | method: mediaquery 94 | last_checked: 2023-08-30 95 | 96 | - domain: canwe.dev 97 | url: https://canwe.dev 98 | method: mediaquery 99 | last_checked: 2023-08-30 100 | 101 | - domain: castorisdead.xyz 102 | url: https://castorisdead.xyz 103 | method: darkonly 104 | last_checked: 2022-12-21 105 | 106 | - domain: chino.is-a.dev 107 | url: https://chino.is-a.dev/ 108 | method: darkonly 109 | last_checked: 2023-02-01 110 | 111 | - domain: claytonerrington.com 112 | url: https://claytonerrington.com/ 113 | method: darkonly 114 | last_checked: 2023-01-07 115 | 116 | - domain: cleberg.net 117 | url: https://cleberg.net/ 118 | method: mediaquery 119 | last_checked: 2023-05-22 120 | 121 | - domain: codeberg.org 122 | url: https://codeberg.org/ 123 | method: mediaquery 124 | last_checked: 2022-07-21 125 | 126 | - domain: colincogle.name 127 | url: https://colincogle.name/ 128 | method: mediaquery 129 | last_checked: 2023-05-19 130 | 131 | - domain: cosmicqbit.dev 132 | url: https://cosmicqbit.dev 133 | method: mediaquery 134 | last_checked: 2023-04-12 135 | 136 | - domain: darekkay.com 137 | url: https://darekkay.com/ 138 | method: javascript 139 | last_checked: 2023-04-17 140 | 141 | - domain: darktheme.club 142 | url: https://darktheme.club/ 143 | method: mediaquery 144 | last_checked: 2022-07-25 145 | 146 | - domain: denisdefreyne.com 147 | url: https://denisdefreyne.com/ 148 | method: mediaquery 149 | last_checked: 2024-01-20 150 | 151 | - domain: dillonbaird.io 152 | url: https://dillonbaird.io/ 153 | method: mediaquery 154 | last_checked: 2023-10-12 155 | 156 | - domain: duckduckgo.com 157 | url: https://duckduckgo.com/ 158 | method: unknown 159 | last_checked: 2022-07-16 160 | 161 | - domain: emanuelpina.pt 162 | url: https://emanuelpina.pt/ 163 | method: mediaquery 164 | last_checked: 2022-07-24 165 | 166 | - domain: eternodevir.com 167 | url: https://eternodevir.com/ 168 | method: mediaquery 169 | last_checked: 2023-12-20 170 | 171 | - domain: evanhahn.com 172 | url: https://evanhahn.com/ 173 | method: mediaquery 174 | last_checked: 2022-07-16 175 | 176 | - domain: feedmail.org 177 | url: https://feedmail.org 178 | method: mediaquery 179 | last_checked: 2022-07-16 180 | 181 | - domain: ff99cc.art 182 | url: https://ff99cc.art/ 183 | method: mediaquery 184 | last_checked: 2023-02-02 185 | 186 | - domain: foreverliketh.is 187 | url: https://foreverliketh.is/ 188 | method: javascript 189 | last_checked: 2022-12-30 190 | 191 | - domain: forgefed.org 192 | url: https://forgefed.org 193 | method: mediaquery 194 | last_checked: 2022-07-21 195 | 196 | - domain: garrit.xyz 197 | url: https://garrit.xyz/ 198 | method: mediaquery 199 | last_checked: 2022-04-16 200 | 201 | - domain: garud.netlify.app 202 | url: https://garud.netlify.app/ 203 | method: darkonly 204 | last_checked: 2024-02-10 205 | 206 | - domain: github.com 207 | url: https://github.com/ 208 | method: mediaquery 209 | last_checked: 2022-07-16 210 | 211 | - domain: gwern.net 212 | url: https://gwern.net 213 | method: mediaquery 214 | last_checked: 2023-11-02 215 | 216 | - domain: hacdias.com 217 | url: https://hacdias.com 218 | method: javascript 219 | last_checked: 2023-11-25 220 | 221 | - domain: hans.gerwitz.com 222 | url: https://hans.gerwitz.com/ 223 | method: mediaquery 224 | last_checked: 2023-11-20 225 | 226 | - domain: hen.ee 227 | url: https://hen.ee/ 228 | method: javascript 229 | last_checked: 2023-07-04 230 | 231 | - domain: hex.moonwith.com 232 | url: http://hex.moonwith.com/ 233 | method: javascript 234 | last_checked: 2023-11-27 235 | 236 | - domain: home.omg.lol 237 | url: https://home.omg.lol 238 | method: mediaquery 239 | last_checked: 2022-10-26 240 | 241 | - domain: hugo.md 242 | url: https://hugo.md/ 243 | method: mediaquery 244 | last_checked: 2022-07-17 245 | 246 | - domain: ineedmore.coffee 247 | url: https://ineedmore.coffee/ 248 | method: mediaquery 249 | last_checked: 2023-06-23 250 | 251 | - domain: inherently.xyz 252 | url: https://inherently.xyz/ 253 | method: mediaquery 254 | last_checked: 2022-07-17 255 | 256 | - domain: iyaki.ar 257 | url: https://iyaki.ar/ 258 | method: mediaquery 259 | last_checked: 2023-07-20 260 | 261 | - domain: jackiechalarca.org 262 | url: https://jackiechalarca.org/ 263 | method: mediaquery 264 | last_checked: 2023-09-28 265 | 266 | - domain: jacksonchen666.com 267 | url: https://jacksonchen666.com/ 268 | method: mediaquery 269 | last_checked: 2023-03-01 270 | 271 | - domain: jlelse.blog 272 | url: https://jlelse.blog/ 273 | method: mediaquery 274 | last_checked: 2022-07-16 275 | 276 | - domain: jlo64.github.io 277 | url: https://jlo64.github.io/ 278 | method: mediaquery 279 | last_checked: 2023-05-06 280 | 281 | - domain: joelchrono12.xyz 282 | url: https://joelchrono12.xyz 283 | method: darkonly 284 | last_checked: 2023-01-04 285 | 286 | - domain: justsujay.github.io 287 | url: https://justsujay.github.io/ 288 | method: javascript 289 | last_checked: 2024-02-24 290 | 291 | - domain: kaifa.ch 292 | url: https://kaifa.ch/ 293 | method: darkonly 294 | last_checked: 2023-05-23 295 | 296 | - domain: kathut.de 297 | url: http://kathut.de/ 298 | method: darkonly 299 | last_checked: 2023-04-16 300 | 301 | - domain: kimchiii.space 302 | url: https://kimchiii.space/ 303 | method: darkonly 304 | last_checked: 2023-09-08 305 | 306 | - domain: kirillunlimited.com 307 | url: https://kirillunlimited.com 308 | method: mediaquery 309 | last_checked: 2023-08-08 310 | 311 | - domain: konstantintutsch.com 312 | url: https://konstantintutsch.com/ 313 | method: mediaquery 314 | last_checked: 2023-11-11 315 | 316 | - domain: ksbrooksjr.com 317 | url: https://ksbrooksjr.com/ 318 | method: mediaquery 319 | last_checked: 2023-11-24 320 | 321 | - domain: libre.town 322 | url: https://libre.town/ 323 | method: darkonly 324 | last_checked: 2023-03-27 325 | 326 | - domain: lkhrs.com 327 | url: https://www.lkhrs.com/ 328 | method: mediaquery 329 | last_checked: 2022-07-17 330 | 331 | - domain: madelinepritchard.net 332 | url: https://madelinepritchard.net/ 333 | method: mediaquery 334 | last_checked: 2023-02-27 335 | 336 | - domain: map.scientiac.space 337 | url: https://map.scientiac.space/ 338 | method: javascript 339 | last_checked: 2023-09-11 340 | 341 | - domain: mini.moonlab.top 342 | url: https://mini.moonlab.top/ 343 | method: darkonly 344 | last_checked: 2023-12-26 345 | 346 | - domain: minutestomidnight.co.uk 347 | url: https://minutestomidnight.co.uk/ 348 | method: mediaquery 349 | last_checked: 2023-04-17 350 | 351 | - domain: mnsr.win 352 | url: https://mnsr.win/ 353 | method: darkonly 354 | last_checked: 2023-10-12 355 | 356 | - domain: nih.ar 357 | url: https://nih.ar/ 358 | method: mediaquery 359 | last_checked: 2022-10-23 360 | 361 | - domain: orbitalmartian.codeberg.page 362 | url: https://orbitalmartian.codeberg.page/ 363 | method: mediaquery 364 | last_checked: 2023-11-19 365 | 366 | - domain: petercammeraat.net 367 | url: https://petercammeraat.net/ 368 | method: mediaquery 369 | last_checked: 2024-01-16 370 | 371 | - domain: phishwarn.codeberg.page 372 | url: https://phishwarn.codeberg.page/ 373 | method: mediaquery 374 | last_checked: 2022-07-16 375 | 376 | - domain: pragmaticpineapple.com 377 | url: https://pragmaticpineapple.com/ 378 | method: mediaquery 379 | last_checked: 2022-07-18 380 | 381 | - domain: radiocanadamini.ca 382 | url: https://radiocanadamini.ca/ 383 | method: mediaquery 384 | last_checked: 2022-10-03 385 | 386 | - domain: revuo-xmr.com 387 | url: https://revuo-xmr.com/ 388 | method: javascript 389 | last_checked: 2022-07-16 390 | 391 | - domain: rober.design 392 | url: https://rober.design/ 393 | method: mediaquery 394 | last_checked: 2022-07-24 395 | 396 | - domain: rohandebsarkar.github.io 397 | url: https://rohandebsarkar.github.io/ 398 | method: mediaquery 399 | last_checked: 2022-10-30 400 | 401 | - domain: scientiac.space 402 | url: https://scientiac.space/ 403 | method: javascript 404 | last_checked: 2023-09-11 405 | 406 | - domain: scottk.mba 407 | url: https://scottk.mba/ 408 | method: darkonly 409 | last_checked: 2023-06-17 410 | 411 | - domain: sebastien-mouchet.fr 412 | url: https://sebastien-mouchet.fr/ 413 | method: mediaquery 414 | last_checked: 2023-12-14 415 | 416 | - domain: seeking-maintainers.net 417 | url: https://seeking-maintainers.net/ 418 | method: mediaquery 419 | last_checked: 2022-05-04 420 | 421 | - domain: seirdy.one 422 | url: https://seirdy.one/ 423 | method: mediaquery 424 | last_checked: 2022-07-18 425 | 426 | - domain: sendpasswords.net 427 | url: https://sendpasswords.net/ 428 | method: mediaquery 429 | last_checked: 2023-05-27 430 | 431 | - domain: sheepdev.xyz 432 | url: https://sheepdev.xyz/ 433 | method: javascript 434 | last_checked: 2023-03-01 435 | 436 | - domain: simonesilvestroni.com 437 | url: https://simonesilvestroni.com/ 438 | method: mediaquery 439 | last_checked: 2023-04-17 440 | 441 | - domain: slashdev.space 442 | url: https://slashdev.space/ 443 | method: mediaquery 444 | last_checked: 2022-04-16 445 | 446 | - domain: storydragon.nl 447 | url: https://storydragon.nl 448 | method: mediaquery 449 | last_checked: 2023-11-13 450 | 451 | - domain: tauri.app 452 | url: https://tauri.app/ 453 | method: javascript 454 | last_checked: 2022-07-21 455 | 456 | - domain: taylantatli.com 457 | url: https://taylantatli.com/ 458 | method: mediaquery 459 | last_checked: 2022-07-17 460 | 461 | - domain: tecroxy.com 462 | url: https://tecroxy.com/ 463 | method: javascript 464 | last_checked: 2022-12-11 465 | 466 | - domain: tedmagaoay.com 467 | url: https://tedmagaoay.com/ 468 | method: javascript 469 | last_checked: 2023-07-08 470 | 471 | - domain: thelazysre.com 472 | url: https://thelazysre.com/ 473 | method: mediaquery 474 | last_checked: 2023-04-02 475 | 476 | - domain: thomas.me 477 | url: https://thomas.me/ 478 | method: mediaquery 479 | last_checked: 2022-07-17 480 | 481 | - domain: til.pm 482 | url: https://til.pm 483 | method: javascript 484 | last_checked: 2023-02-24 485 | 486 | - domain: traeblain.com 487 | url: https://traeblain.com/ 488 | method: mediaquery 489 | last_checked: 2023-01-05 490 | 491 | - domain: tsukuraku.github.io 492 | url: https://tsukuraku.github.io/ 493 | method: javascript 494 | last_checked: 2023-06-23 495 | 496 | - domain: ttntm.me 497 | url: https://ttntm.me/ 498 | method: mediaquery 499 | last_checked: 2024-01-03 500 | 501 | - domain: uncenter.org 502 | url: https://www.uncenter.org/ 503 | method: mediaquery 504 | last_checked: 2023-02-20 505 | 506 | - domain: vanzasetia.site 507 | url: https://vanzasetia.site/ 508 | method: mediaquery 509 | last_checked: 2023-03-26 510 | 511 | - domain: watch3r.app 512 | url: https://watch3r.app/ 513 | method: darkonly 514 | last_checked: 2022-07-20 515 | 516 | - domain: whoisyoges.eu.org 517 | url: https://whoisyoges.eu.org/ 518 | method: darkonly 519 | last_checked: 2022-12-12 520 | 521 | - domain: yaslamblog.netlify.app 522 | url: https://yaslamblog.netlify.app/ 523 | method: darkonly 524 | last_checked: 2023-03-03 525 | 526 | - domain: zapisnik.skladka.net 527 | url: https://zapisnik.skladka.net/ 528 | method: mediaquery 529 | last_checked: 2023-02-06 530 | 531 | - domain: zwbetz.com 532 | url: https://zwbetz.com/ 533 | method: javascript 534 | last_checked: 2024-02-27 535 | --------------------------------------------------------------------------------