You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
-**Schema Management:** Select predefined schemas or upload custom JSON schemas.
17
+
-**Live Validation:** Real-time validation using Ajv, with errors/warnings shown per row/value.
18
+
-**Detailed Results:** Errors and warnings are clearly displayed, with row numbers and schema paths.
19
+
-**Save & Download:** Download your edited CSV at any time.
20
+
-**Auto Re-validation:** CSV is automatically re-validated shortly after edits are made in the editor.
21
+
-**Human-Readable Schema Docs:** View a Markdown-rendered, human-friendly version of the selected schema.
22
+
-**Responsive UI:** Smoothly resizing panels with light/dark mode support.
23
+
-**Automated Checks:** Robust CI/CD pipeline with linting, testing (unit & E2E), and security scans.
24
24
25
25
---
26
26
27
27
## 🚀 Getting Started
28
28
29
29
**Prerequisites:**
30
30
31
-
* Node.js (v18+ recommended)
32
-
* pnpm (or npm/yarn)
31
+
- Node.js (v18+ recommended)
32
+
- pnpm (or npm/yarn)
33
33
34
34
**Installation & Running Locally:**
35
35
@@ -59,9 +59,9 @@ pnpm dev
59
59
60
60
### Managing Local Schemas
61
61
62
-
***Location:** Predefined schemas are located in the `schemas/v1/` directory.
63
-
***Adding New Schemas:** To add your own schema for local validation, simply place your `.json` schema file inside the `schemas/v1/` directory. The application will automatically pick it up and list it in the schema selection dropdown after a refresh.
64
-
***Schema Naming:** Ensure your schema file has a `.json` extension.
62
+
-**Location:** Predefined schemas are located in the `schemas/v1/` directory.
63
+
-**Adding New Schemas:** To add your own schema for local validation, simply place your `.json` schema file inside the `schemas/v1/` directory. The application will automatically pick it up and list it in the schema selection dropdown after a refresh.
64
+
-**Schema Naming:** Ensure your schema file has a `.json` extension.
65
65
66
66
---
67
67
@@ -72,58 +72,56 @@ This project uses a layered approach for quality assurance:
72
72
<details>
73
73
<summary><strong>Automated Checks Workflow (Click to Expand)</strong></summary>
74
74
75
-
***Pre-Commit (`lint-staged`):**
76
-
**Purpose:* Auto-formats and fixes basic lint errors on staged files.
77
-
**Benefit:* Ensures clean commit history; fast feedback.
78
-
***Pre-Push (`husky`):**
79
-
**Purpose:* Local safeguard checking lint, types (`tsc --noEmit`), and unit tests (`pnpm test:unit`) on the entire code being pushed.
80
-
**Benefit:* Prevents pushing broken code; catches issues missed by pre-commit.
81
-
***CI (`GitHub Actions`):**
82
-
**Purpose:* Definitive quality gate (lint, all tests, build, security scans) in a clean environment.
-_Purpose:_ Auto-formats and fixes basic lint errors on staged files.
77
+
-_Benefit:_ Ensures clean commit history; fast feedback.
78
+
-**Pre-Push (`husky`):**
79
+
-_Purpose:_ Local safeguard checking lint, types (`tsc --noEmit`), and unit tests (`pnpm test:unit`) on the entire code being pushed.
80
+
-_Benefit:_ Prevents pushing broken code; catches issues missed by pre-commit.
81
+
-**CI (`GitHub Actions`):**\*_Purpose:_ Definitive quality gate (lint, all tests, build, security scans) in a clean environment. \*_Benefit:_ Ensures merged code meets all standards; catches anything missed locally.
84
82
</details>
85
83
86
84
**Manual Checks:**
87
85
88
-
```sh
86
+
```sh
89
87
# Lint check
90
-
pnpm lint
88
+
pnpm lint
91
89
92
90
# Format check (Prettier)
93
-
pnpm format --check
91
+
pnpm format --check
94
92
95
93
# Run unit tests
96
-
pnpm test:unit
94
+
pnpm test:unit
97
95
98
96
# Run all tests (unit + integration)
99
-
pnpm test
97
+
pnpm test
100
98
101
99
# Run E2E tests (Playwright)
102
-
pnpm e2e
103
-
```
100
+
pnpm e2e
101
+
```
104
102
105
103
---
106
104
107
105
## ⚙️ CI/CD & Deployment
108
106
109
-
***CI (`.github/workflows/CI.yml`):** Runs automatically on pushes/PRs to `main` and `develop`. Includes lint, format check, full tests (`pnpm test`), build, and E2E tests.
***CD (`.github/workflows/CD.yml`):** Deploys the static export to GitHub Pages from the `main` branch.
112
-
***Static Export:** Generated via `pnpm build && pnpm run export` (outputs to `./out`).
113
-
***GitHub Pages:** Configure repo settings to serve from the `gh-pages` branch.
107
+
-**CI (`.github/workflows/CI.yml`):** Runs automatically on pushes/PRs to `main` and `develop`. Includes lint, format check, full tests (`pnpm test`), build, and E2E tests.
0 commit comments