Aplicación web de calculadora científica construida con JavaScript puro, enfocada en arquitectura limpia, evaluación de expresiones matemáticas y experiencia de usuario moderna.
🔗 Live Demo
👉 https://calculadora-interactiva-js.infinityfreeapp.com/?i=1
- ⚙️ Evaluación de expresiones con Shunting-Yard Algorithm
- 🧮 Operaciones:
- Básicas (
+ − × ÷ %) - Avanzadas (
^, paréntesis)
- Básicas (
- 📐 Funciones científicas:
- Trigonométricas:
sin,cos,tan - Logarítmicas:
log,ln - Otras:
√,x²,xʸ,n!
- Trigonométricas:
- 🧠 Sistema de memoria (MC / MR / M+ / M−)
- 📜 Historial persistente (
localStorage) - 🌗 Dark / Light mode persistente
- 🔊 Feedback sonoro (Web Audio API)
- ♿ Accesibilidad (ARIA + navegación por teclado)
- ⌨️ Atajos de teclado completos
- 📱 UI totalmente responsive
- Tokenización
- Conversión infijo → RPN
- Evaluación mediante stack
- Estado centralizado sin frameworks
- Control de entrada, tokens y memoria
- Separación lógica/UI/eventos
- Delegación de eventos eficiente
- Render reactivo manual
.
├── index.html
├── styles.css
└── script.js
| Key | Action |
|---|---|
| 0–9 | Input digits |
| + − * / ^ | Operators |
| ( ) | Parentheses |
| Enter | Calculate |
| Esc | Clear |
| Backspace | Delete |
- HTML5
- CSS3
- Vanilla JavaScript
- Web Audio API
- LocalStorage / SessionStorage
Proyecto diseñado para demostrar:
- Implementación de algoritmos en frontend
- Manejo de estado sin frameworks
- Buenas prácticas en UX/UI
- Código escalable y mantenible en JS puro
- Modularización con ES Modules
- Tests unitarios (Jest / Vitest)
- Soporte para radianes
- Historial exportable
- PWA (offline support)
Michael Heredia
🔗 https://github.com/DmeshellHeredia
MIT License