Skip to content
Back to skills

Aceengineer Website Update

ASecurity

Daily automated website updates with competitor analysis and content sync

  • 17 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 9, 2026
devopspythongobashnodeexpressgitdocumentation

Security analysis

A92/100
  • mediumUses curl or wget to download content
  • mediumInstalls packages at runtime which could introduce malicious dependencies

Pro shows the line behind each finding and how to fix it

Scanned September 9, 2026

npx -y skills add vamseeachanta/workspace-hub --skill aceengineer-website-update --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Aceengineer Website Update?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Aceengineer Website Update
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/vamseeachanta-aceengineer-website-update/badge)](https://www.skillsdirectory.com/skills/vamseeachanta-aceengineer-website-update)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: aceengineer-website-update
description: Daily automated website updates with competitor analysis and content sync
type: reference
version: 1.0.0
category: business
capabilities: []
requires: []
see_also: []
tags: []
---

# AceEngineer Website Update Skill

Automates daily website maintenance including competitor SEO analysis and content synchronization from related repositories.

## Quick Start

```bash
# Run full daily update
./scripts/daily-update.sh

# Manual competitor analysis
python scripts/competitor_analysis.py

# Manual content sync
python scripts/content_sync.py --digitalmodel ../digitalmodel --worldenergydata ../worldenergydata

# Setup cron job
./scripts/cron-setup.sh
```

## Proven website publish workflow

Use this when adding or fixing public pages on aceengineer.com.

1. Edit source files under `content/` only.
   - Do not hand-edit `dist/` as the source of truth.
   - For new public pages, create `content/<section>/.../index.html`.
   - If using shared nav/footer/assets, include frontmatter like:
   ```html
   ---
   rootPath: "../../"
   ---
   ```

2. Build locally from repo root:
   ```bash
   npm test -- --runInBand
   npm run build
   ```
   This regenerates `dist/` via `node build.js` using the PostHTML include/expression pipeline.

3. Verify local routes before pushing.
   Example:
   ```bash
   python -m http.server 8788 --directory dist
   curl -I http://127.0.0.1:8788/<path>
   ```
   For important pages, also browser-check the rendered page.

4. Commit only source changes required for deployment.
   In this repo, `dist/` is gitignored; Vercel rebuilds from `content/`.

5. Push to `main`:
   ```bash
   git push origin main
   ```
   Vercel auto-deploys from `main` using:
   - `buildCommand: npm run build`
   - `outputDirectory: dist`

6. Poll production until live:
   ```bash
   curl -k -L -s -o /dev/null -w '%{http_code}\n' https://www.aceengineer.com/<path>
   ```
   Expect an initial 404 during rollout; retry until 200.

7. For GTM/demo work, verify both:
   - the new page itself
   - any inbound links from gallery/index pages

## Critical findings

- The real source tree is `content/`; `dist/` is generated and ignored by git.
- Vercel deployment is automatic after push to `main`; no manual deploy command was needed.
- Production propagation can lag briefly; polling with `curl` caught the transition from 404 to 200.
- For new nested pages (e.g. `content/methodology/.../index.html`), `rootPath` must match nesting depth so shared assets/nav links resolve correctly after build.

## Features

### Competitor Analysis
- Tracks keyword rankings for offshore engineering terms
- Auto-detects competitors from search results
- Generates weekly HTML reports with trends
- Provides SEO improvement recommendations

### Content Sync
- Syncs S-N curve statistics from digitalmodel
- Updates Python module counts
- Imports BSEE production dashboards from worldenergydata
- Generates blog posts from documentation

## Configuration

- `config/keywords.yaml` - Keywords to track
- `config/content-sync.yaml` - Source paths and sync rules

## Outputs

- `reports/competitor-analysis/latest.html` - Latest competitor report
- `assets/data/statistics.json` - Updated site statistics
- `dist/demos/` - Synced demonstration files

## Cron Schedule

Daily at 6 AM local time:
```
0 6 * * * /mnt/github/workspace-hub/aceengineer-website/scripts/daily-update.sh
```

## Dependencies

```bash
pip install pyyaml requests beautifulsoup4
```

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.