Skip to content
Closed

PR #8

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
1d1f700
Initial plan
Copilot Aug 29, 2025
86f0b04
Merge pull request #4 from GizzZmo/copilot/fix-12ea18f7-8bf6-4030-93b…
GizzZmo Aug 29, 2025
7bf59d4
Add CI workflow and test infrastructure
Copilot Aug 29, 2025
d6c3e8b
Merge pull request #5 from GizzZmo/main
GizzZmo Aug 29, 2025
18d32fb
Merge pull request #6 from GizzZmo/copilot/fix-12ea18f7-8bf6-4030-93b…
GizzZmo Aug 29, 2025
be57e6a
Initial plan
Copilot Aug 29, 2025
9d3f1cb
Merge pull request #9 from GizzZmo/copilot/fix-6008b767-de9e-413e-8d5…
GizzZmo Aug 29, 2025
3d4e0d8
Merge pull request #10 from GizzZmo/main
GizzZmo Aug 29, 2025
5919310
Merge pull request #11 from GizzZmo/copilot/fix-6008b767-de9e-413e-8d…
GizzZmo Aug 29, 2025
1071b6f
Initial plan
Copilot Aug 29, 2025
8c89483
Implement Phase 1 GitHub integration - OAuth authentication and UI
Copilot Aug 29, 2025
391d164
Complete Phase 1 GitHub integration - mark roadmap as completed
Copilot Aug 29, 2025
ea52127
Merge pull request #13 from GizzZmo/copilot/fix-1f2c7f2a-1ba0-4e3b-b5…
GizzZmo Aug 29, 2025
caec8ee
Initial plan
Copilot Aug 29, 2025
e53526d
Merge pull request #14 from GizzZmo/copilot/fix-df4fe79a-8663-44d1-b0…
GizzZmo Aug 29, 2025
f6de005
Initial plan
Copilot Sep 5, 2025
3b6a3fd
Optimize React components with performance improvements and utilities
Copilot Sep 5, 2025
bd1fe58
Complete comprehensive documentation and final optimizations
Copilot Sep 5, 2025
2f3ec0f
Merge pull request #16 from GizzZmo/copilot/fix-17428752-b8f0-4a97-b0…
GizzZmo Sep 5, 2025
cfd9b89
Initial plan
Copilot Sep 5, 2025
34754ca
Implement comprehensive multi-YAML configuration system with cross-pl…
Copilot Sep 5, 2025
ae7adc6
Merge pull request #18 from GizzZmo/copilot/fix-45ca1259-19d7-4d2e-92…
GizzZmo Sep 5, 2025
151a715
Add Vite build system and update CI/CD pipeline with artifacts
Copilot Aug 29, 2025
eb549d3
Complete CI/CD setup with build tests and documentation
Copilot Aug 29, 2025
dd90563
Update vite-index.html
GizzZmo Aug 29, 2025
2aaecfc
Initial plan
Copilot Oct 4, 2025
7e1f416
Fix security vulnerabilities and improve error handling
Copilot Oct 4, 2025
9c296cf
Add accessibility improvements and input validation
Copilot Oct 4, 2025
54f9bf7
Add security and quality improvements documentation
Copilot Oct 4, 2025
7578c70
Merge pull request #20 from GizzZmo/copilot/fix-57122228-168c-41bb-94…
GizzZmo Oct 5, 2025
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
105 changes: 105 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,105 @@
name: CI/CD

on:
push:
branches: [ main, develop ]
pull_request:
branches: [ main, develop ]

jobs:
test:
runs-on: ubuntu-latest

strategy:
matrix:
node-version: [18.x, 20.x]

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Setup Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
cache: 'npm'

- name: Install dependencies
run: npm ci

- name: Run tests
run: npm run test:ci

- name: Upload coverage reports
if: matrix.node-version == '20.x'
uses: codecov/codecov-action@v3
with:
file: ./coverage/lcov.info
fail_ci_if_error: false

lint:
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20.x'
cache: 'npm'

- name: Install dependencies
run: npm ci

- name: Check for linting setup
run: |
if [ -f "package.json" ] && grep -q '"lint"' package.json; then
echo "Running linter..."
npm run lint
else
echo "No linter configured, skipping..."
fi

build:
runs-on: ubuntu-latest
needs: [test, lint]

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20.x'
cache: 'npm'

- name: Install dependencies
run: npm ci

- name: Build application
run: npm run build

- name: Upload build artifacts
uses: actions/upload-artifact@v4
with:
name: build-artifacts
path: dist/
retention-days: 30

- name: Upload build artifacts summary
run: |
echo "## Build Artifacts" >> $GITHUB_STEP_SUMMARY
echo "Build completed successfully! 🎉" >> $GITHUB_STEP_SUMMARY
echo "" >> $GITHUB_STEP_SUMMARY
echo "### Generated Files:" >> $GITHUB_STEP_SUMMARY
ls -la dist/ | tail -n +2 | while read line; do
echo "- $line" >> $GITHUB_STEP_SUMMARY
done
echo "" >> $GITHUB_STEP_SUMMARY
echo "### File Sizes:" >> $GITHUB_STEP_SUMMARY
du -h dist/* | while read size file; do
echo "- $(basename $file): $size" >> $GITHUB_STEP_SUMMARY
done
73 changes: 73 additions & 0 deletions BUILD_GUIDE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
# Build & Deployment Guide

## Development

To start the development server:

```bash
npm install
npm run dev
```

This will start Vite's development server on `http://localhost:3000` with hot module replacement.

## Building for Production

To build the application for production:

```bash
npm run build
```

This creates optimized production files in the `dist/` directory:
- `vite-index.html` - Main HTML entry point
- `assets/` - Optimized JavaScript, CSS, and source maps
- Vendor libraries are separated into their own chunk for better caching

## Preview Built Application

To preview the production build locally:

```bash
npm run preview
```

This serves the built files on `http://localhost:4173`.

## CI/CD Pipeline

The project includes a GitHub Actions CI/CD pipeline that:

1. **Tests** - Runs on Node.js 18.x and 20.x
2. **Linting** - Checks for linting setup (currently skipped as no linter configured)
3. **Build** - Creates production artifacts and uploads them to GitHub Actions
4. **Artifacts** - Build artifacts are stored for 30 days and can be downloaded from the Actions tab

### Pipeline Triggers

- Push to `main` or `develop` branches
- Pull requests to `main` or `develop` branches

### Build Artifacts

The pipeline creates and uploads:
- Complete `dist/` folder with all production assets
- Build summary with file sizes and generated files

## Scripts

- `npm run dev` - Start development server
- `npm run build` - Build for production
- `npm run build:clean` - Clean build directory and rebuild
- `npm run preview` - Preview production build
- `npm test` - Run tests once
- `npm run test:watch` - Run tests in watch mode
- `npm run test:ci` - Run tests with coverage for CI

## Technology Stack

- **Build Tool**: Vite 7.x
- **Framework**: React 18.x
- **Testing**: Jest with React Testing Library
- **CI/CD**: GitHub Actions
- **Package Manager**: npm
Loading
Loading