Implementing TextRank on my blog search engine | James' Coffee Blog
Use case-driven standards development | James' Coffee Blog
Brainstorming Webmention post discovery | James' Coffee Blog
Annotating my website page structure | James' Coffee Blog
How minimal is too minimal? Brainstorming syntax for VisionScript | James' Coffee Blog
Neighbourhood cats | James' Coffee Blog
The Guardian Article Counts | James' Coffee Blog
Grayscale | James' Coffee Blog
GROUNDHOG-DAY.com
How to make a plant monitor dashboard: Part I | James' Coffee Blog
Happy Groundhog Day | James' Coffee Blog
Trees | James' Coffee Blog
Sparklines in Google Sheets | James' Coffee Blog
Saving my blog posts in one single .docx file | James' Coffee Blog
PyPi, the Cheese Shop | James' Coffee Blog
Why I am Building IndieWeb Search | James' Coffee Blog
Using Keybow to build custom keyboard functions | James' Coffee Blog
Generating a PDF from a folder of Markdown files | James' Coffee Blog
How my search engine direct answers work | James' Coffee Blog
Fun with Words | James' Coffee Blog
Seeing your content at the top of a search results page | James' Coffee Blog
The Housekeeper and The Professor Book Review | James' Coffee Blog
My search engine has moved to IndieWeb Search | James' Coffee Blog
Adding hovercards to my website | James' Coffee Blog
Announcing stories.js: Create web stories on your personal website | James' Coffee Blog
Announcing indieweb-utils | James' Coffee Blog
Announcing Screenshots: How I generate meta images for my site | James' Coffee Blog
How to make a plant monitor dashboard: Part II | James' Coffee Blog
Why I publish microformats on my website | James' Coffee Blog
SWICG Email: Community Events Calendar and Website | James' Coffee Blog