Here we'll display your golfing scores.
Contact your local club president if you'd like to join or attach your portrait. These scores will update automatically, so long as you & other players keep your .scorecard
file up to date!
Click on a row name to display the player's solution!
Put a .scorecard
file in the directory you'll be golfing from & fill it out as you go. Here is an example for a fictional player named Keeper.
Within your .scorecard
you'll list your submissions in a format like below, lines beginning with @
or //
or #
are ignored:
@ Bogstandard
# Awaiting the frost
Day One: scorekeeper.test
Day Two: example-day/example-file.test
Then provide your local club president with a link to your .scorecard
in your public repository & they'll do the rest! Your .scorecard
doesn't need to be in the same repository as the club!
Please checkout the Lapland Golf Course repo or speak with the groundskeeper about this, or even just copy this repo!
The club operates using a custom Jekyll template running on GitHub Pages, so it's reusable year to year. Checkout our _config.yml
file for more insight.
The rough steps for establishing a club are as follows:
- Make an empty repo.
- Set the repo to be a Jekyll based GitHub Pages instance via repo settings.
- Edit the
_config.yml
file to match the one here, you can always add players any time later. - Optional: Edit
index.md
to reflect your own choice of club brief. - Optional: Add any
{day}.png
(eg24.png
) images you want for the Advent flap to the directoryassets/images/advents/
in the repo.
Players can play from their own repos but they must be public.
If your club isn't pulling in the latest updates to the Lapland Golf Course theme then edit the index.md
file in some way, commit & push your changes then wait a few minutes for GitHub to rebuild the static HTML.
The page uses Javascript to dynamically check player's .scorecard
files on page load, so once they're added to the club by the owner via _config.yml
their scores will update automatically as they update their scorecards. No one needs to do anything after they're added except play codegolf & keep the scorecards up to date.
Lapland Golf Club has had a renovation & the readme format has been retired. While incredibly fun to build, the Bash based method of collating scores was unpleasant to operate; requiring a manual script run, commit & push each score update. It also required all players to stick within the same repository, which not everyone enjoys. You can still find the old Bash script here if you want something amusing to read (it disguised itself as markdown to avoid language detection!).
The club is now HTML and Javascript based, allowing a lot more freedom. Players only have to worry about their .scorecard
and tell the club president where to find them once, the rest is automated. The club page automatically updates with the latest scores by scraping GitHub from within itself.
The repository the player chooses to play from now doesn't matter, they can play in a seperate repo if they like. So long as it's public the club will find & score it.
This repo is an example of a Lapland Golf Course instance. Everything except customisation options is stored under the theme repo, anything here is custom to this specific instance.
It's 95% clientside, the only backend is handled by GitHubs internal Jekyll engine, the rest is stretching the limits of GitHub's allowance for within GitHub domain XHR/fetch requests.