Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
55 commits
Select commit Hold shift + click to select a range
2a85d15
added author creation automation
shoverbj Jun 11, 2026
efa253c
Merge branch 'main' into adding-automation
shoverbj Jun 11, 2026
9f4650e
fixing errors
shoverbj Jun 11, 2026
4c26ff5
fix typo
shoverbj Jun 11, 2026
6b154dd
change all yaml to yml
shoverbj Jun 11, 2026
625b68a
new blog post automation
shoverbj Jun 11, 2026
0f84794
Merge branch 'main' into test/adding-automation
shoverbj Jun 11, 2026
a5294b0
add new-blog-post template
shoverbj Jun 11, 2026
c35c9ca
add blog post automation
shoverbj Jun 11, 2026
159b549
updating templates
shoverbj Jun 11, 2026
9ceb672
updates to template
shoverbj Jun 11, 2026
45fdde7
Update template
shoverbj Jun 11, 2026
1ff26fd
cleaning things up
shoverbj Jun 11, 2026
d288f38
update token
shoverbj Jun 11, 2026
01f01bc
update workflow
shoverbj Jun 12, 2026
6546f76
Updating workflows
shoverbj Jun 12, 2026
5fbe136
fix unit options
shoverbj Jun 12, 2026
8ebc479
fix workflow
shoverbj Jun 12, 2026
6b7fe69
Fixed list comprehension variable
shoverbj Jun 12, 2026
fb82c73
testing file uploads
shoverbj Jun 12, 2026
3603340
process author avatar correctly
shoverbj Jun 12, 2026
4276ed9
fixes to authors appending
shoverbj Jun 12, 2026
6955cdb
added default author image
shoverbj Jun 12, 2026
203e73c
rename templates
shoverbj Jun 12, 2026
cfb01a0
rename created branches
shoverbj Jun 12, 2026
a127e1b
update README
shoverbj Jun 12, 2026
7ce1934
Merge branch 'main' into test/adding-automation
shoverbj Jun 12, 2026
60c11d4
update readme
shoverbj Jun 12, 2026
0fecec2
fix typos
shoverbj Jun 12, 2026
6f54c95
update versions of actions
shoverbj Jun 12, 2026
5b397a4
Updating templates
shoverbj Jun 12, 2026
2418d28
importing pics
shoverbj Jun 14, 2026
8f3dc78
bug fixes and clean up of blog post automation
shoverbj Jun 15, 2026
6efa88c
truncate blogs
shoverbj Jun 17, 2026
3b4a29e
adding new document template
shoverbj Jun 17, 2026
9194f85
updates for AI dev
shoverbj Jun 18, 2026
1c87e45
Merge branch 'main' into test/adding-automation
shoverbj Jun 18, 2026
244e194
updates to grant blog
shoverbj Jun 18, 2026
84defa9
consolidate workflows add facebook integration
shoverbj Jun 18, 2026
c80850f
fixed issue with location of slides folder
shoverbj Jun 18, 2026
60f1994
improve llms document
shoverbj Jun 18, 2026
447099f
change truncate to be proper
shoverbj Jun 18, 2026
a185816
remove depricated app-id
shoverbj Jun 18, 2026
a819c70
add words to dictionary
shoverbj Jun 18, 2026
3da1475
improvements
shoverbj Jun 18, 2026
215c1b5
seo changes
shoverbj Jun 18, 2026
f94827c
update cloudflare node version
shoverbj Jun 18, 2026
e6e901a
clean up of config file
shoverbj Jun 18, 2026
5161cbc
added lots of comments
shoverbj Jun 18, 2026
91b9d97
cookie permission css was messing with slide show
shoverbj Jun 18, 2026
1cb45b1
fix syntax errors
shoverbj Jun 18, 2026
9ac0a77
Merge branch 'main' into test/adding-automation
shoverbj Jun 19, 2026
5dc5414
fix syntax
shoverbj Jun 19, 2026
c8c2e74
wrong file name
shoverbj Jun 19, 2026
908ad4d
typo
shoverbj Jun 19, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 11 additions & 2 deletions .github/.scout-dictionary
Original file line number Diff line number Diff line change
@@ -1,23 +1,32 @@
boonie
brookville
Campmor
campmor
clifty
Crocs
crocs
dateutil
env
epi
exif
fiorella
firem'n
idx
img
iols
jaccos
kebabed
koczan
krietenstein
lanczos
leppert
lubbe
maumee
mmr
neese
oa
ons
pil
sharin
slugified
stoddard
totin'
towne
Expand Down
18 changes: 17 additions & 1 deletion .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -1 +1,17 @@
* @shoverbj
# ==============================================================================
# GitHub Code Owners Configuration File
# This file automatically assigns reviewers to Pull Requests based on the paths
# of the files being modified.
#
# Rules to remember:
# 1. Order matters: Later rules override earlier ones for the same file paths.
# 2. Users can be specified by @username or by an email address linked to their account.
# 3. Teams can be assigned using @org/team-name (requires GitHub Organization).
# ==============================================================================

