uusi projekti

This commit is contained in:
Jaakko Vanhala
2026-04-12 10:28:57 +03:00
parent 094b183c17
commit 2f140c8a15
16 changed files with 521 additions and 102 deletions

View File

@@ -4,6 +4,13 @@ set -e
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
echo "=== Kipinä Studio Local Development ==="
# Tapetaan vanhat prosessit portissa 3000
if lsof -ti:3000 >/dev/null 2>&1; then
echo "[0] Tapetaan vanhat prosessit portissa 3000..."
lsof -ti:3000 | xargs kill -9 2>/dev/null || true
sleep 1
fi
# Frontend
echo "[1/3] Rakennetaan frontend..."
cd "$SCRIPT_DIR/frontend"
@@ -12,18 +19,32 @@ npm run build --silent 2>&1 | tail -1
# Hub
echo "[2/3] Käynnistetään hub..."
cd "$SCRIPT_DIR/hub"
cargo run &
cd "$SCRIPT_DIR"
STATIC_DIR="$SCRIPT_DIR/frontend/dist" cargo run -p hub &
HUB_PID=$!
sleep 3
sleep 2
# Native-node (jos Ollama on käynnissä)
if curl -s http://localhost:11434/api/tags >/dev/null 2>&1; then
echo "[3/3] Ollama löytyi — käynnistetään native-node..."
cd "$SCRIPT_DIR/native-node"
HUB_URL=ws://localhost:3000/ws cargo run --no-default-features &
NODE_PID=$!
echo " Native-node PID: $NODE_PID"
# Valitaan automaattisesti ensimmäinen qwen-coder -malli
MODEL=$(curl -s http://localhost:11434/api/tags | python3 -c "
import sys, json
models = json.load(sys.stdin).get('models', [])
for m in models:
if 'coder' in m['name']:
print(m['name']); break
else:
if models: print(models[0]['name'])
" 2>/dev/null)
if [ -n "$MODEL" ]; then
echo "[3/3] Ollama löytyi — käynnistetään native-node (malli: $MODEL)..."
HUB_URL=ws://localhost:3000/ws OLLAMA_MODEL="$MODEL" cargo run -p native-node --no-default-features &
NODE_PID=$!
echo " Native-node PID: $NODE_PID"
else
echo "[3/3] Ollama käynnissä mutta ei malleja — asenna: ollama pull qwen2.5-coder:7b"
fi
else
echo "[3/3] Ollama ei käynnissä — käytetään selaimen Wasm-laskentaa"
echo " Nopeampi: ollama serve & ollama pull qwen2.5-coder:7b && ./local.sh"
@@ -33,5 +54,11 @@ echo ""
echo "=== http://localhost:3000 ==="
echo " Ctrl+C pysäyttää"
# Avataan selain
open http://localhost:3000 2>/dev/null || xdg-open http://localhost:3000 2>/dev/null || true
# Siivotaan lapset Ctrl+C:llä
trap 'echo ""; echo "Pysäytetään..."; kill $HUB_PID $NODE_PID 2>/dev/null; exit 0' INT TERM
# Odotetaan hub-prosessia
wait $HUB_PID