# KJSEmbed and QSA

### Introduction

There are a lot of similarities between QSA and KJSEmbed, and this has led to some confusion. This document aims to shed some light on the differences between the two libraries.

### The Differences

- QSA has a nice built in script editor which kjsembed does not, but kjsembed can load designers ui files anyway and it would be easy to add.
- KJSEmbed has facilities for working with KActions and can even load them from XML files.
- KJSEmbed makes it easier to operate with Qt types than QSA. Take a look at the types documentation for more details.
- KJSEmbed has support for KDE specific types such as KURL. QSA does not support these types by default, but does provide facilities for adding support yourself.
- KJSEmbed can access the DOM from a KHTML part so it can work nicely with HTML and XML documents. Note that this binding is only available if the host application chooses to publish the DOM to the interpreter.
- KJSEmbed is LGPL while QAS is GPL.