https://github.com/bmurty/site
Murty website
https://github.com/bmurty/site
ai-agents deno deno-deploy github-actions javascript nunjucks static-site typescipt
Last synced: 3 months ago
JSON representation
Murty website
- Host: GitHub
- URL: https://github.com/bmurty/site
- Owner: bmurty
- License: other
- Created: 2022-05-24T02:38:15.000Z (about 4 years ago)
- Default Branch: develop
- Last Pushed: 2026-03-23T23:20:07.000Z (3 months ago)
- Last Synced: 2026-04-02T07:39:28.292Z (3 months ago)
- Topics: ai-agents, deno, deno-deploy, github-actions, javascript, nunjucks, static-site, typescipt
- Language: TypeScript
- Homepage: https://murty.au/
- Size: 20.2 MB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
- Agents: AGENTS.md
Awesome Lists containing this project
README
# Murty Website
## Summary
This repository contains the [murty.au](https://murty.au/) website, which has been built with [Deno](https://deno.land/), [Lume](https://lumeland.github.io/), a licensed version of the [IO font by Mass-Driver](https://io.mass-driver.com/), and the free [Font Awesome icon pack](https://fontawesome.com/).
Tests, build and local server commands are available from local environments.
Releases can be manually triggered via the `Release` [GitHub Action Workflow](.github/workflows/release.yml), which includes checking the test and build processed work before starting a new deployment [Deno Deploy](https://deno.com/deploy). It then publishes a new [GitHub Release](https://github.com/bmurty/site/releases).
Third-party dependencies are kept up to date via a scheduled [GitHub Action Workflow](.github/workflows/dependencies.yml), which can also be triggered manually. If there are changes, it confirms they don't break tests or builds, then creates a Pull Request.
## Structure
- [.github/workflows/dependencies.yml](.github/workflows/dependencies.yml) - Automatic dependency upgrade workflow.
- [.github/workflows/release.yml](.github/workflows/release.yml) - Release and deployment workflow.
- [.vscode](.vscode/) - Customised [VS Code](https://code.visualstudio.com/) project configuration.
- [.zed](.zed/) - Customised [Zed Editor](https://zed.dev/) project configuration.
- [assets](assets/) - Static files like images and PDFs.
- [bin](bin/) - Bash helper scripts, run `deno task` to show available options.
- [config](config/) - Supporting configuration files.
- [content](content/) - Website page content in [Markdown](https://daringfireball.net/projects/markdown/syntax) files.
- [src](src/) - Source code and related unit tests.
- [src/layouts](src/layouts/) - Nunjucks page layouts.
- [src/styles](src/styles/) - CSS styles.
- [src/templates](src/templates/) - Nunjucks page templates.
- [AGENTS.md](AGENTS.md) - AI Agent instructions, technical docs and guidance.
- [deno.json](deno.json) - [Deno](https://deno.land/) imports, tasks and configuration.
## Initial Setup
1. Fork this repository
2. Make a local clone of that forked repository
3. Install the [latest stable release of Deno](https://deno.com/)
4. Run the setup script: `deno task setup`
5. Update some files in the forked repository
- Update `.github/workflows/release.yml` to use your forked GitHub repository URL
- All files in the `content` directory **must** contain your own content instead
- All files in the `assets` directory **must** contain your own static files instead
- Purchase your own license to use the [Mass-Driver IO font](https://io.mass-driver.com/) or update the CSS to use other fonts
6. Commit and push all of these changes to your forked repository
7. Setup your own [Deno Deploy](https://deno.com/deploy) Org, Project and Personal Access Token
8. Update the Settings for your forked repository via GitHub:
- Go to `Settings > Security > Secrets and variables > Actions`
- Add new `Repository secrets` for the variables in [.env.github.example](.env.github.example)
9. Setup [Google Analytics](https://analytics.google.com/):
- Create a new site in your own account
- Update your `.env` file's `GOOGLE_ANALYTICS_SITE_CODE` value to use your new `Measurement ID`