cursorless
cursorless copied to clipboard
Separate Cursorless into multiple parts
The problem
The fact that all of the Cursorless code exists as part of the VSCode extension presents a few problems:
- It is difficult / impossible to do #435
- Other applications (eg https://github.com/david-tejada/rango) can't leverage our hat algorithms
- We can't easily share code with our docs site, which would enable one source of truth between docs and code
- We can't easily fake / mock pieces of VSCode to enable proper unit testing (today nearly all Cursorless tests are end-to-end)
The solution
We'd like to migrate to nx. We'll proceed as follows
- [ ] Superficial transformation where we convert Cursorless to an nx repo, but keep all of the extension code in a single nx app. Note that the current
cursorless-nxdirectory will become the root of the repo - [ ] Migrate the
websitedirectory to adocsnx app. Not sure exactly how to get docusaurus to work as an nx app - [ ] Migrate pieces of the Cursorless core to nx libraries as needed for using them in docs site or #435. Note that we'll rely on the abstractions introduced in https://github.com/cursorless-dev/cursorless/tree/main/src/ide to abstract away VSCode