archsync 1.0.0 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +67 -0
- package/dist/archsync.cjs +2 -0
- package/package.json +11 -7
- package/bin/cli.js +0 -91
- package/src/__tests__/e2e-workflow.test.js +0 -66
- package/src/__tests__/hashEngine.test.js +0 -109
- package/src/__tests__/impact.test.js +0 -137
- package/src/__tests__/parsers.test.js +0 -496
- package/src/__tests__/scan-pipeline.test.js +0 -332
- package/src/__tests__/schemaBuilder.test.js +0 -145
- package/src/__tests__/workspace.test.js +0 -178
- package/src/commands/backup.js +0 -54
- package/src/commands/connect.js +0 -129
- package/src/commands/diff.js +0 -228
- package/src/commands/export.js +0 -125
- package/src/commands/impactReport.js +0 -50
- package/src/commands/import.js +0 -126
- package/src/commands/init.js +0 -80
- package/src/commands/login.js +0 -116
- package/src/commands/plugin.js +0 -28
- package/src/commands/push.js +0 -194
- package/src/commands/register.js +0 -127
- package/src/commands/scan.js +0 -498
- package/src/commands/serve.js +0 -133
- package/src/commands/setup.js +0 -233
- package/src/commands/status.js +0 -56
- package/src/commands/validate.js +0 -245
- package/src/commands/watch.js +0 -70
- package/src/core/credentialStore.js +0 -76
- package/src/core/hashEngine.js +0 -34
- package/src/core/impactEngine.js +0 -192
- package/src/core/monorepoDetector.js +0 -41
- package/src/core/pluginManager.js +0 -40
- package/src/core/relationshipEngine.js +0 -917
- package/src/core/requestSigning.js +0 -16
- package/src/core/schemaBuilder.js +0 -230
- package/src/core/schemaDeduplicator.js +0 -54
- package/src/core/supabaseClient.js +0 -68
- package/src/core/workspaceDetector.js +0 -113
- package/src/parsers/astParser.js +0 -274
- package/src/parsers/configParser.js +0 -49
- package/src/parsers/dependencyGraph.js +0 -31
- package/src/parsers/flutterParser.js +0 -98
- package/src/parsers/goParser.js +0 -99
- package/src/parsers/index.js +0 -211
- package/src/parsers/javaParser.js +0 -89
- package/src/parsers/nodeParser.js +0 -429
- package/src/parsers/pythonParser.js +0 -109
- package/src/parsers/reactParser.js +0 -368
- package/src/parsers/smartComment.js +0 -144
package/README.md
ADDED
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# archsync
|
|
2
|
+
|
|
3
|
+
**ArchSync CLI** — scan your codebase, build a live architecture graph, and sync it to the ArchSync canvas. Runs entirely locally; your code never leaves your machine unless you explicitly push.
|
|
4
|
+
|
|
5
|
+
```bash
|
|
6
|
+
npm install -g archsync
|
|
7
|
+
# or zero-install:
|
|
8
|
+
npx archsync scan
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## What it does
|
|
12
|
+
|
|
13
|
+
ArchSync reads your source (JS/TS, Dart, Python, Go, Java, Kotlin), resolves imports and API calls across services, and produces a `.archsync-schema.json` describing your system's structure — modules, routes, controllers, services, models, and the relationships between them. You can review that file in normal pull requests, visualize it on the ArchSync canvas, or serve live source over a localhost-only bridge.
|
|
14
|
+
|
|
15
|
+
## Quickstart
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
# 1. Initialize ArchSync in your project (creates .archsync.json)
|
|
19
|
+
archsync init
|
|
20
|
+
|
|
21
|
+
# 2. Scan the codebase and build the schema
|
|
22
|
+
archsync scan
|
|
23
|
+
|
|
24
|
+
# 3. (optional) Push the schema to your Supabase so the canvas can read it
|
|
25
|
+
archsync push -b main
|
|
26
|
+
|
|
27
|
+
# 4. (optional) Serve live code to the canvas over a localhost bridge
|
|
28
|
+
archsync serve
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## Commands
|
|
32
|
+
|
|
33
|
+
| Command | What it does |
|
|
34
|
+
|---|---|
|
|
35
|
+
| `archsync init` | Set up ArchSync in the current project. |
|
|
36
|
+
| `archsync scan` | Scan source and write `.archsync-schema.json`. |
|
|
37
|
+
| `archsync push` | Push the local schema to your Supabase. |
|
|
38
|
+
| `archsync diff` | Show the diff between local and remote schema. |
|
|
39
|
+
| `archsync watch` | Watch for file changes and auto-sync. |
|
|
40
|
+
| `archsync status` | Show the current sync status. |
|
|
41
|
+
| `archsync serve` | Start the localhost-only code bridge (binds `127.0.0.1`, read-only). |
|
|
42
|
+
|
|
43
|
+
Run `archsync <command> --help` for options.
|
|
44
|
+
|
|
45
|
+
## Bring Your Own Database (BYODB)
|
|
46
|
+
|
|
47
|
+
ArchSync is storage-agnostic. Point the CLI at **your own** Supabase project and your architecture data never touches ArchSync servers. Configuration is read from, in order:
|
|
48
|
+
|
|
49
|
+
1. Environment variables — `ARCHSYNC_SUPABASE_URL` / `ARCHSYNC_SUPABASE_ANON_KEY`
|
|
50
|
+
2. The project's `.archsync.json` file (created by `archsync init`)
|
|
51
|
+
|
|
52
|
+
No credentials are bundled in this package. ArchSync only ever uses the URL and key you supply at runtime.
|
|
53
|
+
|
|
54
|
+
## Privacy
|
|
55
|
+
|
|
56
|
+
- Scanning is fully local — nothing is uploaded by `scan`.
|
|
57
|
+
- `archsync serve` binds strictly to `127.0.0.1`, is read-only, and only serves files present in the scanned schema.
|
|
58
|
+
- `archsync push` is the only command that sends data anywhere, and only to the database **you** configure.
|
|
59
|
+
|
|
60
|
+
## Links
|
|
61
|
+
|
|
62
|
+
- Repository: https://github.com/VivekParida/archsync
|
|
63
|
+
- Issues: https://github.com/VivekParida/archsync/issues
|
|
64
|
+
|
|
65
|
+
## License
|
|
66
|
+
|
|
67
|
+
Apache-2.0
|