@archlast/server 0.1.7 → 0.1.8

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.
Files changed (54) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +99 -99
  3. package/dist/auth/better-auth-instance.d.ts +7 -11
  4. package/dist/auth/better-auth-instance.d.ts.map +1 -1
  5. package/dist/controllers/crud-generator.controller.js +123 -123
  6. package/dist/controllers/introspection.controller.d.ts +24 -0
  7. package/dist/controllers/introspection.controller.d.ts.map +1 -1
  8. package/dist/controllers/introspection.controller.js +17 -0
  9. package/dist/controllers/introspection.controller.js.map +1 -1
  10. package/dist/controllers/system.controller.d.ts +16 -0
  11. package/dist/controllers/system.controller.d.ts.map +1 -1
  12. package/dist/controllers/system.controller.js +28 -0
  13. package/dist/controllers/system.controller.js.map +1 -1
  14. package/dist/deployment/handler.d.ts.map +1 -1
  15. package/dist/deployment/handler.js +33 -6
  16. package/dist/deployment/handler.js.map +1 -1
  17. package/dist/http/router.d.ts +1 -0
  18. package/dist/http/router.d.ts.map +1 -1
  19. package/dist/http/router.js +14 -3
  20. package/dist/http/router.js.map +1 -1
  21. package/dist/http/server.d.ts.map +1 -1
  22. package/dist/http/server.js +22 -19
  23. package/dist/http/server.js.map +1 -1
  24. package/dist/schema/input-types.d.ts +1 -1
  25. package/dist/schema/input-types.d.ts.map +1 -1
  26. package/dist/schema/input-types.js +4 -3
  27. package/dist/schema/input-types.js.map +1 -1
  28. package/dist/schema/modifiers.d.ts +2 -1
  29. package/dist/schema/modifiers.d.ts.map +1 -1
  30. package/dist/schema/modifiers.js +41 -5
  31. package/dist/schema/modifiers.js.map +1 -1
  32. package/dist/schema/type-helpers.d.ts +35 -0
  33. package/dist/schema/type-helpers.d.ts.map +1 -1
  34. package/dist/schema/type-helpers.js +32 -21
  35. package/dist/schema/type-helpers.js.map +1 -1
  36. package/dist/schema/validators.d.ts +1 -1
  37. package/dist/schema/validators.d.ts.map +1 -1
  38. package/dist/schema/validators.js +27 -16
  39. package/dist/schema/validators.js.map +1 -1
  40. package/dist/services/admin/backup/SqliteGenerator.js +8 -8
  41. package/dist/services/introspection.service.d.ts.map +1 -1
  42. package/dist/services/introspection.service.js +6 -3
  43. package/dist/services/introspection.service.js.map +1 -1
  44. package/dist/services/system.service.d.ts +4 -0
  45. package/dist/services/system.service.d.ts.map +1 -1
  46. package/dist/services/system.service.js +42 -0
  47. package/dist/services/system.service.js.map +1 -1
  48. package/docker/README.md +10 -10
  49. package/package.json +210 -210
  50. package/templates/.env.example +55 -55
  51. package/templates/archlast.config.js +37 -37
  52. package/templates/docker-compose.dev.yml +8 -8
  53. package/templates/docker-compose.prod.yml +15 -15
  54. package/templates/docker-compose.yml +33 -33
package/docker/README.md CHANGED
@@ -1,11 +1,11 @@
1
- # Archlast Docker Assets
2
-
3
- This folder is reserved for Docker build assets distributed with the
4
- `@archlast/server` package. The production Dockerfile and s6 service
5
- definitions live in the repository root under `docker/`.
6
-
7
- If you are packaging a runtime image, use the root `docker/Dockerfile` and the
8
- service definitions in `docker/s6-rc.d/*`.
9
-
10
- For local runtime via the CLI, use the templates bundled in
1
+ # Archlast Docker Assets
2
+
3
+ This folder is reserved for Docker build assets distributed with the
4
+ `@archlast/server` package. The production Dockerfile and s6 service
5
+ definitions live in the repository root under `docker/`.
6
+
7
+ If you are packaging a runtime image, use the root `docker/Dockerfile` and the
8
+ service definitions in `docker/s6-rc.d/*`.
9
+
10
+ For local runtime via the CLI, use the templates bundled in
11
11
  `packages/server/templates/`.
