https://github.com/conjuncts/xkcd-reader

minimal xkcd viewer with read tracking

https://github.com/conjuncts/xkcd-reader

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (7.3%) to scientific vocabulary
Last synced: 11 months ago · JSON representation

Repository

minimal xkcd viewer with read tracking

Basic Info
  • Host: GitHub
  • Owner: conjuncts
  • License: mit
  • Language: TypeScript
  • Default Branch: master
  • Homepage: https://readxkcd.com
  • Size: 1.46 MB
Statistics
  • Stars: 2
  • Watchers: 1
  • Forks: 1
  • Open Issues: 0
  • Releases: 0
Created over 1 year ago · Last pushed about 1 year ago
Metadata Files
Readme License

README.md

minimal xkcd viewer with read tracking.

Cold Open

After years of using the "random" button, I realized I've lost track of which comics I have and haven't read. While a random comic I would likely have seen before, I knew there were still many comics I haven't seen.

Mathematically, this predicament is the occupancy or coupon collector's problem. To see every comic, I can expect to click the "random" button far more (26700) than the actual number of comics (3100).

stats

It's much more efficient to track the comics I have and haven't read. Sure, I could read the comics in order. But I also enjoy the freedom to read comics at will, in no particular order.

After experimenting with existing options, I bit the bullet and made my own xkcd viewer. I know there are other XKCD browsers (unixkcd, xkcd.wtf, etc, etc), but surprisingly none of them tackles tracking read progress (to my knowledge).

  • Minimal
  • No ads, ever
  • Entirely in browser
  • Open source
  • Calendar view
  • Quick links to explainxkcd
  • Easy import/export
  • Alerts interactive comics
  • Alt text (for mobile)

Notable Features

  • Hovering over the comic title reveals the publication date.
  • The footer links to the corresponding xkcd and explainxkcd pages.
  • Alterations to the header (present in #1047 et al.) are easy to miss. Here, they are displayed alongside the alt text.

License

As stated on xkcd.com, Randall's comics are CC BY-NC 2.5, except #343 and #739 (CC BY-SA 3.0) The XKCD reader code is MIT licensed. Randall, if you're reading this -- you're completely welcome to reuse any of my code!

Credits

The favicon is from explainxkcd.com, a phenomenal resource. And of course, huge thanks to Randall Munroe for the great webcomic -- and graciously making this all possible.

Owner

  • Login: conjuncts
  • Kind: user

GitHub Events

Total
  • Issues event: 1
  • Watch event: 2
  • Issue comment event: 2
  • Push event: 6
  • Pull request event: 4
Last Year
  • Issues event: 1
  • Watch event: 2
  • Issue comment event: 2
  • Push event: 6
  • Pull request event: 4

Committers

Last synced: about 1 year ago

All Time
  • Total Commits: 32
  • Total Committers: 1
  • Avg Commits per committer: 32.0
  • Development Distribution Score (DDS): 0.0
Past Year
  • Commits: 32
  • Committers: 1
  • Avg Commits per committer: 32.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
conjuncts 6****s 32

Issues and Pull Requests

Last synced: about 1 year ago

All Time
  • Total issues: 1
  • Total pull requests: 2
  • Average time to close issues: about 8 hours
  • Average time to close pull requests: 1 minute
  • Total issue authors: 1
  • Total pull request authors: 1
  • Average comments per issue: 2.0
  • Average comments per pull request: 0.0
  • Merged pull requests: 2
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 1
  • Pull requests: 2
  • Average time to close issues: about 8 hours
  • Average time to close pull requests: 1 minute
  • Issue authors: 1
  • Pull request authors: 1
  • Average comments per issue: 2.0
  • Average comments per pull request: 0.0
  • Merged pull requests: 2
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • niv-l (1)
Pull Request Authors
  • conjuncts (3)
Top Labels
Issue Labels
Pull Request Labels

Dependencies

.github/workflows/static.yml actions
  • actions/checkout v4 composite
  • actions/configure-pages v4 composite
  • actions/deploy-pages v4 composite
  • actions/setup-node v4 composite
  • actions/upload-pages-artifact v3 composite
package-lock.json npm
  • @esbuild/aix-ppc64 0.24.2 development
  • @esbuild/android-arm 0.24.2 development
  • @esbuild/android-arm64 0.24.2 development
  • @esbuild/android-x64 0.24.2 development
  • @esbuild/darwin-arm64 0.24.2 development
  • @esbuild/darwin-x64 0.24.2 development
  • @esbuild/freebsd-arm64 0.24.2 development
  • @esbuild/freebsd-x64 0.24.2 development
  • @esbuild/linux-arm 0.24.2 development
  • @esbuild/linux-arm64 0.24.2 development
  • @esbuild/linux-ia32 0.24.2 development
  • @esbuild/linux-loong64 0.24.2 development
  • @esbuild/linux-mips64el 0.24.2 development
  • @esbuild/linux-ppc64 0.24.2 development
  • @esbuild/linux-riscv64 0.24.2 development
  • @esbuild/linux-s390x 0.24.2 development
  • @esbuild/linux-x64 0.24.2 development
  • @esbuild/netbsd-arm64 0.24.2 development
  • @esbuild/netbsd-x64 0.24.2 development
  • @esbuild/openbsd-arm64 0.24.2 development
  • @esbuild/openbsd-x64 0.24.2 development
  • @esbuild/sunos-x64 0.24.2 development
  • @esbuild/win32-arm64 0.24.2 development
  • @esbuild/win32-ia32 0.24.2 development
  • @esbuild/win32-x64 0.24.2 development
  • @rollup/rollup-android-arm-eabi 4.34.6 development
  • @rollup/rollup-android-arm64 4.34.6 development
  • @rollup/rollup-darwin-arm64 4.34.6 development
  • @rollup/rollup-darwin-x64 4.34.6 development
  • @rollup/rollup-freebsd-arm64 4.34.6 development
  • @rollup/rollup-freebsd-x64 4.34.6 development
  • @rollup/rollup-linux-arm-gnueabihf 4.34.6 development
  • @rollup/rollup-linux-arm-musleabihf 4.34.6 development
  • @rollup/rollup-linux-arm64-gnu 4.34.6 development
  • @rollup/rollup-linux-arm64-musl 4.34.6 development
  • @rollup/rollup-linux-loongarch64-gnu 4.34.6 development
  • @rollup/rollup-linux-powerpc64le-gnu 4.34.6 development
  • @rollup/rollup-linux-riscv64-gnu 4.34.6 development
  • @rollup/rollup-linux-s390x-gnu 4.34.6 development
  • @rollup/rollup-linux-x64-gnu 4.34.6 development
  • @rollup/rollup-linux-x64-musl 4.34.6 development
  • @rollup/rollup-win32-arm64-msvc 4.34.6 development
  • @rollup/rollup-win32-ia32-msvc 4.34.6 development
  • @rollup/rollup-win32-x64-msvc 4.34.6 development
  • @types/estree 1.0.6 development
  • esbuild 0.24.2 development
  • fsevents 2.3.3 development
  • nanoid 3.3.8 development
  • picocolors 1.1.1 development
  • postcss 8.5.2 development
  • rollup 4.34.6 development
  • source-map-js 1.2.1 development
  • typescript 5.7.3 development
  • vite 6.1.0 development
package.json npm
  • typescript ~5.7.2 development
  • vite ^6.1.0 development