A minimal new tab page for Google Chrome
<epic-unsplash />
Epic, full-page background photos from Unsplash.<date-time />
A locale-aware date and time display.<ziiiro-clock />
Make time for fun. Inspired by Ziiiro.
From the Google Chrome Web Store.
To install locally, you need to run yarn install
in
addition to deno install
from the project root. If you're
still seeing errors in VS Code, run the Developer: Restart Extension Host
command.
This monorepo consists two very small packages:
extension
: The Google Chrome extensionapi
: A simple API for getting photos from Unsplash
Unfortunately, Unsplash retired source.unsplash.com
which
this extension used exclusively. Unsplash now requires using
their API which itself dictates we keep hidden all API keys.
So, yes, a monorepo which includes an API is hilarious
overkill for a new tab browser extension. But yet, here we are!
This entire project would have been in Deno, but to keep the Chrome extension in TypeScript, a build step was necessary. The current best options were Vite and Esbuild, neither of which worked, without issue, in Deno. Vite works in Node.js, so here we are. As a result, this monorepo requires both Node.js and Deno.
Deno's CLI deploy app, is finicky af. As such, most of the
configuration can be found in deno.json
with the exception
of env-file
which needs to be set as a CLI option. In
addition, the env-cmd
project is used to prevent creating
a new key for each deployment. This works by using the
DENO_DEPLOY_TOKEN
env variable inside the .env
file. Neato!
It's a play on the word "Kairos," Greek for the right or opportune time.