feat: add fullscreen TUI and project updates

- New TUI screens: Main Menu, Compile, Run, REPL, AI Generator, AI Settings, Help
- AI configuration persisted in ~/.config/cljnim/config.json
- Added illwill dependency for terminal UI
- Updated experiments, examples, docs, and core modules
This commit is contained in:
2026-05-09 01:53:23 +03:00
parent 2bc64eca22
commit ba0b300917
42 changed files with 3042 additions and 153 deletions
+35
View File
@@ -0,0 +1,35 @@
#!/bin/bash
set -e
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
CLJNIM="${SCRIPT_DIR}/../../cljnim"
LIB_PATH="${SCRIPT_DIR}/../../lib"
mkdir -p "${SCRIPT_DIR}/build"
echo "=== Step 1: Clojure → Nim ==="
"$CLJNIM" compile-lib \
"${SCRIPT_DIR}/examples/math.clj" \
"${SCRIPT_DIR}/build/math.nim"
echo "=== Step 2: Nim → WASM (via Emscripten) ==="
cd "$SCRIPT_DIR"
if ! command -v emcc &> /dev/null; then
echo "ERROR: Emscripten not found."
echo "Install: git clone https://github.com/emscripten-core/emsdk.git"
echo " ./emsdk install latest && ./emsdk activate latest"
exit 1
fi
emcc nim c --cc:clang \
--path:"$LIB_PATH" \
-d:emscripten -d:release \
--noMain \
-o:"build/math.js" \
"wasm_wrappers.nim"
echo "=== Step 3: Generated files ==="
ls -la "${SCRIPT_DIR}/build/"
echo ""
echo "Open ${SCRIPT_DIR}/www/index.html in a browser to test"