import { OnboardingButtons, onboardingPaths, useDismiss, useNextClick } from '.' import { useStore } from '../../useStore' import { useBackdropHighlight } from 'hooks/useBackdropHighlight' export default function CodeEditor() { const { buttonDownInStream } = useStore((s) => ({ buttonDownInStream: s.buttonDownInStream, })) const dismiss = useDismiss() const next = useNextClick(onboardingPaths.PARAMETRIC_MODELING) return (

Editing code with kcl

The left pane is where you write your code. It's a code editor with syntax highlighting and autocompletion. We've decided to take the difficult route of writing our own language—called kcl —for describing geometry, because don't want to inherit all the other functionality from existing languages. We have a lot of ideas about how kcl will evolve, and we want to hear your thoughts on it.

We've built a language server for kcl that provides documentation and autocompletion automatically generated from our compiler code. You can try it out by hovering over some of the function names in the pane now. If you like using VSCode, you can try out our{' '} VSCode extension .

You can resize the pane by dragging the handle on the right, and you can collapse it by clicking the title bar or pressing{' '} Shift + C.

) }