# ------------------------------------------------------------------------------
# GLOBAL FALLBACK OWNERS
# ------------------------------------------------------------------------------
# The asterisk (*) matches every file in the repository.
# These users will be requested to review a PR if no more specific rule below matches.
* @shoverbj
174 changes: 174 additions & 0 deletions .github/ISSUE_TEMPLATE/01-new-blog-post.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,174 @@
# ==============================================================================
# GitHub Issue Form Template Configuration
# This file defines a structured form for submitting new blog posts.
# ==============================================================================

# Core metadata for the GitHub Issue Form template
name: New Blog Post # Name of the template displayed in the GitHub UI
description: "Add a new post to the blog" # Subtext explaining the purpose of this form
labels: ["blog"] # Automatically applies this label to the created issue
title: "[New Blog Post]" # Pre-fills the issue title with this prefix
body: # Begins the list of form UI components/fields

# ----------------------------------------------------------------------------
# FIELD 1: Introductory Instructions (Markdown Notice)
# ----------------------------------------------------------------------------
- type: markdown # Static text block using Markdown formatting
attributes: # Map of properties for this markdown block
value: | # Literal block scalar to preserve line breaks
**The title above is just for internal use. Please don't change it**

# Creating new blog post

Fill out this form and click "Create" below to submit a new blog post.
After submitting your post, it will be reviewed by the webmaster before
being posted to the website.

# ----------------------------------------------------------------------------
# FIELD 2: Blog Post Title Input
# ----------------------------------------------------------------------------
- type: input # Single-line text input field
id: title # Unique identifier used by automated scripts
attributes: # Map of properties for this text input
label: "Blog Title" # Heading text displayed above the text box
description: | # Subtext providing user instructions
Title for your post

This should include the campout/adventure/event if thats what this post
is about!
placeholder: "👉 REPLACE WITH YOUR TITLE 👈" # Temporary ghost text inside the empty box
validations: # Section for field constraints
required: true # User must fill this out to submit the form

# ----------------------------------------------------------------------------
# FIELD 3: Publication Date Input
# ----------------------------------------------------------------------------
- type: input # Single-line text input field
id: date # Unique identifier for the date property
attributes: # Map of properties for this text input
label: "Post Date" # Heading text displayed above the text box
description: | # Instruction subtext
Date for your blog post

If this is left empty, today's date will be used.
placeholder: YYYY-MM-DD # Example format text shown inside the empty field
validations: # Section for field constraints
required: false # Makes this an optional field for the user

