You can put math and HTML into notebooks directly with markdown cells. BeakerX also has an API for generation and display of multimedia content.
Latex('$\\alpha^2 + \\eta$')
HTML('<h1>Hello, world!</h1>')
new MIMEContainer('text/html', '<h1> Hello World!</h1>')
new MIMEContainer(MIMEContainer.MIME.TEXT_HTML, '<h1> Hello World!</h1>')
new MIMEContainer('text/latex', '$\\alpha^2 + \\eta$')
FileLinks("../groovy")
FileLink("PlotFeatures.ipynb")
Markdown("It's **very** easy to do **bold** and *italics*:")
Math('F(k) = \\int_{-\\infty}^{\\infty} f(x) e^{2\\pi i k} dx')
IFrame('http://jupyter.org/', '100%', 400)
ScribdDocument("71048089", width: '50%', height: 400, start_page: 5, view_mode: 'slideshow')
VimeoVideo("139304565", width: 400, height: 300)
YoutubeVideo("gSVvxOchT8Y", start: 1800, autoplay: 1, width: 800, height: 600)
Video('https://archive.org/download/Sita_Sings_the_Blues/Sita_Sings_the_Blues_small.mp4')
SVG("https://dev.w3.org/SVG/tools/svgweb/samples/svg-files/car.svg")
SVG("../resources/img/atom.svg")
Image("http://beakerx.com/static/img/twosigma.png")
Image("../resources/img/widgetArch.png")
import java.nio.file.Files;
import java.nio.file.Paths;
import java.nio.file.Path;
Path path = Paths.get("../resources/img/widgetArch.png");
byte[] bytes = Files.readAllBytes(path);
Image(bytes)
import java.awt.image.BufferedImage
bi = new BufferedImage(256, 80, BufferedImage.TYPE_INT_ARGB)
g = bi.getGraphics()
g.setColor(java.awt.Color.BLUE.darker())
g.fillRoundRect(10, 10, 246, 70, 10, 10)
g.setColor(java.awt.Color.YELLOW)
g.setFont(new java.awt.Font("monospaced", java.awt.Font.BOLD, 30))
g.drawString("Hello world!", 30, 55)
g.drawLine(30, 60, 246, 60)
g.dispose()
Image(bi)