CalcNote es una aplicación de escritorio minimalista para Windows que permite a ingenieros y científicos escribir, ejecutar y documentar cálculos matemáticos de forma visual. Combina un editor de código Python con renderizado LaTeX profesional.
- 📝 Editor split-pane - Código a la izquierda, preview renderizado a la derecha
- 🧮 Renderizado LaTeX profesional - Ecuaciones hermosas con KaTeX
- ⚡ Ejecución Asíncrona - UI fluida que no se congela durante cálculos pesados
- 📊 Gráficos Integrados - Soporte para Matplotlib sin archivos temporales
- 🌐 Modo Offline - Funciona sin internet (assets locales)
- 🎯 Precisión Configurable - Control de decimales y notación científica
- 🐍 100% Python - Sin overhead de Jupyter, ejecución directa
- 🔢 4 modos de render - params, long, short, symbolic
- 📄 Interpolación Markdown - Variables dinámicas en texto
- 💾 Formato .calc - Guarda y abre documentos fácilmente
# Clonar repositorio
git clone https://github.com/user/calcnote.git
cd calcnote
# Instalar dependencias (con uv)
uv sync --all-extras
# O con pip
pip install -e ".[dev]"# Modo desarrollo
python -m calcnote
# O usando el script
python scripts/dev.pyCalcpad usa directivas %% para indicar cómo procesar cada bloque. Es importante cerrar cada bloque con %%end.
%%md
# Cálculo de Viga
Viga simplemente apoyada con carga distribuida.
%%end
%%render params
L = 5 # Longitud [m]
w = 10 # Carga [kN/m]
%%end
%%render
M_max = w * L**2 / 8
%%endVerificación de una zapata aislada con control de precisión y lógica condicional:
%%md
# Diseño de Zapata Aislada
Verificación de tensiones sobre el terreno.
%%end
%%render params
P = 1500 # Carga axial [kN]
sigma_adm = 250 # Tensión admisible [kPa]
L = 2.5 # Lado zapata [m]
%%end
%%render precision=2
A = L**2
sigma_act = P / A
%%end
%%code
if sigma_act <= sigma_adm:
check = "VERIFICA"
else:
check = "NO VERIFICA"
%%end
%%md
**Estado:** !{check} (Solicitación: !{sigma_act} kPa)
%%end| Directiva | Descripción |
|---|---|
%%render |
Renderiza a LaTeX. Soporta precision=N, sci_not |
%%render params |
Tabla de parámetros alineados |
%%render long |
Muestra pasos intermedios |
%%render short |
Solo resultado final |
%%render symbolic |
Solo expresión simbólica |
%%md |
Renderiza Markdown con interpolación !{var} |
%%code |
Ejecuta código Python sin renderizar |
%%hide |
Ejecuta pero oculta output |
%%tex |
LaTeX raw directo |
| Atajo | Acción |
|---|---|
Ctrl+Enter |
Ejecutar todo |
Ctrl+S |
Guardar |
Ctrl+O |
Abrir |
Ctrl+N |
Nuevo documento |
MIT License
- Python 3.11+ con PySide6 (Qt6)
- Motor LaTeX propio (
calcnote.latex_engine) - KaTeX para renderizado en navegador
- pyparsing para parsing de expresiones
Ver LATEX_ENGINE.md para detalles del motor de renderizado.