Skip to content

Conversation

@FidelusAleksander
Copy link

@FidelusAleksander FidelusAleksander commented Nov 12, 2025

Major changes

  • Exercise restructure to issue based flow with exercise-toolkit automation
  • The exercise is ran in a GitHub Codespace instead of recommending local download/setup
  • No node_modules commited - instead bundling to dist/index.js using vercel/ncc is taught in step3
  • Root directory structure: Action lives at repo root
  • Test workflow is triggered on /joke comments instead of issue labels

Copilot Summary

This pull request updates the project to use GitHub Codespaces and modernizes the setup and workflow for developing JavaScript GitHub Actions. The changes streamline the onboarding process, replace legacy workflow instructions, and introduce best practices for Node.js development in a cloud-based environment. The most important changes are grouped below.

Development Environment Modernization

  • Added a .devcontainer/devcontainer.json file to enable GitHub Codespaces with Node.js pre-installed, supporting a cloud-based development environment.
  • Updated step instructions to guide users through setting up and initializing a Node.js project using Codespaces, including dependency installation and .gitignore configuration.

Workflow and Automation Cleanup

  • Removed legacy workflow configuration from .github/dependabot.yml and outdated step tracking files, simplifying the repository and removing unused automation. [1] [2] [3]

Project Structure and Action Implementation

  • Replaced previous step instructions with new guides for creating modular source files (src/joke.js, src/main.js) and implementing the Dad Joke action logic using best practices.
  • Added instructions and scripts for bundling the action with @vercel/ncc, ensuring dependencies are packaged efficiently for GitHub Actions usage.

Legacy Documentation Removal

  • Removed outdated instructional markdown files for project initialization, action configuration, metadata creation, and JavaScript file creation, in favor of new, streamlined guides. [1] [2] [3] [4]

Copy link

@chriswblake chriswblake left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I really liked this exercise. No required changes, just ideas for improvements/tweaks.

I do however feel 1 thing is lacking that myself and many other people will probably wish was shown: inputs

Maybe you can tweak the exercise to let them "search" for a joke and the default is random if no input value is provided. Or just provide N jokes.

@arilivigni arilivigni requested a review from Copilot November 13, 2025 01:15
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This pull request modernizes the "Write JavaScript Actions" exercise by restructuring it to use GitHub Codespaces and issue-based workflow automation. The exercise now teaches users to build a Dad Jokes action at the repository root using modern bundling practices with @vercel/ncc instead of committing node_modules.

Key Changes:

  • Migrated from local development to GitHub Codespaces with cloud-based environment
  • Replaced step-tracking files with issue-based exercise-toolkit automation
  • Restructured action to live at repository root with dist/index.js bundling approach
  • Changed workflow trigger from issue labels to /joke comments

Reviewed Changes

Copilot reviewed 34 out of 35 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
README.md Updated exercise description, prerequisites, and start instructions to reflect Codespaces-based workflow
.devcontainer/devcontainer.json Added devcontainer configuration for GitHub Codespaces with Node.js support
.github/workflows/*.yml Replaced legacy step workflows with new step-based workflows using exercise-toolkit automation
.github/steps/*.md Replaced old step instructions with new Codespaces-oriented content and bundling approach
.github/dependabot.yml Removed Dependabot configuration

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@FidelusAleksander FidelusAleksander merged commit 91d7840 into skills-dev:main Nov 13, 2025
@FidelusAleksander
Copy link
Author

I do however feel 1 thing is lacking that myself and many other people will probably wish was shown: inputs

I thought about this but didn't see a good use case here but maybe the "amount of jokes" could be a decent idea

Might come in a later update. Adding inputs would also mean explaining .env file and INPUT_ env variables - could be a good fit with using github/local-action for debugging which I didn't implement here because it actually required an env file

Merging as is for now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants