Skip to content

Update project metadata and CI workflow#51

Open
sis0k0 wants to merge 8 commits into
mainfrom
update-lf
Open

Update project metadata and CI workflow#51
sis0k0 wants to merge 8 commits into
mainfrom
update-lf

Conversation

@sis0k0
Copy link
Copy Markdown
Member

@sis0k0 sis0k0 commented May 18, 2026

This PR improves the developer experience and CI reliability for the MERN stack example through several related changes.

Documentation

  • Expanded README with architecture overview, quick start guide, Node.js version requirement (20+, required for node --env-file), and MongoDB feature links
  • Added Codespaces badge for one-click environment setup
  • Added AGENTS.md with contributor and agent guidance
  • Added EDD.md (Engineering Design Document) describing the data model and architecture

Developer environment

  • Added .devcontainer/ with full GitHub Codespaces and VS Code Dev Container support:
    • devcontainer.json — Node 22, VS Code extensions (MongoDB, TypeScript, Prettier), port forwarding
    • docker-compose.yml — MongoDB Atlas Local service with persistent volumes and health checks
    • README.md — setup guide with troubleshooting
  • Added mern/server/config.env.example — template for local configuration

Database tooling

  • Added mern/server/seed.js — populates employees.records with sample data; used automatically in the devcontainer on start

CI

  • Switched to mongo:latest service container so CI runs without an Atlas secret (works on fork PRs)
  • Added ATLAS_URI written directly from the service container credentials — no secrets required
  • Added server readiness check (wait-on) before Cypress runs to prevent race conditions
  • Migrated Cypress from v9 (cypress.json + integration/) to v10+ (cypress.config.js + e2e/)
  • Fixed test assertions to match current UI text
  • Bumped Node matrix to 20.x and 22.x; updated actions to latest versions

Testing

CI runs on both Node 20 and 22 against a local MongoDB service container. The devcontainer setup has been manually verified with MongoDB Atlas Local.

Copy link
Copy Markdown

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

Updates repository documentation and automation to better describe the MERN employee records app, adds project metadata docs, introduces a database seed script, and modernizes the GitHub Actions CI workflow.

Changes:

  • Expanded README with architecture, quick start, and MongoDB feature links.
  • Added seed.js for populating employees.records, plus new repo docs (AGENTS.md, EDD.md) and a Claude plugin settings file.
  • Updated CI workflow to use newer Node versions, newer actions, and run Cypress via cypress-io/github-action.

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
README.md Replaces minimal README with a full overview, architecture diagram, and setup instructions.
mern/server/seed.js Adds a MongoDB seed script for sample employee records.
EDD.md Documents the data model and includes a Mermaid ER diagram.
AGENTS.md Adds an AI agent guide describing structure and common commands.
.github/workflows/main.yaml Modernizes CI (Node matrix, actions versions, Cypress action usage).
.claude/settings.json Enables the official MongoDB Claude plugin for this repo.

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

Comment thread README.md
Comment thread mern/server/seed.js
Comment thread mern/server/seed.js
Comment thread EDD.md Outdated
Comment thread .github/workflows/main.yaml
Comment thread .github/workflows/main.yaml Outdated
Comment on lines +39 to +44
- name: Start server in the background
env:
env:
ATLAS_URI: ${{ secrets.ATLAS_URI }}
run: (cd mern/server && echo "ATLAS_URI=$ATLAS_URI" > config.env && npm start &)

- name: Start React app in the background
run: (cd mern/client && npm start &)
run: |
echo "ATLAS_URI=$ATLAS_URI" > config.env
npm start &
Copy link
Copy Markdown

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

Copilot reviewed 15 out of 15 changed files in this pull request and generated 11 comments.

Comment thread .github/workflows/main.yaml
Comment thread .github/workflows/main.yaml
Comment thread mern/server/seed.js Outdated
Comment thread mern/server/seed.js
Comment thread README.md
Comment on lines +54 to 59
### 2. Seed the database (optional)

```bash
cd mern/server
node seed.js
```
Comment thread mern/client/cypress/e2e/endToEnd.cy.js Outdated
Comment thread mern/client/cypress/e2e/endToEnd.cy.js Outdated
Comment thread EDD.md
Comment thread .devcontainer/docker-compose.yml
Comment thread .devcontainer/devcontainer.json Outdated
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
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