diff --git a/website/src/pages/learn/xen.mdx b/website/src/pages/learn/xen.mdx
new file mode 100644
index 00000000..21db10eb
--- /dev/null
+++ b/website/src/pages/learn/xen.mdx
@@ -0,0 +1,64 @@
+---
+title: Xen Harmonic Functions
+layout: ../../layouts/MainLayout.astro
+---
+
+import { MiniRepl } from '../../docs/MiniRepl';
+import { JsDoc } from '../../docs/JsDoc';
+
+# Xen Harmonic Functions
+
+These functions allow the use of scales other than your typical chromatic 12 based ones.
+
+### tune(scale)
+
+
+
+Here's an example of how to configure a basic hexany scale:
+
+
+
+Try other scales like `hexany1`, `iraq`, `gumbeng`, `gunkali`, or `tranh3`
+
+For a full list of available scales from tunejs, see http://abbernie.github.io/tune/scales.html
+
+You can set your root to be a particular note with `getFreq`
+
+
+
+Some tunings become more pronounced with a longer reverb decay:
+
+ -".tune("gumbeng")
+ .mul(getFreq('c3'))
+ .freq().clip(.8).room("3:10").rdim(10000).rfade(5)`}
+/>
+
+Additionally, you can combo this with `fmap` so that the base note changes:
+
+".fmap(getFreq))
+ .freq().legato("2 .7").room("1:15").rdim(8500).rlp(14000).rfade(8)`}
+/>
+
+Combining this with various polyrhythm tricks can become very evocative:
+
+ ~ ~,<-4 -5>"
+ .transpose(4)
+ .tune("iraq")
+ .mul("".fmap(getFreq))
+ .freq().clip(.5).room(1).rfade(9)`}
+/>