Skip to content

Source tree

John O'Sullivan edited this page Oct 26, 2026 · 5 revisions

Some notes on the names and purposes of the NoDOM source tree folders. Yes, there's a node_modules subdir because emscripten invokes node as part of its build process. To get rid of pesky node.exe instances in your Windows process table taskkill /f /im node.exe

ND_HOME
¦   .gitignore
¦   .gitmodules
¦   LICENSE
¦   Makefile.duck_materialize
¦   Makefile.nodom
¦   Makefile.nodom_duck
¦   Makefile.nodom_func
¦   README.md
¦   requirements.txt  # python venv spec
¦       
+---bld  # bld is the target dir for all Makefiles ergo all emscripten build steps
¦       
+---cfg  # win32 binaries like breadboard.exe get config here
¦       add_config.json
¦       add_layout.ini
¦       bb_init_data.json
¦       exf_config.json
¦       exf_init_data.json
¦       exf_init_layout.json
¦       exf_layout.ini
¦       fin_config.json
¦       ssl_cert.pem
¦       ssl_key.pem
¦       test_add_server_data.json
¦       test_add_server_layout.json
¦       test_exf_server_data.json
¦       test_exf_server_layout.json
¦       test_ndf_import_data.json
¦       test_ndf_import_layout.json
¦       test_ndf_not_data.json
¦       test_ndf_not_layout.json
¦       test_qed_server_data.json
¦       test_qed_server_layout.json
¦       
+---dat
¦
+---lib  # "git submodule update --init --recursive" to populate
¦   +---fmt
¦   +---imgui 
¦   +---imgui_club
¦   +---implot
¦   +---websocketpp
¦                       
+---log
¦           
+---node_modules  # created by make as node is part of emscripten build process
¦                   
+---sh
¦       ndide.bat
¦       ndinit.bat
¦       ndlesm.bat
¦       ndroot.bat
¦       venv.bat
¦       venv.sh
¦       
+---src
¦   ¦   
¦   +---cpp # this is the core NoDOM impl both wasm and win32
¦   ¦   ¦   breadboard.rc
¦   ¦   ¦   breadboard.sln
¦   ¦   ¦   breadboard.vcxproj
¦   ¦   ¦   config.hpp
¦   ¦   ¦   context.hpp
¦   ¦   ¦   db_cache.hpp
¦   ¦   ¦   dl_cache.hpp
¦   ¦   ¦   dl_types.hpp
¦   ¦   ¦   ems_idb.hpp
¦   ¦   ¦   im_render.hpp
¦   ¦   ¦   json_ops.hpp
¦   ¦   ¦   locals.hpp
¦   ¦   ¦   logger.hpp
¦   ¦   ¦   lv_cache.hpp
¦   ¦   ¦   main_bb_duck.cpp
¦   ¦   ¦   main_ems_duck.cpp
¦   ¦   ¦   main_ndcc.cpp
¦   ¦   ¦   ndcc.rc
¦   ¦   ¦   ndcc.vcxproj
¦   ¦   ¦   nd_gui_utils.cpp
¦   ¦   ¦   nd_types.hpp
¦   ¦   ¦   nd_utils.cpp
¦   ¦   ¦   nlohmann.hpp
¦   ¦   ¦   perf.cpp
¦   ¦   ¦   resource.h
¦   ¦   ¦   static_strings.hpp
¦   ¦   ¦   ufuncs.hpp
¦   ¦   ¦   websock.hpp
¦   ¦   ¦   widgets.hpp
¦   ¦   ¦   
¦   ¦   +---Debug
¦   ¦   ¦                   
¦   ¦   +---Release
¦   ¦               
¦   +---py  # example server code
¦   ¦       add_server.py
¦   ¦       dev_server.py
¦   ¦       duck_server.py
¦   ¦       fin_server.py
¦   ¦       nd_consts.py
¦   ¦       nd_utils.py
¦   ¦       nd_web.py
¦   ¦       pq_server.py
¦   ¦       qed_server.py
¦   ¦
¦   +---web # shell HTML and nodom JS infra
¦           duck_module.js
¦           duck_test_query.html
¦           duck_test_scan.html
¦           favicon.ico
¦           incdec.js
¦           inject.html
¦           load_fonts.html
¦           noduck_module.js
¦           on_run_init.js
¦           shell_duck.html
¦           shell_incdec.html
¦           shell_materialize.html
¦           shell_minimal.html
¦           
+---test
¦   ¦                   
¦   +---unit
¦       +---cpp
¦       ¦   ¦   bulk_cache.cpp
¦       ¦   ¦   bulk_cache.vcxproj
¦       ¦   ¦   data_cache.cpp
¦       ¦   ¦   data_cache.vcxproj
¦       ¦   ¦   duck_materialize.cpp
¦       ¦   ¦   duck_varchar.cpp
¦       ¦   ¦   duck_varchar.vcxproj
¦       ¦   ¦   live_cache.cpp
¦       ¦   ¦   live_cache.vcxproj
¦       ¦   ¦   nodom_forth.cpp
¦       ¦   ¦   nodom_forth.vcxproj
¦       ¦   ¦   
¦       ¦   +---Debug
¦       ¦   ¦           
¦       ¦   +---Release
¦       ¦               
¦       +---js
¦               date_vector.test.js
¦               numeric_vector.test.js
¦               vector.test.js
¦               
+---venv

Clone this wiki locally