feat: add documentation and code examples