mirror of
https://github.com/jhd3197/ServerKit.git
synced 2026-11-09 13:35:12 +09:00
Background safe update (Docker-correct, via wp_cli): record pre-update versions -> wp db export a DB snapshot (600s timeout via a new wp_cli timeout param so a large DB is never truncated; ABORTS if the snapshot fails) -> apply updates only to components with an available update minus an exclusion list -> a quiet, side-effect-free health probe (wp eval + HTTP probe; does NOT fire #27 alerts) -> if the update regressed a previously-healthy site, AUTO-ROLLBACK: version-pin each updated component back (--force --skip-plugins --skip-themes, so it runs even on a fatally-broken site) + re-import the snapshot -> re-check -> persist a WordPressUpdateRun report. The snapshot is kept for manual restore whenever the site does not end verified-healthy. A per-site cron schedule + exclusion list is driven by a new daemon-thread scheduler bounded by a concurrency semaphore (a shared 3am cron can't stampede the host). New model WordPressUpdateRun + auto_update_schedule/auto_update_exclude columns (Alembic 012). New Updates tab (run-now, schedule, exclusions, history). Also fixes a latent #26/#27 bug: EnvironmentHealthService.check_health returned 'unknown' for every production site (_get_compose_path needs a container_prefix they lack), making uptime/incidents/alerts inert for the primary site type — now falls back to the Application root_path compose. Deferred: staging-first promotion (needs a staging env + env-pipeline orchestration). Verified: backend py_compile, frontend lint-clean (full build was blocked only by a concurrent agent's in-progress AI import, not #29 code), 2-lens adversarial review (blockers fixed: production health gating, DB-import timeout; majors fixed: scheduler stampede, snapshot-abort). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
React Dashboard Template
A modern React dashboard application boilerplate built with Vite, featuring routing, charts, and a sidebar layout for building data-driven web interfaces.
Features
- React 18 with functional components and hooks
- Vite for fast development and building
- React Router for client-side routing
- Recharts for data visualization
- Lucide React for icons
- ESLint for code linting
- Responsive sidebar layout
- Dashboard page with sample components
Getting Started
Prerequisites
- Node.js 16+ and npm
Installation
- Clone or download this template
- Install dependencies:
npm install
Development
Start the development server:
npm run dev
The app will be available at http://localhost:41921.
Building for Production
Build the app for deployment:
npm run build
The output will be in the dist/ directory.
Preview Production Build
npm run preview
Project Structure
src/
├── App.jsx # Main app with routing
├── main.jsx # Entry point
├── index.css # Global styles
├── components/
│ └── Sidebar.jsx # Navigation sidebar
├── layouts/
│ └── DashboardLayout.jsx # Main layout wrapper
└── pages/
└── Dashboard.jsx # Main dashboard page
Customization
- Modify components in
src/components/ - Add new pages in
src/pages/ - Update routes in
App.jsx - Customize styles in
index.cssor component files
Environment Variables
Create a .env file in the root for environment variables:
VITE_API_URL=https://api.example.com
Access them in code via import.meta.env.VITE_API_URL.
Contributing
See the documentation files for AI agent permissions and guidelines.