RIP Karl Tremblay

★★★☆☆Live Wire by Harlan Coben

The plot was kind of average and the reveal at the end seemed far-fetched, but overall an enjoyable read. I picked this one up from a neighborhood Little Free Library because I had read one of Coben’s other books and enjoyed it. I didn’t realize it was part of a series, but it worked alright as a standalone read.

Finished reading: Live Wire by Harlan Coben (ISBN 9780525952060)

SoHo Playhouse

Let’s Fern Brady!

Joe brought CSS Battle to my attention today. I enjoy CSS but most of my daily work with it is routine stuff like forms, nothing too fancy or creative. I decided to try it out and in true indieweb fashion, I wanted to post the results on my site.

The 2023-11-14 Daily Target seemed like a good chance to brush up on CSS Grid. I got my solution down to 342 characters when minified. I must say it hurt a little to remove the quotation marks on HTML attributes. :]

It looks like the daily target switches over at midnight UTC, so I was too late to submit this today. Still a fun exercise and looking forward to more.

Compassionate Care

at Compassionate Care

House updates and other miscellani

Yesterday I cracked open XCode for the first time in a few years and did a marathon coding session on my GPS tracker app, Overland! I fixed a backlog of issues and added a few new features!

If you'd like to beta test it before I push out the update, you can join the TestFlight beta here! https://overland.p3k.app/beta

Find me on Printables

As predicted, it's only 7pm but i feel like I've been up for 24 hours, probably because I have. PRG-LHR-LAX-PDX-ZZZ😴
Transporation Plaza
New Uber/Lyft pickup location
Gate B39
Got here right as my boarding group was called! 😅
Metro =A= =C= Muzeum

at Metro =A= =C= Muzeum

I like this CSS image reset after watching Kevin Powell’s walkthrough.

Also intrigued by the post he linked, “The Ultimate Low-Quality Image Placeholder Technique.”

Taking a break from stuff

Staroměstská (tram)

at Staroměstská (tram)

Thoughts on Aloneness

#quotes #depression #loneliness
La Republica Restaurant

at La Republica Restaurant

Metro =B= =C= Florenc

at Metro =B= =C= Florenc

I now have the building blocks for Ticketing for IndieAuth set up.

On my staging site, the metadata endpoint now advertises the ticket_endpoint. That endpoint is accepting POST requests with parameters: ticket, resource, and subject. If the request is valid, it will be stored and return HTTP 202 with the message “Accepted.” Tickets are not automatically redeemed yet.

In the IndieAuth module admin, I set up a page to issue a ticket by entering a URL for “Allow access to” (the resource) and “Send ticket to” (the subject). Submitting that form will check the subject URL for an indieauth-metadata endpoint that advertises a ticket_endpoint. If that is found successfully, a ticket is created and sent there.

Finally, I updated the token_endpoint to accept POST requests with grant_type=ticket and exchange the ticket for an access token.

Next I will be working on automatically redeeming received tickets for access tokens and setting up some private posts to work with granted access tokens.

I am currently using the same code that generates authorization codes to make the tickets. I think this should work fine because it already handles creating an opaque string that is valid for a short period of time (5 minutes). The module also ensures these can only be used once and logs key information for each request like client_id (source code). I need to run some tests to ensure tickets can’t be used as authorization codes and I might need to add some metadata to differentiate the two in the admin area.

Feel free to try to send a ticket to my staging site and ping me in IndieWeb dev chat. I can also send you a ticket if you’d like to try that out. I look forward to discussing this with other implementers!