# ----------------------------------------------------------------------------
# FIELD 4: Author Selection Dropdown
# ----------------------------------------------------------------------------
- type: dropdown # Selectable list component
id: authors # Unique identifier for the authors list
attributes: # Map of properties for this dropdown
label: "Authors" # Heading text displayed above the dropdown
description: "Select author(s) of this post" # Instruction subtext
multiple: true # Allows users to choose more than one option
options: # List of selectable choices
# NOTE: Do not change the line below. It is used by our GitHub Action.
# AUTHOR_START
- Chris Koczan
- Benjamin Shover
# AUTHOR_END
validations: # Section for field constraints
required: true # User must choose at least one author

# ----------------------------------------------------------------------------
# FIELD 5: Missing Author Instructions (Markdown Link)
# ----------------------------------------------------------------------------
- type: markdown # Static text block using Markdown formatting
attributes: # Map of properties for this markdown block
value: | # Text layout block with a link to add new authors
If your name is not in the list of authors, please submit a request to
add your name to the list of authors here:

[New Author Request](https://github.com/scouting331/scoutSite/issues/new?template=03-new-blog-author.yml)

# ----------------------------------------------------------------------------
# FIELD 6: Unit / Tag Dropdown Selection
# ----------------------------------------------------------------------------
- type: dropdown # Selectable list component
id: tags # Unique identifier (maps to post categories or tags)
attributes: # Map of properties for this dropdown
label: "Unit" # Heading text displayed above the dropdown
description: | # Instruction subtext
Select the unit(s) to associate this post with.

Multiple units may be selected.
multiple: true # Allows selection of multiple scouting units
options: # List of available scouting units
- Troop 303
- Troop 331
- Crew 303
- Pack 303
validations: # Section for field constraints
required: true # User must select at least one unit

# ----------------------------------------------------------------------------
# FIELD 7: Cover Photo File Attachment
# ----------------------------------------------------------------------------
- type: upload # File attachment component
id: cover-photo # Unique identifier for the cover photo asset
attributes: # Map of properties for this upload field
label: "Cover Photo" # Heading text displayed above the dropzone
description: | # Subtext containing processing warnings
Photo shown at top of your blog post and on the homepage card

**NOTE**: There is no way to limit the number of files in this space. Please
only upload 1 photo. If multiple photos are uploaded, the script will
simply choose one photo and discard the rest.
validations: # Section for file upload constraints
required: false # Cover photo is not mandatory to submit
accept: ".png, .jpg, .jpeg, .gif, .svg, .webp" # Allowed image extensions

# ----------------------------------------------------------------------------
# FIELD 8: Photo Album File Attachment List
# ----------------------------------------------------------------------------
- type: upload # File attachment component
id: photo-album # Unique identifier for the gallery asset batch
attributes: # Map of properties for this upload field
label: "Photo Album" # Heading text displayed above the dropzone
description: | # Subtext containing file size limits
If you want to include a photo album upload all of the photos you want
included here.

**NOTE**: If the file is too big (>25 Mb), the photo will need to be resized
before being uploaded.
validations: # Section for file upload constraints
required: false # Photo gallery is not mandatory to submit
accept: ".png, .jpg, .jpeg, .gif, .svg, .webp" # Allowed image extensions

# ----------------------------------------------------------------------------
# FIELD 9: Main Body Content Textarea
# ----------------------------------------------------------------------------
- type: textarea # Large multi-line text input block
id: blog-content # Unique identifier for the markdown body text
attributes: # Map of properties for this textarea
label: "Blog Text" # Heading text displayed above the textarea
description: | # Instruction subtext
Write your blog post here!
placeholder: | # Boilerplate template text pre-filled inside the box
<!-- 💡 SCOUT TIP: Write a catchy 1-2 sentence introduction here! -->

## What We Did
<!-- 💡 SCOUT TIP: List 3 fun activities or skills we learned during this event! -->
- Activity 1
- Activity 2
- Activity 3

:::info⛺ Outdoor Adventure Tip

If this post is about a camping trip, use this box to share a tip about
the gear or recipes we used!

:::
validations: # Section for field constraints
required: true # User must enter text content to submit

# ----------------------------------------------------------------------------
# FIELD 10: Closing Instructions (Markdown Footer)
# ----------------------------------------------------------------------------
- type: markdown # Static text block using Markdown formatting
attributes: # Map of properties for this markdown block
value: | # Final warning text for form submitters
**Please don't edit any of the other options!**
96 changes: 96 additions & 0 deletions .github/ISSUE_TEMPLATE/02-new-document.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
# ==============================================================================
# GitHub Issue Form Template Configuration
# This file defines a structured form for submitting new site documentation.
# ==============================================================================

# Core metadata for the GitHub Issue Form template
name: New Document # Name of the template displayed in the GitHub UI
description: "Add a new document" # Subtext explaining the purpose of this form
labels: ["docs"] # Automatically applies this label to the created issue
title: "[New Document]" # Pre-fills the issue title with this prefix
body: # Begins the list of form UI components/fields

# ----------------------------------------------------------------------------
# FIELD 1: Introductory Instructions (Markdown Notice)
# ----------------------------------------------------------------------------
- type: markdown # Static text block using Markdown formatting
attributes: # Map of properties for this markdown block
value: | # Literal block scalar to preserve line breaks
**The title above is just for internal use. Please don't change it**

# Adding a new document to the site

Fill out this form and click "Create" below to submit a new document.
After submitting your document, it will be reviewed by the webmaster before
being added to the website.

# ----------------------------------------------------------------------------
# FIELD 2: Document Title Input
# ----------------------------------------------------------------------------
- type: input # Single-line text input field
id: title # Unique identifier used by automated scripts
attributes: # Map of properties for this text input
label: "Document Title" # Heading text displayed above the text box
description: | # Subtext providing user instructions
Title of the proposed document

This will be displayed at the top of the document. Make sure it is descriptive of what the document is!
placeholder: "New Document" # Temporary ghost text inside the empty box
validations: # Section for field constraints
required: true # User must fill this out to submit the form

# ----------------------------------------------------------------------------
# FIELD 3: Document Description Input
# ----------------------------------------------------------------------------
- type: input # Single-line text input field
id: description # Unique identifier for the description field
attributes: # Map of properties for this text input
label: "Document Description" # Heading text displayed above the text box
description: | # Instruction subtext
Please provide a single sentence description of what this document is.
placeholder: "This is the packing list/rules/etc..." # Ghost text showing an example description
validations: # Section for field constraints
required: true # User must provide a description to submit

# ----------------------------------------------------------------------------
# FIELD 4: Unit Selection Dropdown
# ----------------------------------------------------------------------------
- type: dropdown # Selectable list component
id: tags # Unique identifier for the associated unit/tags
attributes: # Map of properties for this dropdown
label: "Unit" # Heading text displayed above the dropdown
description: | # Instruction subtext explaining general option
Select the unit(s) to associate this post with.

If this document applies to multiple units, select **General**
multiple: false # Restricts the user to choosing exactly one option
options: # List of available scouting units and categories
- Troop 303
- Troop 331
- Crew 303
- Pack 303
- General # (Fallback for cross-unit files)
validations: # Section for field constraints
required: true # User must choose a unit to submit the form

# ----------------------------------------------------------------------------
# FIELD 5: Main Body Content Textarea
# ----------------------------------------------------------------------------
- type: textarea # Large multi-line text input block
id: doc-content # Unique identifier for the document content
attributes: # Map of properties for this textarea
label: "Document Text" # Heading text displayed above the textarea
description: | # Subtext noting that files/images can be attached
Add the content of your document here. You can include inline
images/files if needed.
placeholder: "Document text here..." # Default ghost text inside the text editor box
validations: # Section for field constraints
required: true # User must enter text content to submit

# ----------------------------------------------------------------------------
# FIELD 6: Closing Instructions (Markdown Footer)
# ----------------------------------------------------------------------------
- type: markdown # Static text block using Markdown formatting
attributes: # Map of properties for this markdown block
value: | # Final warning text for form submitters
**Please don't edit any of the other options!**
Loading