This repository contains the website for the Murty family, which has been built with Deno and Lume.
I've also used fonts that I've purchased from Mass-Driver, and the free icon pack from Font Awesome.
To setup a new local development environment:
- Fork this repository
- Make a local clone of that forked repository
- Update some files in the forked repository:
- The
bin/deploy
script must be updated to use your forked repository URLs when updatingCHANGELOG.md
- The
bin/deploy
script must be updated to use your own Deno Deploy project name in thedeployctl
line - All files in the
content
directory should contain your own content instead - All files in the
assets
directory should contain your own static files instead - Purchase your own license to use Mass-Driver fonts or use other fonts
- Commit and push all of these changes to your forked repository
- Setup your Deno Deploy account:
- Consider subscribing to the Deno Deploy Pro account based on your usage needs
- Create a new Deno Deploy project for this site
- Add your production domain(s) via
Settings > Domains
- Install Deno
- Run bin/setup to complete the initial installation process:
bin/setup
- Update your
.env
file:
FATHOM_ANALYTICS_SITE_ID
: The related Site ID from your Fathom Analytics accountLASTFM_API_KEY
: Your Last.fm API key to show your loved tracks on the site
- Create a new system environment variable named
DENO_DEPLOY_TOKEN
by following their documentation - Edit
deno.jsonc
: Remove thedeploy.project
value, on your first deploy this will be set to your own project ID - Edit
bin/deploy
: Edit thedeployctl
command to use your own Deno project name - Install exiftool on your local machine
- Optional: Install VS Code and the recommended plugins:
Run bin/test:
bin/test
Run bin/serve:
bin/serve
Run bin/build:
bin/build
After testing locally, commit and push your changes up to your remote forked repository.
Then run bin/deploy to make a new version and deploy it:
bin/deploy YYYY.xxx
Where YYYY
is the current year, and xxx
is the revision number for that year.
This script will:
- Update the content in CHANGELOG.md
- Create a new Git Tag (
YYYY.xxx
as detailed above) - Push changes up to the origin repository
- Build the site
- Deploy the site to Deno Deploy as a production deployment