comparison mrjunejune/BUILD @ 264:04fee26ecce0

add authenticated JRPG conversation platform Add reusable auth/session storage, owned conversation recovery, guest quotas, admin workflows, URL-routed conversation UI, mobile frame support, and parallel browser acceptance. Co-authored-by: Copilot <[email protected]>
author MrJuneJune <me@mrjunejune.com>
date Fri, 07 Aug 2026 07:34:12 -0700
parents b401627fc49e
children 056790c4fb0d
comparison
equal deleted inserted replaced
263:ee04e4e69fed 264:04fee26ecce0
170 srcs = glob(["src/public/fonts/*"]), 170 srcs = glob(["src/public/fonts/*"]),
171 visibility = ["//visibility:public"], 171 visibility = ["//visibility:public"],
172 ) 172 )
173 173
174 filegroup( 174 filegroup(
175 name = "html_src_files",
176 srcs = glob(["src/**/*.html"]),
177 visibility = ["//mrjunejune/test:__pkg__"],
178 )
179
180 filegroup(
175 name = "src_files", 181 name = "src_files",
176 srcs = glob( 182 srcs = glob(
177 ["src/**"], 183 ["src/**"],
178 exclude = ["src/**/*.png"], 184 exclude = ["src/**/*.png"],
179 ) + [":react_pages", ":shared_js_non_public", ":shared_js_file", ":rich_editor_js", ":design_system_components", ":design_system_styles", ":icons", ":generated_public_webp", ":hlsjs_runtime"], 185 ) + [":react_pages", ":shared_js_non_public", ":shared_js_file", ":rich_editor_js", ":design_system_components", ":design_system_styles", ":icons", ":generated_public_webp", ":hlsjs_runtime"],
188 194
189 js_library( 195 js_library(
190 name = "hls_player_js", 196 name = "hls_player_js",
191 srcs = ["src/tools/hls_player/hls-player.js"], 197 srcs = ["src/tools/hls_player/hls-player.js"],
192 visibility = ["//mrjunejune/test:__pkg__"], 198 visibility = ["//mrjunejune/test:__pkg__"],
199 )
200
201 cc_library(
202 name = "template_renderer",
203 srcs = ["template_renderer.c"],
204 hdrs = ["template_renderer.h"],
205 deps = [
206 "//dowa:dowa",
207 "//seobeo:seobeo",
208 ],
209 visibility = [
210 "//mrjunejune:__pkg__",
211 "//mrjunejune/test:__pkg__",
212 ],
193 ) 213 )
194 214
195 cc_library( 215 cc_library(
196 name = "latex_renderer", 216 name = "latex_renderer",
197 srcs = ["latex_renderer.c"], 217 srcs = ["latex_renderer.c"],
220 cc_library( 240 cc_library(
221 name = "conversation_api", 241 name = "conversation_api",
222 srcs = ["conversation_api.c"], 242 srcs = ["conversation_api.c"],
223 hdrs = ["conversation_api.h"], 243 hdrs = ["conversation_api.h"],
224 deps = [ 244 deps = [
245 ":auth_api",
225 ":conversation_store", 246 ":conversation_store",
226 ":inference_bridge", 247 ":inference_bridge",
227 "//dowa:dowa", 248 "//auth:auth_store",
228 "//seobeo:seobeo", 249 "//dowa:dowa",
229 ], 250 "//seobeo:seobeo",
251 ],
252 linkopts = ["-lpthread"],
253 )
254
255 cc_library(
256 name = "admin_api",
257 srcs = ["admin_api.c"],
258 hdrs = ["admin_api.h"],
259 deps = [
260 ":auth_api",
261 ":template_renderer",
262 "//auth:auth_crypto",
263 "//auth:auth_store",
264 "//dowa:dowa",
265 "//seobeo:seobeo",
266 "@openssl//:crypto",
267 ],
268 visibility = ["//mrjunejune/test:__pkg__"],
269 )
270
271 # Same sources compiled with test-hook symbols exposed.
272 cc_library(
273 name = "admin_api_with_test_hooks",
274 srcs = ["admin_api.c"],
275 hdrs = ["admin_api.h"],
276 copts = ["-DADMIN_API_TEST_HOOKS"],
277 deps = [
278 ":auth_api_with_test_hooks",
279 ":template_renderer",
280 "//auth:auth_crypto",
281 "//auth:auth_store",
282 "//dowa:dowa",
283 "//seobeo:seobeo",
284 "@openssl//:crypto",
285 ],
286 linkopts = ["-lpthread"],
287 testonly = True,
288 visibility = ["//mrjunejune/test:__pkg__"],
289 )
290
291 cc_library(
292 name = "auth_api",
293 srcs = ["auth_api.c"],
294 hdrs = ["auth_api.h"],
295 deps = [
296 ":template_renderer",
297 "//auth:auth_crypto",
298 "//auth:auth_store",
299 "//dowa:dowa",
300 "//seobeo:seobeo",
301 "@openssl//:crypto",
302 ],
303 linkopts = ["-lpthread"],
304 visibility = ["//mrjunejune/test:__pkg__"],
305 )
306
307 # Same sources, compiled with test-hook symbols exposed.
308 cc_library(
309 name = "auth_api_with_test_hooks",
310 srcs = ["auth_api.c"],
311 hdrs = ["auth_api.h"],
312 copts = ["-DAUTH_API_TEST_HOOKS"],
313 deps = [
314 ":template_renderer",
315 "//auth:auth_crypto",
316 "//auth:auth_store",
317 "//dowa:dowa",
318 "//seobeo:seobeo",
319 "@openssl//:crypto",
320 ],
321 linkopts = ["-lpthread"],
322 testonly = True,
323 visibility = ["//mrjunejune/test:__pkg__"],
230 ) 324 )
231 325
232 cc_library( 326 cc_library(
233 name = "inference_bridge", 327 name = "inference_bridge",
234 srcs = ["inference_bridge.c"], 328 srcs = ["inference_bridge.c"],
263 # Server binary 357 # Server binary
264 cc_binary( 358 cc_binary(
265 name = "mrjunejune_server", 359 name = "mrjunejune_server",
266 srcs = ["main.c"], 360 srcs = ["main.c"],
267 deps = [ 361 deps = [
362 ":admin_api",
363 ":auth_api",
268 ":conversation_api", 364 ":conversation_api",
365 ":template_renderer",
269 "//seobeo:seobeo", 366 "//seobeo:seobeo",
270 "//markdown_converter:markdown_to_html_c", 367 "//markdown_converter:markdown_to_html_c",
271 "//s3:s3", 368 "//s3:s3",
272 "//deita:deita", 369 "//deita:deita",
273 ":latex_renderer", 370 ":latex_renderer",
371 "//auth:auth_crypto",
274 ], 372 ],
275 copts = ["-D_GNU_SOURCE"], 373 copts = ["-D_GNU_SOURCE"],
276 linkopts = ["-lpthread"], 374 linkopts = ["-lpthread"],
277 data = [ 375 data = [
278 ":src_files", 376 ":src_files",
279 ":config_file",
280 ":inference_runtime_data", 377 ":inference_runtime_data",
281 ":tectonic_runtime_data", 378 ":tectonic_runtime_data",
282 "//:env_file",
283 ], 379 ],
284 visibility = ["//mrjunejune/test:__pkg__"], 380 visibility = ["//mrjunejune/test:__pkg__"],
285 ) 381 )
286 382
287 # Debug build with verbose logging 383 # Debug build with verbose logging
288 cc_binary( 384 cc_binary(
289 name = "mrjunejune_server_debug", 385 name = "mrjunejune_server_debug",
290 srcs = ["main.c"], 386 srcs = ["main.c"],
291 deps = [ 387 deps = [
388 ":admin_api",
389 ":auth_api",
292 ":conversation_api", 390 ":conversation_api",
391 ":template_renderer",
293 "//seobeo:seobeo_debug", 392 "//seobeo:seobeo_debug",
294 "//markdown_converter:markdown_to_html_c", 393 "//markdown_converter:markdown_to_html_c",
295 "//s3:s3", 394 "//s3:s3",
296 "//deita:deita", 395 "//deita:deita",
297 ":latex_renderer", 396 ":latex_renderer",
397 "//auth:auth_crypto",
298 ], 398 ],
299 copts = [ 399 copts = [
300 "-D_GNU_SOURCE", 400 "-D_GNU_SOURCE",
401 "-DMRJUNEJUNE_DEVELOPMENT_CONFIG",
301 ], 402 ],
302 linkopts = ["-lpthread"], 403 linkopts = ["-lpthread"],
303 data = [ 404 data = [
304 ":src_files_development", 405 ":src_files_development",
305 ":config_file", 406 ":config_file",