chore: simplify colors
This commit is contained in:
parent
67adea35a3
commit
ec35c70418
29 changed files with 79 additions and 75 deletions
|
@ -69,7 +69,7 @@ export default function Now(props) {
|
|||
<p className="mt-2 text-lg leading-7 text-gray-500 dark:text-gray-100">
|
||||
<CodeBracketIcon className="mr-1 inline h-6 w-6" />
|
||||
Working at <Link
|
||||
className="text-purple-500 hover:text-purple-600 dark:hover:text-purple-400"
|
||||
className="text-blue-500 hover:text-blue-600 dark:hover:text-blue-400"
|
||||
href="https://hashicorp.com"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
|
@ -81,7 +81,7 @@ export default function Now(props) {
|
|||
<MegaphoneIcon className="mr-1 inline h-6 w-6" />
|
||||
Rooting for the{` `}
|
||||
<Link
|
||||
className="text-purple-500 hover:text-purple-600 dark:hover:text-purple-400"
|
||||
className="text-blue-500 hover:text-blue-600 dark:hover:text-blue-400"
|
||||
href="https://lakers.com"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
|
@ -98,7 +98,7 @@ export default function Now(props) {
|
|||
<p className="mt-2 text-lg leading-7 text-gray-500 dark:text-gray-100">
|
||||
<CommandLineIcon className="mr-1 inline h-6 w-6" />
|
||||
Hacking away on random projects like this page, my <Link
|
||||
className="text-purple-500 hover:text-purple-600 dark:hover:text-purple-400"
|
||||
className="text-blue-500 hover:text-blue-600 dark:hover:text-blue-400"
|
||||
href="/blog"
|
||||
passHref
|
||||
>
|
||||
|
@ -114,7 +114,7 @@ export default function Now(props) {
|
|||
<p className="pt-8 text-center text-xs text-gray-900 dark:text-gray-100">
|
||||
(This is a{' '}
|
||||
<Link
|
||||
className="text-purple-500 hover:text-purple-600 dark:hover:text-purple-400"
|
||||
className="text-blue-500 hover:text-blue-600 dark:hover:text-blue-400"
|
||||
href="https://nownownow.com/about"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
|
@ -122,7 +122,7 @@ export default function Now(props) {
|
|||
now page
|
||||
</Link>
|
||||
, and if you have your own site, <Link
|
||||
className="text-purple-500 hover:text-purple-600 dark:hover:text-purple-400"
|
||||
className="text-blue-500 hover:text-blue-600 dark:hover:text-blue-400"
|
||||
href="https://nownownow.com/about"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
|
@ -309,14 +309,14 @@ const Cover = (props: { media: Media; type: 'artist' | 'album' }) => {
|
|||
|
||||
return (
|
||||
<Link
|
||||
className="text-purple-500 hover:text-purple-600 dark:hover:text-purple-400"
|
||||
className="text-blue-500 hover:text-blue-600 dark:hover:text-blue-400"
|
||||
href={media.url}
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
title={media.name}
|
||||
>
|
||||
<div className="relative">
|
||||
<div className="absolute left-0 top-0 h-full w-full rounded-lg border border-purple-500 bg-cover-gradient dark:border-gray-500"></div>
|
||||
<div className="absolute left-0 top-0 h-full w-full rounded-lg border border-blue-500 bg-cover-gradient dark:border-gray-500"></div>
|
||||
<div className="absolute left-1 bottom-2 drop-shadow-md">
|
||||
<div className="px-1 text-xs font-bold text-white">{media.name}</div>
|
||||
<div className="px-1 text-xs text-white">
|
||||
|
|
|
@ -56,7 +56,7 @@ The **Listening: albums** call is quite similar, swapping the `user.gettopartist
|
|||
{% for artist in artists %}
|
||||
<a href="{{artist.url}}" title="{{artist.name | escape}}">
|
||||
<div class="relative block">
|
||||
<div class="absolute left-0 top-0 h-full w-full rounded-lg border border-purple-500 bg-cover-gradient dark:border-gray-500"></div>
|
||||
<div class="absolute left-0 top-0 h-full w-full rounded-lg border border-blue-500 bg-cover-gradient dark:border-gray-500"></div>
|
||||
<div class="absolute left-1 bottom-2 drop-shadow-md">
|
||||
<div class="px-1 text-xs font-bold text-white">{{artist.name}}</div>
|
||||
<div class="px-1 text-xs text-white">
|
||||
|
@ -106,7 +106,7 @@ These images are all cropped to `350x350` and hosted over on <a href="https://bu
|
|||
{% for album in albums %}
|
||||
<a href="{{album.url}}" title="{{album.name | escape}}">
|
||||
<div class="relative block">
|
||||
<div class="absolute left-0 top-0 h-full w-full rounded-lg border border-purple-500 bg-cover-gradient dark:border-gray-500"></div>
|
||||
<div class="absolute left-0 top-0 h-full w-full rounded-lg border border-blue-500 bg-cover-gradient dark:border-gray-500"></div>
|
||||
<div class="absolute left-1 bottom-2 drop-shadow-md">
|
||||
<div class="px-1 text-xs font-bold text-white">{{album.name}}</div>
|
||||
<div class="px-1 text-xs text-white">
|
||||
|
|
|
@ -76,7 +76,7 @@ const WebmentionsCore = () => {
|
|||
<li key={mention['wm-id']} className="-ml-2">
|
||||
<Link href={mention.url} target="_blank" rel="noopener noreferrer">
|
||||
<Image
|
||||
className="h-10 w-10 rounded-full border border-purple-500 dark:border-gray-500"
|
||||
className="h-10 w-10 rounded-full border border-blue-500 dark:border-gray-500"
|
||||
src={mention.author.photo}
|
||||
alt={mention.author.name}
|
||||
width="40"
|
||||
|
@ -105,7 +105,7 @@ const WebmentionsCore = () => {
|
|||
rel="noopener noreferrer"
|
||||
>
|
||||
<Image
|
||||
className="h-12 w-12 rounded-full border border-purple-500 dark:border-gray-500"
|
||||
className="h-12 w-12 rounded-full border border-blue-500 dark:border-gray-500"
|
||||
src={mention.author.photo}
|
||||
alt={mention.author.name}
|
||||
width="48"
|
||||
|
|
|
@ -160,7 +160,7 @@ The templating for my site is all written in [liquid.js](https://liquidjs.com) a
|
|||
{% for artist in recentTracks.artists %}
|
||||
<a href="https://rateyourmusic.com/search?searchterm={{ artist.name | escape }}" title="{{artist.name | escape}}">
|
||||
<div class="relative block">
|
||||
<div class="absolute left-0 top-0 h-full w-full rounded-lg border border-purple-600 hover:border-purple-500 bg-cover-gradient dark:border-purple-400 dark:hover:border-purple-500"></div>
|
||||
<div class="absolute left-0 top-0 h-full w-full rounded-lg border border-blue-600 hover:border-blue-500 bg-cover-gradient dark:border-blue-400 dark:hover:border-blue-500"></div>
|
||||
<div class="absolute left-1 bottom-2 drop-shadow-md">
|
||||
<div class="px-1 text-xs font-bold text-white">{{ artist.name }}</div>
|
||||
<div class="px-1 text-xs text-white">
|
||||
|
@ -184,7 +184,7 @@ The templating for my site is all written in [liquid.js](https://liquidjs.com) a
|
|||
{% for album in recentTracks.albums %}
|
||||
<a href="https://rateyourmusic.com/search?searchtype=l&searchterm={{album.name | escape}}" title="{{album.name | escape}}">
|
||||
<div class="relative block">
|
||||
<div class="absolute left-0 top-0 h-full w-full rounded-lg border border-purple-600 hover:border-purple-500 bg-cover-gradient dark:border-purple-400 dark:hover:border-purple-500"></div>
|
||||
<div class="absolute left-0 top-0 h-full w-full rounded-lg border border-blue-600 hover:border-blue-500 bg-cover-gradient dark:border-blue-400 dark:hover:border-blue-500"></div>
|
||||
<div class="absolute left-1 bottom-2 drop-shadow-md">
|
||||
<div class="px-1 text-xs font-bold text-white">{{ album.name }}</div>
|
||||
<div class="px-1 text-xs text-white">
|
||||
|
@ -204,7 +204,7 @@ The templating for my site is all written in [liquid.js](https://liquidjs.com) a
|
|||
|
||||
We have an object containing arrays of objects — we iterate through each object for the appropriate section (tracks aren't displayed at the moment) and build the resulting display[^3]. This isn't perfect by any means, but, it does provide a nice little visualization of what I'm listening to and `240` tracks feels adequate as a rolling window into that activity.
|
||||
|
||||
{% image 'https://cdn.coryd.dev/blog/albums-artists.jpg', 'Albums and artists', 'border border-purple-600 dark:border-purple-400 rounded-lg overflow-hidden [&>*]:w-full' %}
|
||||
{% image '<https://cdn.coryd.dev/blog/albums-artists.jpg>', 'Albums and artists', 'border border-blue-500 dark:border-blue-200 rounded-lg overflow-hidden [&>*]:w-full' %}
|
||||
|
||||
[^1]: There are some good options to do this, but there aren't a _ton_ and the age of some of the apps is concerning. [Marvis](https://appaddy.wixsite.com/marvis) is far and away your best choice here.
|
||||
[^2]: Making sure that you update the values you obtained, including the path to your downloaded `.p8` file.
|
||||
|
|
|
@ -26,7 +26,7 @@ If you want to skip all the reading, the diff for this [is here](https://github.
|
|||
{% assign alt = item.alt | strip %}
|
||||
<a href="{{ item.url | stripUtm }}" title="{{ alt | escape }}">
|
||||
<div class="relative block h-full"{% if shape != 'square' %} style="max-width:226px"{% endif %}>
|
||||
<div class="absolute left-0 top-0 h-full w-full rounded-lg border border-purple-600 hover:border-pink-500 dark:border-purple-400 dark:hover:border-pink-500 ease-in-out duration-300{% if item.title %} bg-cover-gradient{% endif %}"></div>
|
||||
<div class="absolute left-0 top-0 h-full w-full rounded-lg border border-blue-600 hover:border-blue-800 dark:border-blue-400 dark:hover:border-blue-200 ease-in-out duration-300{% if item.title %} bg-cover-gradient{% endif %}"></div>
|
||||
<div class="absolute left-1 bottom-2 drop-shadow-md">
|
||||
{% if item.title %}
|
||||
<div class="px-1 text-xs font-bold text-white line-clamp-2">{{ item.title }}</div>
|
||||
|
|
|
@ -10,7 +10,7 @@ I've been using Fastmail for years now and have explored a number of different a
|
|||
|
||||
For now, I've approached filtering my mail by applying regular expressions to reasonably broad categories of incoming mail[^2]. My thinking with this approach is that will scale better over the long term by applying heuristics to common phrases and patterns in incoming mail without the need to apply rules to senders on a per address or domain basis.
|
||||
|
||||
{% image 'https://cdn.coryd.dev/blog/fastmail-workflow.jpg', 'A diagram of my Fastmail workflow', 'border border-purple-600 dark:border-purple-400 rounded-lg overflow-hidden [&>*]:w-full' %}
|
||||
{% image '<https://cdn.coryd.dev/blog/fastmail-workflow.jpg>', 'A diagram of my Fastmail workflow', 'border border-blue-500 dark:border-blue-200 rounded-lg overflow-hidden [&>*]:w-full' %}
|
||||
|
||||
## Alias-specific rules
|
||||
|
||||
|
|
|
@ -65,6 +65,6 @@ Rendering the output is as simple as:
|
|||
|
||||
{% endraw %}
|
||||
Leaving us with:
|
||||
{% image 'https://cdn.coryd.dev/blog/album-releases.jpg', 'Albums I\'m looking forward to', 'border border-purple-600 dark:border-purple-400 rounded-lg overflow-hidden [&>*]:w-full' %}
|
||||
{% image '<https://cdn.coryd.dev/blog/album-releases.jpg>', 'Albums I\'m looking forward to', 'border border-blue-500 dark:border-blue-200 rounded-lg overflow-hidden [&>*]:w-full' %}
|
||||
|
||||
[^1]: At this point, a dev playground.
|
||||
|
|
|
@ -15,7 +15,7 @@ Given that I was already iterating through all pages in my posts collection, my
|
|||
<div class="flex flex-row items-center">
|
||||
<select
|
||||
id="pagination"
|
||||
class="block w-12 h-12 rounded-full text-white dark:text-gray-900 bg-purple-500 hover:bg-purple-500 dark:hover:bg-purple-300 mr-1 focus-visible:outline-none focus-visible:bg-purple-400 appearance-none text-center"
|
||||
class="block w-12 h-12 rounded-full text-white dark:text-gray-900 bg-blue-500 hover:bg-blue-500 dark:hover:bg-blue-300 mr-1 focus-visible:outline-none focus-visible:bg-blue-400 appearance-none text-center"
|
||||
style="text-align-last:center">
|
||||
{% for pageEntry in pagination.pages %}
|
||||
<option {% if page.url == pagination.hrefs[forloop.index0] %}selected{% endif %} value="{{ forloop.index }}">{{ forloop.index }}</option>
|
||||
|
|
|
@ -13,7 +13,7 @@ I made a minor update to how I'm normalizing TV data for display on my now page.
|
|||
|
||||
By _minor_ I mean one of those things that may well break inexplicably depending on where the data lands. Instead of returning a normalized array based directly off the data returned by [Trakt](https://trakt.tv)'s API I'm instead collecting episodes in an array, checking as I iterate through the response to see if an episode of the same show exists and replacing that object with a mutated object designed to display the range of episodes watched for the show.
|
||||
|
||||
{% image 'https://cdn.coryd.dev/blog/grouped-tv.jpg', 'Grouped TV episodes', 'border border-purple-600 dark:border-purple-400 rounded-lg overflow-hidden [&>*]:w-full' %}
|
||||
{% image '<https://cdn.coryd.dev/blog/grouped-tv.jpg>', 'Grouped TV episodes', 'border border-blue-500 dark:border-blue-200 rounded-lg overflow-hidden [&>*]:w-full' %}
|
||||
|
||||
{% raw %}
|
||||
|
||||
|
|
|
@ -168,6 +168,6 @@ Finally, if the page this all lives on is loaded by a client without JavaScript
|
|||
|
||||
All of this, yields the single line at the bottom of this image — updated on each visit.
|
||||
|
||||
{% image 'https://cdn.coryd.dev/blog/now-playing.jpg', 'Now playing', 'border border-purple-600 dark:border-purple-400 rounded-lg overflow-hidden [&>*]:w-full' %}
|
||||
{% image '<https://cdn.coryd.dev/blog/now-playing.jpg>', 'Now playing', 'border border-blue-500 dark:border-blue-200 rounded-lg overflow-hidden [&>*]:w-full' %}
|
||||
|
||||
[^1]: Plus explicit conditions matching David Bowie and Minor Threat.
|
||||
|
|
|
@ -140,6 +140,6 @@ For this page in particular, the images that are rendered above the fold are set
|
|||
|
||||
All of these boilerplate steps leave us with a quick to load, accessible and resilient site:
|
||||
|
||||
{% image 'https://cdn.coryd.dev/blog/page-speed.jpg', 'Pagespeed scores for coryd.dev/now', 'border border-purple-600 dark:border-purple-400 rounded-lg overflow-hidden [&>*]:w-full' %}
|
||||
{% image '<https://cdn.coryd.dev/blog/page-speed.jpg>', 'Pagespeed scores for coryd.dev/now', 'border border-blue-500 dark:border-blue-200 rounded-lg overflow-hidden [&>*]:w-full' %}
|
||||
|
||||
[^1]: It's easy, flexible and helps mitigate my lack of an eye for design by providing safe baselines.
|
||||
|
|
|
@ -133,7 +133,7 @@ _Cool_[^4]. GitHub triggers a rebuild of the site every hour, Netlify builds it,
|
|||
|
||||
There are some significant issues with this approach: it doesn't capture listens to an album in a loop (like me playing the new Outer Heaven record today — hails 🤘). It can get wonky when my diff function hits a track order that elicits a false positive return value.
|
||||
|
||||
{% image 'https://cdn.coryd.dev/blog/charlie.jpg', 'Charlie Day standing in front of charts', 'border border-purple-600 dark:border-purple-400 rounded-lg overflow-hidden [&>*]:w-full' %}
|
||||
{% image '<https://cdn.coryd.dev/blog/charlie.jpg>', 'Charlie Day standing in front of charts', 'border border-blue-500 dark:border-blue-200 rounded-lg overflow-hidden [&>*]:w-full' %}
|
||||
|
||||
"But Cory there's last.fm." I hear this, I love last.fm, but I've got concerns about its age, ownership and maintenance. I don't want to be on the wrong end of a scream test when the wrong (right?) server rack gets decommissioned.
|
||||
|
||||
|
|
|
@ -79,7 +79,7 @@ When the build runs, it renders any mentions of a given post via a [liquid.js](h
|
|||
<img
|
||||
src={{mention.author.photo}}
|
||||
alt={{mention.author.name}}
|
||||
class="h-14 w-14 rounded-full border-4 border-white dark:border-gray-900 transition-all hover:border-purple-500 dark:hover:border-purple-300"
|
||||
class="h-14 w-14 rounded-full border-4 border-white dark:border-gray-900 transition-all hover:border-blue-500 dark:hover:border-blue-300"
|
||||
loading="lazy"
|
||||
/>
|
||||
</a>
|
||||
|
@ -98,7 +98,7 @@ When the build runs, it renders any mentions of a given post via a [liquid.js](h
|
|||
<img
|
||||
src={{mention.author.photo}}
|
||||
alt={{mention.author.name}}
|
||||
class="h-14 w-14 rounded-full border-4 border-white dark:border-gray-900 transition-all hover:border-purple-500 dark:hover:border-purple-300"
|
||||
class="h-14 w-14 rounded-full border-4 border-white dark:border-gray-900 transition-all hover:border-blue-500 dark:hover:border-blue-300"
|
||||
loading="lazy"
|
||||
/>
|
||||
</a>
|
||||
|
@ -116,12 +116,12 @@ When the build runs, it renders any mentions of a given post via a [liquid.js](h
|
|||
<img
|
||||
src={{mention.author.photo}}
|
||||
alt={{mention.author.name}}
|
||||
class="h-14 w-14 rounded-full border-4 border-white dark:border-gray-900 transition-all group-hover:border-purple-500 dark:group-hover:border-purple-300"
|
||||
class="h-14 w-14 rounded-full border-4 border-white dark:border-gray-900 transition-all group-hover:border-blue-500 dark:group-hover:border-blue-300"
|
||||
loading="lazy"
|
||||
/>
|
||||
<div class="ml-3">
|
||||
<p class="text-sm group-hover:text-purple-500 dark:group-hover:text-purple-300">{{mention.content.text}}</p>
|
||||
<p class="mt-1 text-xs group-hover:text-purple-500 dark:group-hover:text-purple-300">{{mention.published | isoDateOnly}}</p>
|
||||
<p class="text-sm group-hover:text-blue-500 dark:group-hover:text-blue-300">{{mention.content.text}}</p>
|
||||
<p class="mt-1 text-xs group-hover:text-blue-500 dark:group-hover:text-blue-300">{{mention.published | isoDateOnly}}</p>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
|
|
Reference in a new issue