package/package.json CHANGED
@@ -1,210 +1,210 @@
1
- {
2
- "name": "@archlast/server",
3
- "version": "0.1.7",
4
- "description": "Archlast server library exports and Docker templates",
5
- "license": "MIT",
6
- "repository": {
7
- "type": "git",
8
- "url": "https://github.com/algochad/archlast-sync.git"
9
- },
10
- "main": "./dist/index.js",
11
- "types": "./dist/index.d.ts",
12
- "exports": {
13
- ".": {
14
- "types": "./dist/index.d.ts",
15
- "import": "./dist/index.js",
16
- "default": "./dist/index.js"
17
- },
18
- "./functions/definition": {
19
- "types": "./dist/functions/definition.d.ts",
20
- "import": "./dist/functions/definition.js",
21
- "default": "./dist/functions/definition.js"
22
- },
23
- "./functions/types": {
24
- "types": "./dist/functions/types.d.ts",
25
- "import": "./dist/functions/types.js",
26
- "default": "./dist/functions/types.js"
27
- },
28
- "./schema/definition": {
29
- "types": "./dist/schema/definition.d.ts",
30
- "import": "./dist/schema/definition.js",
31
- "default": "./dist/schema/definition.js"
32
- },
33
- "./schema/validators": {
34
- "types": "./dist/schema/validators.d.ts",
35
- "import": "./dist/schema/validators.js",
36
- "default": "./dist/schema/validators.js"
37
- },
38
- "./db/interfaces": {
39
- "types": "./dist/db/interfaces.d.ts",
40
- "import": "./dist/db/interfaces.js",
41
- "default": "./dist/db/interfaces.js"
42
- },
43
- "./auth/interfaces": {
44
- "types": "./dist/auth/interfaces.d.ts",
45
- "import": "./dist/auth/interfaces.js",
46
- "default": "./dist/auth/interfaces.js"
47
- },
48
- "./repository/interfaces": {
49
- "types": "./dist/repository/interfaces.d.ts",
50
- "import": "./dist/repository/interfaces.js",
51
- "default": "./dist/repository/interfaces.js"
52
- },
53
- "./repository/factory": {
54
- "types": "./dist/repository/factory.d.ts",
55
- "import": "./dist/repository/factory.js",
56
- "default": "./dist/repository/factory.js"
57
- },
58
- "./jobs/scheduler": {
59
- "types": "./dist/jobs/scheduler.d.ts",
60
- "import": "./dist/jobs/scheduler.js",
61
- "default": "./dist/jobs/scheduler.js"
62
- },
63
- "./jobs/queue": {
64
- "types": "./dist/jobs/queue.d.ts",
65
- "import": "./dist/jobs/queue.js",
66
- "default": "./dist/jobs/queue.js"
67
- },
68
- "./jobs": {
69
- "types": "./dist/jobs/index.d.ts",
70
- "import": "./dist/jobs/index.js",
71
- "default": "./dist/jobs/index.js"
72
- },
73
- "./storage/types": {
74
- "types": "./dist/storage/types.d.ts",
75
- "import": "./dist/storage/types.js",
76
- "default": "./dist/storage/types.js"
77
- },
78
- "./logging/logger": {
79
- "types": "./dist/logging/logger.d.ts",
80
- "import": "./dist/logging/logger.js",
81
- "default": "./dist/logging/logger.js"
82
- },
83
- "./context": {
84
- "types": "./dist/context.d.ts",
85
- "import": "./dist/context.js",
86
- "default": "./dist/context.js"
87
- },
88
- "./jobs/scheduler-client": {
89
- "types": "./dist/jobs/scheduler.d.ts",
90
- "import": "./dist/jobs/scheduler.js",
91
- "default": "./dist/jobs/scheduler.js"
92
- },
93
- "./di/decorators": {
94
- "types": "./dist/di/decorators.d.ts",
95
- "import": "./dist/di/decorators.js",
96
- "default": "./dist/di/decorators.js"
97
- },
98
- "./di/container": {
99
- "types": "./dist/di/container.d.ts",
100
- "import": "./dist/di/container.js",
101
- "default": "./dist/di/container.js"
102
- },
103
- "./webhook/guard": {
104
- "types": "./dist/webhook/guard.d.ts",
105
- "import": "./dist/webhook/guard.js",
106
- "default": "./dist/webhook/guard.js"
107
- },
108
- "./webhook/verifier": {
109
- "types": "./dist/webhook/verifier.d.ts",
110
- "import": "./dist/webhook/verifier.js",
111
- "default": "./dist/webhook/verifier.js"
112
- },
113
- "./http/definition": {
114
- "types": "./dist/http/definition.d.ts",
115
- "import": "./dist/http/definition.js",
116
- "default": "./dist/http/definition.js"
117
- },
118
- "./http/router": {
119
- "types": "./dist/http/router.d.ts",
120
- "import": "./dist/http/router.js",
121
- "default": "./dist/http/router.js"
122
- },
123
- "./http": {
124
- "types": "./dist/http/index.d.ts",
125
- "import": "./dist/http/index.js",
126
- "default": "./dist/http/index.js"
127
- },
128
- "./webhook": {
129
- "types": "./dist/webhook/index.d.ts",
130
- "import": "./dist/webhook/index.js",
131
- "default": "./dist/webhook/index.js"
132
- },
133
- "./webhook/definition": {
134
- "types": "./dist/webhook/definition.d.ts",
135
- "import": "./dist/webhook/definition.js",
136
- "default": "./dist/webhook/definition.js"
137
- },
138
- "./docker": {
139
- "types": "./dist/docker/index.d.ts",
140
- "import": "./dist/docker/index.js",
141
- "default": "./dist/docker/index.js"
142
- }
143
- },
144
- "files": [
145
- "dist",
146
- "templates",
147
- "docker",
148
- "scripts/postinstall.js",
149
- "README.md",
150
- "LICENSE"
151
- ],
152
- "archlast": {
153
- "dockerImage": "algochad/archlast-server",
154
- "defaultTag": "latest",
155
- "minDockerVersion": "24.0.0"
156
- },
157
- "scripts": {
158
- "build": "bun run build:library && bun run build:startup",
159
- "build:library": "tsc",
160
- "build:startup": "bun build startup.ts --outdir dist --target node --format esm",
161
- "build:types": "tsc --emitDeclarationOnly --declaration",
162
- "typecheck": "tsc --noEmit",
163
- "start": "bun dist/startup.js",
164
- "dev": "bun startup.ts",
165
- "postinstall": "node scripts/postinstall.js",
166
- "test": "bun test tests",
167
- "test:cache": "bun test tests/cache",
168
- "test:repository": "bun test tests/repository",
169
- "test:ipc": "bun test tests/ipc",
170
- "test:jobs": "bun test tests/jobs",
171
- "format": "prettier --write \"**/*.{ts,tsx,js,jsx,json,md}\"",
172
- "format:check": "prettier --check \"**/*.{ts,tsx,js,jsx,json,md}\"",
173
- "clean": "rm -rf dist"
174
- },
175
- "dependencies": {
176
- "@elysiajs/cors": "^1.4.0",
177
- "@elysiajs/swagger": "^1.3.1",
178
- "@paralleldrive/cuid2": "^3.0.4",
179
- "@react-email/components": "^1.0.2",
180
- "@trpc/server": "^11.8.1",
181
- "archiver": "^7.0.1",
182
- "better-auth": "^1.0.0",
183
- "better-sqlite3": "^12.5.0",
184
- "elysia": "^1.4.19",
185
- "jose": "^6.1.3",
186
- "linqts": "^3.2.0",
187
- "nodemailer": "^7.0.12",
188
- "otpauth": "^9.4.1",
189
- "react": "^19.2.3",
190
- "react-dom": "^19.2.3",
191
- "react-email": "^5.1.0",
192
- "reflect-metadata": "^0.2.2",
193
- "safe-memory-cache": "^3.0.0",
194
- "stream-json": "^1.9.1",
195
- "unzipper": "^0.12.3",
196
- "vitest": "^4.0.16",
197
- "zod": "^4.2.1"
198
- },
199
- "devDependencies": {
200
- "@types/archiver": "^7.0.0",
201
- "@types/better-sqlite3": "^7.6.13",
202
- "@types/bun": "latest",
203
- "@types/nodemailer": "^7.0.4",
204
- "@types/react": "^19.0.0",
205
- "@types/react-dom": "^19.0.0",
206
- "@types/unzipper": "^0.10.11",
207
- "ts-morph": "^27.0.2",
208
- "typescript": "^5.0.0"
209
- }
210
- }
1
+ {
2
+ "name": "@archlast/server",
3
+ "version": "0.1.8",
4
+ "description": "Archlast server library exports and Docker templates",
5
+ "license": "MIT",
6
+ "repository": {
7
+ "type": "git",
8
+ "url": "https://github.com/algochad/archlast-sync.git"
9
+ },
10
+ "main": "./dist/index.js",
11
+ "types": "./dist/index.d.ts",
12
+ "exports": {
13
+ ".": {
14
+ "types": "./dist/index.d.ts",
15
+ "import": "./dist/index.js",
16
+ "default": "./dist/index.js"
17
+ },
18
+ "./functions/definition": {
19
+ "types": "./dist/functions/definition.d.ts",
20
+ "import": "./dist/functions/definition.js",
21
+ "default": "./dist/functions/definition.js"
22
+ },
23
+ "./functions/types": {
24
+ "types": "./dist/functions/types.d.ts",
25
+ "import": "./dist/functions/types.js",
26
+ "default": "./dist/functions/types.js"
27
+ },
28
+ "./schema/definition": {
29
+ "types": "./dist/schema/definition.d.ts",
30
+ "import": "./dist/schema/definition.js",
31
+ "default": "./dist/schema/definition.js"
32
+ },
33
+ "./schema/validators": {
34
+ "types": "./dist/schema/validators.d.ts",
35
+ "import": "./dist/schema/validators.js",
36
+ "default": "./dist/schema/validators.js"
37
+ },
38
+ "./db/interfaces": {
39
+ "types": "./dist/db/interfaces.d.ts",
40
+ "import": "./dist/db/interfaces.js",
41
+ "default": "./dist/db/interfaces.js"
42
+ },
43
+ "./auth/interfaces": {
44
+ "types": "./dist/auth/interfaces.d.ts",
45
+ "import": "./dist/auth/interfaces.js",
46
+ "default": "./dist/auth/interfaces.js"
47
+ },
48
+ "./repository/interfaces": {
49
+ "types": "./dist/repository/interfaces.d.ts",
50
+ "import": "./dist/repository/interfaces.js",
51
+ "default": "./dist/repository/interfaces.js"
52
+ },
53
+ "./repository/factory": {
54
+ "types": "./dist/repository/factory.d.ts",
55
+ "import": "./dist/repository/factory.js",
56
+ "default": "./dist/repository/factory.js"
57
+ },
58
+ "./jobs/scheduler": {
59
+ "types": "./dist/jobs/scheduler.d.ts",
60
+ "import": "./dist/jobs/scheduler.js",
61
+ "default": "./dist/jobs/scheduler.js"
62
+ },
63
+ "./jobs/queue": {
64
+ "types": "./dist/jobs/queue.d.ts",
65
+ "import": "./dist/jobs/queue.js",
66
+ "default": "./dist/jobs/queue.js"
67
+ },
68
+ "./jobs": {
69
+ "types": "./dist/jobs/index.d.ts",
70
+ "import": "./dist/jobs/index.js",
71
+ "default": "./dist/jobs/index.js"
72
+ },
73
+ "./storage/types": {
74
+ "types": "./dist/storage/types.d.ts",
75
+ "import": "./dist/storage/types.js",
76
+ "default": "./dist/storage/types.js"
77
+ },
78
+ "./logging/logger": {
79
+ "types": "./dist/logging/logger.d.ts",
80
+ "import": "./dist/logging/logger.js",
81
+ "default": "./dist/logging/logger.js"
82
+ },
83
+ "./context": {
84
+ "types": "./dist/context.d.ts",
85
+ "import": "./dist/context.js",
86
+ "default": "./dist/context.js"
87
+ },
88
+ "./jobs/scheduler-client": {
89
+ "types": "./dist/jobs/scheduler.d.ts",
90
+ "import": "./dist/jobs/scheduler.js",
91
+ "default": "./dist/jobs/scheduler.js"
92
+ },
93
+ "./di/decorators": {
94
+ "types": "./dist/di/decorators.d.ts",
95
+ "import": "./dist/di/decorators.js",
96
+ "default": "./dist/di/decorators.js"
97
+ },
98
+ "./di/container": {
99
+ "types": "./dist/di/container.d.ts",
100
+ "import": "./dist/di/container.js",
101
+ "default": "./dist/di/container.js"
102
+ },
103
+ "./webhook/guard": {
104
+ "types": "./dist/webhook/guard.d.ts",
105
+ "import": "./dist/webhook/guard.js",
106
+ "default": "./dist/webhook/guard.js"
107
+ },
108
+ "./webhook/verifier": {
109
+ "types": "./dist/webhook/verifier.d.ts",
110
+ "import": "./dist/webhook/verifier.js",
111
+ "default": "./dist/webhook/verifier.js"
112
+ },
113
+ "./http/definition": {
114
+ "types": "./dist/http/definition.d.ts",
115
+ "import": "./dist/http/definition.js",
116
+ "default": "./dist/http/definition.js"
117
+ },
118
+ "./http/router": {
119
+ "types": "./dist/http/router.d.ts",
120
+ "import": "./dist/http/router.js",
121
+ "default": "./dist/http/router.js"
122
+ },
123
+ "./http": {
124
+ "types": "./dist/http/index.d.ts",
125
+ "import": "./dist/http/index.js",
126
+ "default": "./dist/http/index.js"
127
+ },
128
+ "./webhook": {
129
+ "types": "./dist/webhook/index.d.ts",
130
+ "import": "./dist/webhook/index.js",
131
+ "default": "./dist/webhook/index.js"
132
+ },
133
+ "./webhook/definition": {
134
+ "types": "./dist/webhook/definition.d.ts",
135
+ "import": "./dist/webhook/definition.js",
136
+ "default": "./dist/webhook/definition.js"
137
+ },
138
+ "./docker": {
139
+ "types": "./dist/docker/index.d.ts",
140
+ "import": "./dist/docker/index.js",
141
+ "default": "./dist/docker/index.js"
142
+ }
143
+ },
144
+ "files": [
145
+ "dist",
146
+ "templates",
147
+ "docker",
148
+ "scripts/postinstall.js",
149
+ "README.md",
150
+ "LICENSE"
151
+ ],
152
+ "archlast": {
153
+ "dockerImage": "algochad/archlast-server",
154
+ "defaultTag": "latest",
155
+ "minDockerVersion": "24.0.0"
156
+ },
157
+ "scripts": {
158
+ "build": "bun run build:library && bun run build:startup",
159
+ "build:library": "tsc",
160
+ "build:startup": "bun build startup.ts --outdir dist --target node --format esm",
161
+ "build:types": "tsc --emitDeclarationOnly --declaration",
162
+ "typecheck": "tsc --noEmit",
163
+ "start": "bun dist/startup.js",
164
+ "dev": "bun startup.ts",
165
+ "postinstall": "node scripts/postinstall.js",
166
+ "test": "bun test tests",
167
+ "test:cache": "bun test tests/cache",
168
+ "test:repository": "bun test tests/repository",
169
+ "test:ipc": "bun test tests/ipc",
170
+ "test:jobs": "bun test tests/jobs",
171
+ "format": "prettier --write \"**/*.{ts,tsx,js,jsx,json,md}\"",
172
+ "format:check": "prettier --check \"**/*.{ts,tsx,js,jsx,json,md}\"",
173
+ "clean": "rm -rf dist"
174
+ },
175
+ "dependencies": {
176
+ "@elysiajs/cors": "^1.4.0",
177
+ "@elysiajs/swagger": "^1.3.1",
178
+ "@paralleldrive/cuid2": "^3.0.4",
179
+ "@react-email/components": "^1.0.2",
180
+ "@trpc/server": "^11.8.1",
181
+ "archiver": "^7.0.1",
182
+ "better-auth": "^1.0.0",
183
+ "better-sqlite3": "^12.5.0",
184
+ "elysia": "^1.4.19",
185
+ "jose": "^6.1.3",
186
+ "linqts": "^3.2.0",
187
+ "nodemailer": "^7.0.12",
188
+ "otpauth": "^9.4.1",
189
+ "react": "^19.2.3",
190
+ "react-dom": "^19.2.3",
191
+ "react-email": "^5.1.0",
192
+ "reflect-metadata": "^0.2.2",
193
+ "safe-memory-cache": "^3.0.0",
194
+ "stream-json": "^1.9.1",
195
+ "unzipper": "^0.12.3",
196
+ "vitest": "^4.0.16",
197
+ "zod": "^4.2.1"
198
+ },
199
+ "devDependencies": {
200
+ "@types/archiver": "^7.0.0",
201
+ "@types/better-sqlite3": "^7.6.13",
202
+ "@types/bun": "latest",
203
+ "@types/nodemailer": "^7.0.4",
204
+ "@types/react": "^19.0.0",
205
+ "@types/react-dom": "^19.0.0",
206
+ "@types/unzipper": "^0.10.11",
207
+ "ts-morph": "^27.0.2",
208
+ "typescript": "^5.0.0"
209
+ }
210
+ }
@@ -1,55 +1,55 @@
1
- # Archlast Docker runtime configuration
2
-
3
- # Server
4
- PORT=4000
5
- ARCHLAST_PORT=4000
6
- NODE_ENV=development
7
-
8
- # CORS
9
- ARCHLAST_ALLOWED_ORIGINS=http://localhost:3000,http://localhost:3001,http://localhost:4001
10
- ARCHLAST_CORS_ALLOW_CREDENTIALS=true
11
-
12
- # Data root
13
- ARCHLAST_DB_ROOT=/data
14
- STORAGE_ROOT=/data/storage
15
- STORAGE_SIGNING_SECRET=dev-secret
16
-
17
- # Document store connection
18
- ARCHLAST_STORE_HOST=127.0.0.1
19
- ARCHLAST_STORE_PORT=7001
20
- ARCHLAST_STORE_SECRET=
21
- ARCHLAST_STORE_FINGERPRINT=
22
- ARCHLAST_STORE_CA_PATH=
23
- ARCHLAST_STORE_NO_TLS=false
24
- ARCHLAST_STORE_AUTH_TIMEOUT=2000
25
-
26
- # Dashboard
27
- ARCHLAST_DASHBOARD_PORT=4001
28
- ARCHLAST_DASHBOARD_URL=
29
-
30
- # Admin authentication
31
- ARCHLAST_ADMIN_TOKEN=
32
- ARCHLAST_ADMIN_USERNAME=admin
33
- ARCHLAST_ADMIN_PASSWORD=change-me
34
- ARCHLAST_PROVISIONING_SECRET=
35
-
36
- # Auth system
37
- ARCHLAST_AUTH_TOKEN_PEPPER=
38
-
39
- # S3 storage (optional)
40
- S3_ENABLED=false
41
- S3_BUCKET=
42
- S3_REGION=
43
- AWS_ACCESS_KEY_ID=
44
- AWS_SECRET_ACCESS_KEY=
45
-
46
- # Deploy authentication
47
- ARCHLAST_DEPLOY_AUTH_REQUIRED=false
48
-
49
- # Development
50
- IS_DEV=true
51
-
52
- # Docker metadata
53
- ARCHLAST_VERSION=latest
54
- ARCHLAST_CONTAINER_NAME=archlast-server
55
- ARCHLAST_DATA_VOLUME=archlast-data
1
+ # Archlast Docker runtime configuration
2
+
3
+ # Server
4
+ PORT=4000
5
+ ARCHLAST_PORT=4000
6
+ NODE_ENV=development
7
+
8
+ # CORS
9
+ ARCHLAST_ALLOWED_ORIGINS=http://localhost:3000,http://localhost:3001,http://localhost:4001
10
+ ARCHLAST_CORS_ALLOW_CREDENTIALS=true
11
+
12
+ # Data root
13
+ ARCHLAST_DB_ROOT=/data
14
+ STORAGE_ROOT=/data/storage
15
+ STORAGE_SIGNING_SECRET=dev-secret
16
+
17
+ # Document store connection
18
+ ARCHLAST_STORE_HOST=127.0.0.1
19
+ ARCHLAST_STORE_PORT=7001
20
+ ARCHLAST_STORE_SECRET=
21
+ ARCHLAST_STORE_FINGERPRINT=
22
+ ARCHLAST_STORE_CA_PATH=
23
+ ARCHLAST_STORE_NO_TLS=false
24
+ ARCHLAST_STORE_AUTH_TIMEOUT=2000
25
+
26
+ # Dashboard
27
+ ARCHLAST_DASHBOARD_PORT=4001
28
+ ARCHLAST_DASHBOARD_URL=
29
+
30
+ # Admin authentication
31
+ ARCHLAST_ADMIN_TOKEN=
32
+ ARCHLAST_ADMIN_USERNAME=admin
33
+ ARCHLAST_ADMIN_PASSWORD=change-me
34
+ ARCHLAST_PROVISIONING_SECRET=
35
+
36
+ # Auth system
37
+ ARCHLAST_AUTH_TOKEN_PEPPER=
38
+
39
+ # S3 storage (optional)
40
+ S3_ENABLED=false
41
+ S3_BUCKET=
42
+ S3_REGION=
43
+ AWS_ACCESS_KEY_ID=
44
+ AWS_SECRET_ACCESS_KEY=
45
+
46
+ # Deploy authentication
47
+ ARCHLAST_DEPLOY_AUTH_REQUIRED=false
48
+
49
+ # Development
50
+ IS_DEV=true
51
+
52
+ # Docker metadata
53
+ ARCHLAST_VERSION=latest
54
+ ARCHLAST_CONTAINER_NAME=archlast-server
55
+ ARCHLAST_DATA_VOLUME=archlast-data
@@ -1,37 +1,37 @@
1
- // Archlast configuration template.
2
- // Values here can be overridden by environment variables or CLI flags.
3
-
4
- module.exports = {
5
- server: {
6
- // Port for the Archlast HTTP API.
7
- port: 4000,
8
- },
9
- docker: {
10
- // Docker image to run.
11
- image: "algochad/archlast-server",
12
- tag: "latest",
13
- containerName: "archlast-server",
14
- volumeName: "archlast-data",
15
- restartOnDeploy: true,
16
- },
17
- paths: {
18
- // Local folders mounted into the container.
19
- config: ".archlast/config",
20
- deploy: ".archlast-deploy",
21
- },
22
- cors: {
23
- // Allowed origins for browser clients.
24
- origins: ["http://localhost:3000", "http://localhost:3001", "http://localhost:4001"],
25
- },
26
- env: {
27
- // Environment variables passed to the container.
28
- PORT: "4000",
29
- ARCHLAST_PORT: "4000",
30
- ARCHLAST_DB_ROOT: "/data",
31
- STORAGE_ROOT: "/data/storage",
32
- ARCHLAST_ALLOWED_ORIGINS: "http://localhost:3000,http://localhost:3001,http://localhost:4001",
33
- ARCHLAST_STORE_PORT: "7001",
34
- ARCHLAST_STORE_NO_TLS: "false",
35
- ARCHLAST_DASHBOARD_PORT: "4001",
36
- },
37
- };
1
+ // Archlast configuration template.
2
+ // Values here can be overridden by environment variables or CLI flags.
3
+
4
+ module.exports = {
5
+ server: {
6
+ // Port for the Archlast HTTP API.
7
+ port: 4000,
8
+ },
9
+ docker: {
10
+ // Docker image to run.
11
+ image: "algochad/archlast-server",
12
+ tag: "latest",
13
+ containerName: "archlast-server",
14
+ volumeName: "archlast-data",
15
+ restartOnDeploy: true,
16
+ },
17
+ paths: {
18
+ // Local folders mounted into the container.
19
+ config: ".archlast/config",
20
+ deploy: ".archlast-deploy",
21
+ },
22
+ cors: {
23
+ // Allowed origins for browser clients.
24
+ origins: ["http://localhost:3000", "http://localhost:3001", "http://localhost:4001"],
25
+ },
26
+ env: {
27
+ // Environment variables passed to the container.
28
+ PORT: "4000",
29
+ ARCHLAST_PORT: "4000",
30
+ ARCHLAST_DB_ROOT: "/data",
31
+ STORAGE_ROOT: "/data/storage",
32
+ ARCHLAST_ALLOWED_ORIGINS: "http://localhost:3000,http://localhost:3001,http://localhost:4001",
33
+ ARCHLAST_STORE_PORT: "7001",
34
+ ARCHLAST_STORE_NO_TLS: "false",
35
+ ARCHLAST_DASHBOARD_PORT: "4001",
36
+ },
37
+ };
@@ -1,8 +1,8 @@
1
- version: "3.8"
2
-
3
- services:
4
- archlast:
5
- environment:
6
- - NODE_ENV=development
7
- - IS_DEV=true
8
- - ARCHLAST_ALLOWED_ORIGINS=${ARCHLAST_ALLOWED_ORIGINS:-http://localhost:3000,http://localhost:3001,http://localhost:4001}
1
+ version: "3.8"
2
+
3
+ services:
4
+ archlast:
5
+ environment:
6
+ - NODE_ENV=development
7
+ - IS_DEV=true
8
+ - ARCHLAST_ALLOWED_ORIGINS=${ARCHLAST_ALLOWED_ORIGINS:-http://localhost:3000,http://localhost:3001,http://localhost:4001}