cocoindex 0.2.21__tar.gz → 0.2.23__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (473) hide show
  1. {cocoindex-0.2.21 → cocoindex-0.2.23}/Cargo.lock +117 -1
  2. {cocoindex-0.2.21 → cocoindex-0.2.23}/Cargo.toml +3 -1
  3. {cocoindex-0.2.21 → cocoindex-0.2.23}/PKG-INFO +10 -1
  4. {cocoindex-0.2.21 → cocoindex-0.2.23}/README.md +9 -0
  5. {cocoindex-0.2.21 → cocoindex-0.2.23}/THIRD_PARTY_NOTICES.html +575 -38
  6. {cocoindex-0.2.21 → cocoindex-0.2.23}/dev/generate_cli_docs.py +9 -4
  7. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/core/cli-commands.md +27 -39
  8. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/core/data_types.mdx +96 -12
  9. cocoindex-0.2.21/docs/docs/examples/examples/docs_to_knowledge_graph.md → cocoindex-0.2.23/docs/docs/examples/examples/01_docs_to_knowledge_graph.md +6 -25
  10. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/getting_started/installation.md +11 -0
  11. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/sources/amazons3.md +38 -0
  12. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/targets/neo4j.md +11 -1
  13. cocoindex-0.2.23/docs/static/img/examples/docs_to_knowledge_graph/neo4j_browser.png +0 -0
  14. cocoindex-0.2.23/examples/hn_trending_topics/README.md +81 -0
  15. cocoindex-0.2.23/examples/hn_trending_topics/main.py +416 -0
  16. cocoindex-0.2.23/examples/hn_trending_topics/pyproject.toml +9 -0
  17. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/pdf_elements_embedding/fetch_manual_urls.sh +1 -1
  18. cocoindex-0.2.23/examples/product_recommendation/.env.example +4 -0
  19. cocoindex-0.2.23/examples/product_recommendation/.gitignore +1 -0
  20. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/cli.py +42 -29
  21. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/sources/_engine_builtin_specs.py +11 -0
  22. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/execution/indexing_status.rs +2 -4
  23. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/execution/live_updater.rs +59 -2
  24. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/llm/ollama.rs +11 -4
  25. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/sources/amazon_s3.rs +134 -19
  26. {cocoindex-0.2.21 → cocoindex-0.2.23}/.cargo/config.toml +0 -0
  27. {cocoindex-0.2.21 → cocoindex-0.2.23}/.env.lib_debug +0 -0
  28. {cocoindex-0.2.21 → cocoindex-0.2.23}/.github/ISSUE_TEMPLATE//360/237/220/233-bug-report.md" +0 -0
  29. {cocoindex-0.2.21 → cocoindex-0.2.23}/.github/ISSUE_TEMPLATE//360/237/222/241-feature-request.md" +0 -0
  30. {cocoindex-0.2.21 → cocoindex-0.2.23}/.github/SECURITY.md +0 -0
  31. {cocoindex-0.2.21 → cocoindex-0.2.23}/.github/scripts/update_version.sh +0 -0
  32. {cocoindex-0.2.21 → cocoindex-0.2.23}/.github/workflows/CI.yml +0 -0
  33. {cocoindex-0.2.21 → cocoindex-0.2.23}/.github/workflows/_docs_release.yml +0 -0
  34. {cocoindex-0.2.21 → cocoindex-0.2.23}/.github/workflows/_test.yml +0 -0
  35. {cocoindex-0.2.21 → cocoindex-0.2.23}/.github/workflows/docs_release.yml +0 -0
  36. {cocoindex-0.2.21 → cocoindex-0.2.23}/.github/workflows/docs_test.yml +0 -0
  37. {cocoindex-0.2.21 → cocoindex-0.2.23}/.github/workflows/format.yml +0 -0
  38. {cocoindex-0.2.21 → cocoindex-0.2.23}/.github/workflows/release.yml +0 -0
  39. {cocoindex-0.2.21 → cocoindex-0.2.23}/.gitignore +0 -0
  40. {cocoindex-0.2.21 → cocoindex-0.2.23}/.pre-commit-config.yaml +0 -0
  41. {cocoindex-0.2.21 → cocoindex-0.2.23}/CODE_OF_CONDUCT.md +0 -0
  42. {cocoindex-0.2.21 → cocoindex-0.2.23}/CONTRIBUTING.md +0 -0
  43. {cocoindex-0.2.21 → cocoindex-0.2.23}/LICENSE +0 -0
  44. {cocoindex-0.2.21 → cocoindex-0.2.23}/about.hbs +0 -0
  45. {cocoindex-0.2.21 → cocoindex-0.2.23}/about.toml +0 -0
  46. {cocoindex-0.2.21 → cocoindex-0.2.23}/dev/README.md +0 -0
  47. {cocoindex-0.2.21 → cocoindex-0.2.23}/dev/neo4j.yaml +0 -0
  48. {cocoindex-0.2.21 → cocoindex-0.2.23}/dev/postgres.yaml +0 -0
  49. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/.gitignore +0 -0
  50. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/README.md +0 -0
  51. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/about/community.md +0 -0
  52. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/ai/llm.mdx +0 -0
  53. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/contributing/guide.md +0 -0
  54. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/contributing/new_built_in_target.mdx +0 -0
  55. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/contributing/setup_dev_environment.md +0 -0
  56. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/core/basics.md +0 -0
  57. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/core/cli.mdx +0 -0
  58. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/core/data_example.svg +0 -0
  59. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/core/flow_def.mdx +0 -0
  60. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/core/flow_example.svg +0 -0
  61. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/core/flow_methods.mdx +0 -0
  62. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/core/settings.mdx +0 -0
  63. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/custom_ops/custom_functions.mdx +0 -0
  64. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/custom_ops/custom_sources.mdx +0 -0
  65. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/custom_ops/custom_targets.mdx +0 -0
  66. /cocoindex-0.2.21/docs/docs/examples/examples/codebase_index.md → /cocoindex-0.2.23/docs/docs/examples/examples/00_codebase_index.md +0 -0
  67. /cocoindex-0.2.21/docs/docs/examples/examples/academic_papers_index.md → /cocoindex-0.2.23/docs/docs/examples/examples/02_academic_papers_index.md +0 -0
  68. /cocoindex-0.2.21/docs/docs/examples/examples/postgres_source.md → /cocoindex-0.2.23/docs/docs/examples/examples/03_postgres_source.md +0 -0
  69. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/examples/examples/custom_targets.md +0 -0
  70. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/examples/examples/document_ai.md +0 -0
  71. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/examples/examples/image_search.md +0 -0
  72. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/examples/examples/manual_extraction.md +0 -0
  73. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/examples/examples/multi_format_index.md +0 -0
  74. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/examples/examples/patient_form_extraction.md +0 -0
  75. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/examples/examples/photo_search.md +0 -0
  76. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/examples/examples/product_recommendation.md +0 -0
  77. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/examples/examples/simple_vector_index.md +0 -0
  78. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/examples/index.md +0 -0
  79. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/getting_started/markdown_files.zip +0 -0
  80. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/getting_started/overview.md +0 -0
  81. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/getting_started/quickstart.md +0 -0
  82. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/ops/functions.md +0 -0
  83. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/query.mdx +0 -0
  84. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/sources/azureblob.md +0 -0
  85. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/sources/googledrive.md +0 -0
  86. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/sources/index.md +0 -0
  87. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/sources/localfile.md +0 -0
  88. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/sources/postgres.md +0 -0
  89. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/targets/index.md +0 -0
  90. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/targets/kuzu.md +0 -0
  91. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/targets/lancedb.md +0 -0
  92. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/targets/postgres.md +0 -0
  93. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/targets/qdrant.md +0 -0
  94. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/tutorials/live_updates.md +0 -0
  95. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docs/tutorials/manage_flow_dynamically.mdx +0 -0
  96. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/docusaurus.config.ts +0 -0
  97. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/package.json +0 -0
  98. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/sidebars.ts +0 -0
  99. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/src/components/GitHubButton/index.tsx +0 -0
  100. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/src/css/custom.css +0 -0
  101. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/src/theme/DocCard/index.tsx +0 -0
  102. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/src/theme/DocCard/styles.module.css +0 -0
  103. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/src/theme/DocCardList/index.tsx +0 -0
  104. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/src/theme/DocCardList/styles.module.css +0 -0
  105. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/src/theme/Root.js +0 -0
  106. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/.nojekyll +0 -0
  107. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/docusaurus.png +0 -0
  108. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/academic_papers_index/abstract_chunks.png +0 -0
  109. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/academic_papers_index/basic_info.png +0 -0
  110. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/academic_papers_index/chunk_embedding.png +0 -0
  111. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/academic_papers_index/cover.png +0 -0
  112. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/academic_papers_index/first_page.png +0 -0
  113. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/academic_papers_index/flow.png +0 -0
  114. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/academic_papers_index/metadata.png +0 -0
  115. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/codebase_index/chunk.png +0 -0
  116. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/codebase_index/cover.png +0 -0
  117. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/codebase_index/flow.png +0 -0
  118. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/custom_targets/convert.png +0 -0
  119. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/custom_targets/cover.png +0 -0
  120. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/docs_to_knowledge_graph/cover.png +0 -0
  121. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/docs_to_knowledge_graph/dedupe.png +0 -0
  122. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/docs_to_knowledge_graph/export_document.png +0 -0
  123. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/docs_to_knowledge_graph/export_relationship.png +0 -0
  124. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/docs_to_knowledge_graph/extract_relationship.png +0 -0
  125. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/docs_to_knowledge_graph/flow.png +0 -0
  126. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/docs_to_knowledge_graph/relationship.png +0 -0
  127. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/docs_to_knowledge_graph/summary.png +0 -0
  128. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/document_ai/cover.png +0 -0
  129. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/document_ai/document_ai.png +0 -0
  130. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/document_ai/processor.png +0 -0
  131. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/image_search/cover.png +0 -0
  132. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/image_search/embedding.png +0 -0
  133. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/image_search/flow.png +0 -0
  134. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/image_search/multi_modal_architecture.png +0 -0
  135. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/image_search/result.png +0 -0
  136. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/manual_extraction/cover.png +0 -0
  137. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/manual_extraction/extraction.png +0 -0
  138. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/manual_extraction/flow.png +0 -0
  139. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/manual_extraction/summary.png +0 -0
  140. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/multi_format_index/colpali_architecture.png +0 -0
  141. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/multi_format_index/cover.png +0 -0
  142. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/multi_format_index/embed.png +0 -0
  143. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/multi_format_index/flow.png +0 -0
  144. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/multi_format_index/pages.png +0 -0
  145. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/patient_form_extraction/cover.png +0 -0
  146. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/patient_form_extraction/extraction.png +0 -0
  147. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/patient_form_extraction/fields.png +0 -0
  148. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/patient_form_extraction/flow.png +0 -0
  149. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/patient_form_extraction/tomarkdown.png +0 -0
  150. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/photo_search/cover.png +0 -0
  151. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/photo_search/extraction.png +0 -0
  152. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/photo_search/flow.png +0 -0
  153. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/postgres_source/collector.png +0 -0
  154. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/postgres_source/cover.png +0 -0
  155. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/postgres_source/description.png +0 -0
  156. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/postgres_source/embed.png +0 -0
  157. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/postgres_source/flow.png +0 -0
  158. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/postgres_source/lineage.png +0 -0
  159. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/postgres_source/price.png +0 -0
  160. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/postgres_source/source.png +0 -0
  161. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/product_recommendation/cover.png +0 -0
  162. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/product_recommendation/dedupe.png +0 -0
  163. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/product_recommendation/export_all.png +0 -0
  164. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/product_recommendation/export_product.png +0 -0
  165. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/product_recommendation/export_taxonomy.png +0 -0
  166. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/product_recommendation/extract_product.png +0 -0
  167. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/product_recommendation/extract_taxonomy.png +0 -0
  168. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/product_recommendation/neo4j.png +0 -0
  169. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/product_recommendation/parse_json.png +0 -0
  170. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/product_recommendation/taxonomy.png +0 -0
  171. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/simple_vector_index/chunk.png +0 -0
  172. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/simple_vector_index/cover.png +0 -0
  173. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/simple_vector_index/embed.png +0 -0
  174. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/examples/simple_vector_index/flow.png +0 -0
  175. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/favicon.ico +0 -0
  176. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/icon.svg +0 -0
  177. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/img/incremental-etl.gif +0 -0
  178. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/static/robots.txt +0 -0
  179. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/tsconfig.json +0 -0
  180. {cocoindex-0.2.21 → cocoindex-0.2.23}/docs/yarn.lock +0 -0
  181. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/amazon_s3_embedding/.env.example +0 -0
  182. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/amazon_s3_embedding/.gitignore +0 -0
  183. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/amazon_s3_embedding/README.md +0 -0
  184. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/amazon_s3_embedding/main.py +0 -0
  185. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/amazon_s3_embedding/pyproject.toml +0 -0
  186. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/azure_blob_embedding/.env.example +0 -0
  187. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/azure_blob_embedding/.gitignore +0 -0
  188. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/azure_blob_embedding/README.md +0 -0
  189. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/azure_blob_embedding/main.py +0 -0
  190. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/azure_blob_embedding/pyproject.toml +0 -0
  191. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/code_embedding/.env +0 -0
  192. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/code_embedding/README.md +0 -0
  193. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/code_embedding/main.py +0 -0
  194. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/code_embedding/pyproject.toml +0 -0
  195. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/custom_output_files/.env +0 -0
  196. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/custom_output_files/.gitignore +0 -0
  197. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/custom_output_files/README.md +0 -0
  198. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/custom_output_files/data/bizarre_animals.md +0 -0
  199. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/custom_output_files/data/chunk_norris.md +0 -0
  200. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/custom_output_files/main.py +0 -0
  201. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/custom_output_files/pyproject.toml +0 -0
  202. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/custom_source_hn/.env +0 -0
  203. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/custom_source_hn/.env.example +0 -0
  204. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/custom_source_hn/README.md +0 -0
  205. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/custom_source_hn/main.py +0 -0
  206. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/custom_source_hn/pyproject.toml +0 -0
  207. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/docs_to_knowledge_graph/.env +0 -0
  208. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/docs_to_knowledge_graph/README.md +0 -0
  209. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/docs_to_knowledge_graph/main.py +0 -0
  210. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/docs_to_knowledge_graph/pyproject.toml +0 -0
  211. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/face_recognition/.env +0 -0
  212. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/face_recognition/README.md +0 -0
  213. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/face_recognition/images/Carter_welcomes_Reagan.jpg +0 -0
  214. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/face_recognition/images/Solvay_conference_1927.jpg +0 -0
  215. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/face_recognition/images/Steve_Jobs_and_Bill_Gates_(522695099).jpg +0 -0
  216. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/face_recognition/images/einplanck3.jpg +0 -0
  217. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/face_recognition/main.py +0 -0
  218. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/face_recognition/pyproject.toml +0 -0
  219. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/fastapi_server_docker/.dockerignore +0 -0
  220. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/fastapi_server_docker/.env +0 -0
  221. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/fastapi_server_docker/README.md +0 -0
  222. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/fastapi_server_docker/compose.yaml +0 -0
  223. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/fastapi_server_docker/dockerfile +0 -0
  224. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/fastapi_server_docker/files/1810.04805v2.md +0 -0
  225. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/fastapi_server_docker/main.py +0 -0
  226. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/fastapi_server_docker/requirements.txt +0 -0
  227. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/gdrive_text_embedding/.env.example +0 -0
  228. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/gdrive_text_embedding/.gitignore +0 -0
  229. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/gdrive_text_embedding/README.md +0 -0
  230. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/gdrive_text_embedding/main.py +0 -0
  231. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/gdrive_text_embedding/pyproject.toml +0 -0
  232. {cocoindex-0.2.21/examples/patient_intake_extraction → cocoindex-0.2.23/examples/hn_trending_topics}/.env.example +0 -0
  233. {cocoindex-0.2.21/examples/product_recommendation → cocoindex-0.2.23/examples/hn_trending_topics}/.gitignore +0 -0
  234. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/image_search/.env +0 -0
  235. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/image_search/README.md +0 -0
  236. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/image_search/colpali_main.py +0 -0
  237. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/image_search/frontend/.gitignore +0 -0
  238. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/image_search/frontend/index.html +0 -0
  239. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/image_search/frontend/package-lock.json +0 -0
  240. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/image_search/frontend/package.json +0 -0
  241. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/image_search/frontend/src/App.jsx +0 -0
  242. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/image_search/frontend/src/main.jsx +0 -0
  243. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/image_search/frontend/src/style.css +0 -0
  244. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/image_search/frontend/vite.config.js +0 -0
  245. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/image_search/img/cat1.jpeg +0 -0
  246. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/image_search/img/dog1.jpeg +0 -0
  247. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/image_search/img/elephant1.jpg +0 -0
  248. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/image_search/img/giraffe.jpg +0 -0
  249. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/image_search/main.py +0 -0
  250. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/image_search/pyproject.toml +0 -0
  251. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/live_updates/.env +0 -0
  252. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/live_updates/README.md +0 -0
  253. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/live_updates/data/bizarre_animals.md +0 -0
  254. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/live_updates/data/chunk_norris.md +0 -0
  255. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/live_updates/main.py +0 -0
  256. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/live_updates/pyproject.toml +0 -0
  257. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/manuals_llm_extraction/.env +0 -0
  258. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/manuals_llm_extraction/README.md +0 -0
  259. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/manuals_llm_extraction/main.py +0 -0
  260. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/manuals_llm_extraction/manuals/array.pdf +0 -0
  261. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/manuals_llm_extraction/manuals/base64.pdf +0 -0
  262. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/manuals_llm_extraction/manuals/copy.pdf +0 -0
  263. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/manuals_llm_extraction/manuals/glob.pdf +0 -0
  264. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/manuals_llm_extraction/pyproject.toml +0 -0
  265. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/multi_format_indexing/.env +0 -0
  266. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/multi_format_indexing/README.md +0 -0
  267. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/multi_format_indexing/main.py +0 -0
  268. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/multi_format_indexing/pyproject.toml +0 -0
  269. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/multi_format_indexing/source_files/1706.03762v7.pdf +0 -0
  270. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/multi_format_indexing/source_files/1810.04805v2.pdf +0 -0
  271. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/multi_format_indexing/source_files/2502.06786v3.pdf +0 -0
  272. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/multi_format_indexing/source_files/healthcare_industry_test_p101.jpg +0 -0
  273. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/multi_format_indexing/source_files/healthcare_industry_test_p86.jpg +0 -0
  274. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/multi_format_indexing/source_files/healthcare_industry_test_p9.jpg +0 -0
  275. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/multi_format_indexing/source_files/restaurant_brands_international_2023.jpg +0 -0
  276. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/multi_format_indexing/source_files/sweetgreen_2023.jpg +0 -0
  277. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/paper_metadata/.env.example +0 -0
  278. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/paper_metadata/.gitignore +0 -0
  279. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/paper_metadata/README.md +0 -0
  280. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/paper_metadata/main.py +0 -0
  281. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/paper_metadata/papers/1706.03762v7.pdf +0 -0
  282. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/paper_metadata/papers/1810.04805v2.pdf +0 -0
  283. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/paper_metadata/papers/2502.06786v3.pdf +0 -0
  284. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/paper_metadata/papers/2502.20346v1.pdf +0 -0
  285. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/paper_metadata/pyproject.toml +0 -0
  286. {cocoindex-0.2.21/examples/product_recommendation → cocoindex-0.2.23/examples/patient_intake_extraction}/.env.example +0 -0
  287. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/patient_intake_extraction/README.md +0 -0
  288. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/patient_intake_extraction/data/README.md +0 -0
  289. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/patient_intake_extraction/data/patient_forms/Patient_Intake_Form_David_Artificial.docx +0 -0
  290. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/patient_intake_extraction/data/patient_forms/Patient_Intake_Form_Emily_Artificial.pdf +0 -0
  291. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/patient_intake_extraction/data/patient_forms/Patient_Intake_Form_Joe_Artificial.pdf +0 -0
  292. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/patient_intake_extraction/data/patient_forms/Patient_Intake_From_Jane_Artificial.docx +0 -0
  293. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/patient_intake_extraction/main.py +0 -0
  294. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/patient_intake_extraction/pyproject.toml +0 -0
  295. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/pdf_elements_embedding/.env +0 -0
  296. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/pdf_elements_embedding/.gitignore +0 -0
  297. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/pdf_elements_embedding/README.md +0 -0
  298. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/pdf_elements_embedding/main.py +0 -0
  299. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/pdf_elements_embedding/pyproject.toml +0 -0
  300. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/pdf_embedding/.env +0 -0
  301. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/pdf_embedding/README.md +0 -0
  302. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/pdf_embedding/main.py +0 -0
  303. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/pdf_embedding/pdf_files/1706.03762v7.pdf +0 -0
  304. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/pdf_embedding/pdf_files/1810.04805v2.pdf +0 -0
  305. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/pdf_embedding/pdf_files/rfc8259.pdf +0 -0
  306. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/pdf_embedding/pyproject.toml +0 -0
  307. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/postgres_source/.env +0 -0
  308. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/postgres_source/README.md +0 -0
  309. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/postgres_source/main.py +0 -0
  310. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/postgres_source/prepare_source_data.sql +0 -0
  311. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/postgres_source/pyproject.toml +0 -0
  312. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/product_recommendation/README.md +0 -0
  313. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/product_recommendation/img/cocoinsight.png +0 -0
  314. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/product_recommendation/img/neo4j.png +0 -0
  315. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/product_recommendation/main.py +0 -0
  316. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/product_recommendation/products/p1.json +0 -0
  317. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/product_recommendation/products/p2.json +0 -0
  318. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/product_recommendation/products/p3.json +0 -0
  319. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/product_recommendation/products/p4.json +0 -0
  320. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/product_recommendation/products/p5.json +0 -0
  321. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/product_recommendation/products/p6.json +0 -0
  322. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/product_recommendation/products/p7.json +0 -0
  323. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/product_recommendation/products/p8.json +0 -0
  324. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/product_recommendation/products/p9.json +0 -0
  325. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/product_recommendation/pyproject.toml +0 -0
  326. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/text_embedding/.env +0 -0
  327. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/text_embedding/README.md +0 -0
  328. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/text_embedding/Text_Embedding.ipynb +0 -0
  329. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/text_embedding/main.py +0 -0
  330. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/text_embedding/markdown_files/1706.03762v7.md +0 -0
  331. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/text_embedding/markdown_files/1810.04805v2.md +0 -0
  332. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/text_embedding/markdown_files/rfc8259.md +0 -0
  333. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/text_embedding/pyproject.toml +0 -0
  334. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/text_embedding_lancedb/.env +0 -0
  335. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/text_embedding_lancedb/.gitignore +0 -0
  336. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/text_embedding_lancedb/README.md +0 -0
  337. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/text_embedding_lancedb/main.py +0 -0
  338. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/text_embedding_lancedb/markdown_files/rfc8259.md +0 -0
  339. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/text_embedding_lancedb/pyproject.toml +0 -0
  340. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/text_embedding_qdrant/.env +0 -0
  341. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/text_embedding_qdrant/README.md +0 -0
  342. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/text_embedding_qdrant/main.py +0 -0
  343. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/text_embedding_qdrant/markdown_files/rfc8259.md +0 -0
  344. {cocoindex-0.2.21 → cocoindex-0.2.23}/examples/text_embedding_qdrant/pyproject.toml +0 -0
  345. {cocoindex-0.2.21 → cocoindex-0.2.23}/pyproject.toml +0 -0
  346. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/__init__.py +0 -0
  347. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/auth_registry.py +0 -0
  348. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/engine_object.py +0 -0
  349. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/engine_value.py +0 -0
  350. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/flow.py +0 -0
  351. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/functions/__init__.py +0 -0
  352. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/functions/_engine_builtin_specs.py +0 -0
  353. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/functions/colpali.py +0 -0
  354. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/functions/sbert.py +0 -0
  355. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/index.py +0 -0
  356. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/lib.py +0 -0
  357. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/llm.py +0 -0
  358. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/op.py +0 -0
  359. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/py.typed +0 -0
  360. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/query_handler.py +0 -0
  361. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/runtime.py +0 -0
  362. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/setting.py +0 -0
  363. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/setup.py +0 -0
  364. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/sources/__init__.py +0 -0
  365. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/subprocess_exec.py +0 -0
  366. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/targets/__init__.py +0 -0
  367. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/targets/_engine_builtin_specs.py +0 -0
  368. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/targets/lancedb.py +0 -0
  369. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/tests/__init__.py +0 -0
  370. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/tests/test_engine_object.py +0 -0
  371. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/tests/test_engine_value.py +0 -0
  372. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/tests/test_optional_database.py +0 -0
  373. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/tests/test_transform_flow.py +0 -0
  374. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/tests/test_typing.py +0 -0
  375. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/tests/test_validation.py +0 -0
  376. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/typing.py +0 -0
  377. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/user_app_loader.py +0 -0
  378. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/utils.py +0 -0
  379. {cocoindex-0.2.21 → cocoindex-0.2.23}/python/cocoindex/validation.py +0 -0
  380. {cocoindex-0.2.21 → cocoindex-0.2.23}/ruff.toml +0 -0
  381. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/base/duration.rs +0 -0
  382. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/base/field_attrs.rs +0 -0
  383. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/base/json_schema.rs +0 -0
  384. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/base/mod.rs +0 -0
  385. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/base/schema.rs +0 -0
  386. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/base/spec.rs +0 -0
  387. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/base/value.rs +0 -0
  388. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/builder/analyzed_flow.rs +0 -0
  389. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/builder/analyzer.rs +0 -0
  390. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/builder/exec_ctx.rs +0 -0
  391. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/builder/flow_builder.rs +0 -0
  392. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/builder/mod.rs +0 -0
  393. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/builder/plan.rs +0 -0
  394. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/execution/db_tracking.rs +0 -0
  395. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/execution/db_tracking_setup.rs +0 -0
  396. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/execution/dumper.rs +0 -0
  397. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/execution/evaluator.rs +0 -0
  398. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/execution/memoization.rs +0 -0
  399. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/execution/mod.rs +0 -0
  400. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/execution/row_indexer.rs +0 -0
  401. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/execution/source_indexer.rs +0 -0
  402. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/execution/stats.rs +0 -0
  403. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/lib.rs +0 -0
  404. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/lib_context.rs +0 -0
  405. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/llm/anthropic.rs +0 -0
  406. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/llm/bedrock.rs +0 -0
  407. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/llm/gemini.rs +0 -0
  408. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/llm/litellm.rs +0 -0
  409. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/llm/mod.rs +0 -0
  410. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/llm/openai.rs +0 -0
  411. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/llm/openrouter.rs +0 -0
  412. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/llm/vllm.rs +0 -0
  413. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/llm/voyage.rs +0 -0
  414. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/factory_bases.rs +0 -0
  415. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/functions/detect_program_lang.rs +0 -0
  416. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/functions/embed_text.rs +0 -0
  417. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/functions/extract_by_llm.rs +0 -0
  418. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/functions/mod.rs +0 -0
  419. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/functions/parse_json.rs +0 -0
  420. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/functions/split_by_separators.rs +0 -0
  421. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/functions/split_recursively.rs +0 -0
  422. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/functions/test_utils.rs +0 -0
  423. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/interface.rs +0 -0
  424. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/mod.rs +0 -0
  425. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/py_factory.rs +0 -0
  426. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/registration.rs +0 -0
  427. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/registry.rs +0 -0
  428. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/sdk.rs +0 -0
  429. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/shared/mod.rs +0 -0
  430. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/shared/postgres.rs +0 -0
  431. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/shared/program_langs.rs +0 -0
  432. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/shared/split.rs +0 -0
  433. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/sources/azure_blob.rs +0 -0
  434. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/sources/google_drive.rs +0 -0
  435. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/sources/local_file.rs +0 -0
  436. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/sources/mod.rs +0 -0
  437. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/sources/postgres.rs +0 -0
  438. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/sources/shared/mod.rs +0 -0
  439. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/sources/shared/pattern_matcher.rs +0 -0
  440. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/targets/kuzu.rs +0 -0
  441. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/targets/mod.rs +0 -0
  442. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/targets/neo4j.rs +0 -0
  443. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/targets/postgres.rs +0 -0
  444. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/targets/qdrant.rs +0 -0
  445. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/targets/shared/mod.rs +0 -0
  446. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/targets/shared/property_graph.rs +0 -0
  447. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/ops/targets/shared/table_columns.rs +0 -0
  448. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/prelude.rs +0 -0
  449. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/py/convert.rs +0 -0
  450. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/py/mod.rs +0 -0
  451. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/server.rs +0 -0
  452. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/service/error.rs +0 -0
  453. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/service/flows.rs +0 -0
  454. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/service/mod.rs +0 -0
  455. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/service/query_handler.rs +0 -0
  456. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/settings.rs +0 -0
  457. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/setup/auth_registry.rs +0 -0
  458. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/setup/components.rs +0 -0
  459. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/setup/db_metadata.rs +0 -0
  460. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/setup/driver.rs +0 -0
  461. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/setup/flow_features.rs +0 -0
  462. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/setup/mod.rs +0 -0
  463. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/setup/states.rs +0 -0
  464. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/utils/bytes_decode.rs +0 -0
  465. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/utils/concur_control.rs +0 -0
  466. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/utils/db.rs +0 -0
  467. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/utils/deser.rs +0 -0
  468. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/utils/fingerprint.rs +0 -0
  469. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/utils/immutable.rs +0 -0
  470. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/utils/mod.rs +0 -0
  471. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/utils/retryable.rs +0 -0
  472. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/utils/str_sanitize.rs +0 -0
  473. {cocoindex-0.2.21 → cocoindex-0.2.23}/src/utils/yaml_ser.rs +0 -0
@@ -109,6 +109,12 @@ version = "1.0.99"
109
109
  source = "registry+https://github.com/rust-lang/crates.io-index"
110
110
  checksum = "b0674a1ddeecb70197781e945de4b3b8ffb61fa939a5597bcf48503737663100"
111
111
 
112
+ [[package]]
113
+ name = "arc-swap"
114
+ version = "1.7.1"
115
+ source = "registry+https://github.com/rust-lang/crates.io-index"
116
+ checksum = "69f7f8c3906b62b754cd5326047894316021dcfe5a194c8ea52bdd94934a3457"
117
+
112
118
  [[package]]
113
119
  name = "arraydeque"
114
120
  version = "0.5.1"
@@ -997,6 +1003,15 @@ dependencies = [
997
1003
  "tokio",
998
1004
  ]
999
1005
 
1006
+ [[package]]
1007
+ name = "backon"
1008
+ version = "1.5.2"
1009
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1010
+ checksum = "592277618714fbcecda9a02ba7a8781f319d26532a88553bbacc77ba5d2b3a8d"
1011
+ dependencies = [
1012
+ "fastrand 2.3.0",
1013
+ ]
1014
+
1000
1015
  [[package]]
1001
1016
  name = "backtrace"
1002
1017
  version = "0.3.75"
@@ -1283,7 +1298,7 @@ dependencies = [
1283
1298
 
1284
1299
  [[package]]
1285
1300
  name = "cocoindex"
1286
- version = "0.2.21"
1301
+ version = "0.2.23"
1287
1302
  dependencies = [
1288
1303
  "anyhow",
1289
1304
  "async-openai",
@@ -1319,6 +1334,7 @@ dependencies = [
1319
1334
  "hyper-util",
1320
1335
  "indenter",
1321
1336
  "indexmap 2.10.0",
1337
+ "indicatif",
1322
1338
  "indoc",
1323
1339
  "infer 0.19.0",
1324
1340
  "itertools 0.14.0",
@@ -1334,6 +1350,7 @@ dependencies = [
1334
1350
  "pythonize",
1335
1351
  "qdrant-client",
1336
1352
  "rand 0.9.2",
1353
+ "redis",
1337
1354
  "regex",
1338
1355
  "reqwest",
1339
1356
  "rustls 0.23.31",
@@ -1389,6 +1406,20 @@ version = "1.0.4"
1389
1406
  source = "registry+https://github.com/rust-lang/crates.io-index"
1390
1407
  checksum = "b05b61dc5112cbb17e4b6cd61790d9845d13888356391624cbe7e41efeac1e75"
1391
1408
 
1409
+ [[package]]
1410
+ name = "combine"
1411
+ version = "4.6.7"
1412
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1413
+ checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd"
1414
+ dependencies = [
1415
+ "bytes",
1416
+ "futures-core",
1417
+ "memchr",
1418
+ "pin-project-lite",
1419
+ "tokio",
1420
+ "tokio-util",
1421
+ ]
1422
+
1392
1423
  [[package]]
1393
1424
  name = "concurrent-queue"
1394
1425
  version = "2.5.0"
@@ -1418,6 +1449,19 @@ dependencies = [
1418
1449
  "yaml-rust2",
1419
1450
  ]
1420
1451
 
1452
+ [[package]]
1453
+ name = "console"
1454
+ version = "0.15.11"
1455
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1456
+ checksum = "054ccb5b10f9f2cbf51eb355ca1d05c2d279ce1804688d0db74b4733a5aeafd8"
1457
+ dependencies = [
1458
+ "encode_unicode",
1459
+ "libc",
1460
+ "once_cell",
1461
+ "unicode-width",
1462
+ "windows-sys 0.59.0",
1463
+ ]
1464
+
1421
1465
  [[package]]
1422
1466
  name = "const-oid"
1423
1467
  version = "0.9.6"
@@ -1868,6 +1912,12 @@ dependencies = [
1868
1912
  "zeroize",
1869
1913
  ]
1870
1914
 
1915
+ [[package]]
1916
+ name = "encode_unicode"
1917
+ version = "1.0.0"
1918
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1919
+ checksum = "34aa73646ffb006b8f5147f3dc182bd4bcb190227ce861fc4a4844bf8e3cb2c0"
1920
+
1871
1921
  [[package]]
1872
1922
  name = "encoding_rs"
1873
1923
  version = "0.8.35"
@@ -3031,6 +3081,19 @@ dependencies = [
3031
3081
  "serde",
3032
3082
  ]
3033
3083
 
3084
+ [[package]]
3085
+ name = "indicatif"
3086
+ version = "0.17.11"
3087
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3088
+ checksum = "183b3088984b400f4cfac3620d5e076c84da5364016b4f49473de574b2586235"
3089
+ dependencies = [
3090
+ "console",
3091
+ "number_prefix",
3092
+ "portable-atomic",
3093
+ "unicode-width",
3094
+ "web-time",
3095
+ ]
3096
+
3034
3097
  [[package]]
3035
3098
  name = "indoc"
3036
3099
  version = "2.0.6"
@@ -3441,6 +3504,16 @@ dependencies = [
3441
3504
  "minimal-lexical",
3442
3505
  ]
3443
3506
 
3507
+ [[package]]
3508
+ name = "num-bigint"
3509
+ version = "0.4.6"
3510
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3511
+ checksum = "a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9"
3512
+ dependencies = [
3513
+ "num-integer",
3514
+ "num-traits",
3515
+ ]
3516
+
3444
3517
  [[package]]
3445
3518
  name = "num-bigint-dig"
3446
3519
  version = "0.8.4"
@@ -3522,6 +3595,12 @@ dependencies = [
3522
3595
  "libc",
3523
3596
  ]
3524
3597
 
3598
+ [[package]]
3599
+ name = "number_prefix"
3600
+ version = "0.4.0"
3601
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3602
+ checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3"
3603
+
3525
3604
  [[package]]
3526
3605
  name = "numpy"
3527
3606
  version = "0.25.0"
@@ -4295,6 +4374,31 @@ version = "0.2.1"
4295
4374
  source = "registry+https://github.com/rust-lang/crates.io-index"
4296
4375
  checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3"
4297
4376
 
4377
+ [[package]]
4378
+ name = "redis"
4379
+ version = "0.31.0"
4380
+ source = "registry+https://github.com/rust-lang/crates.io-index"
4381
+ checksum = "0bc1ea653e0b2e097db3ebb5b7f678be339620b8041f66b30a308c1d45d36a7f"
4382
+ dependencies = [
4383
+ "arc-swap",
4384
+ "backon",
4385
+ "bytes",
4386
+ "cfg-if",
4387
+ "combine",
4388
+ "futures-channel",
4389
+ "futures-util",
4390
+ "itoa",
4391
+ "num-bigint",
4392
+ "percent-encoding",
4393
+ "pin-project-lite",
4394
+ "ryu",
4395
+ "sha1_smol",
4396
+ "socket2 0.5.10",
4397
+ "tokio",
4398
+ "tokio-util",
4399
+ "url",
4400
+ ]
4401
+
4298
4402
  [[package]]
4299
4403
  name = "redox_syscall"
4300
4404
  version = "0.5.17"
@@ -4980,6 +5084,12 @@ dependencies = [
4980
5084
  "digest",
4981
5085
  ]
4982
5086
 
5087
+ [[package]]
5088
+ name = "sha1_smol"
5089
+ version = "1.0.1"
5090
+ source = "registry+https://github.com/rust-lang/crates.io-index"
5091
+ checksum = "bbfa15b3dddfee50a0fff136974b3e1bde555604ba463834a7eb7deb6417705d"
5092
+
4983
5093
  [[package]]
4984
5094
  name = "sha2"
4985
5095
  version = "0.10.9"
@@ -6068,6 +6178,12 @@ version = "1.12.0"
6068
6178
  source = "registry+https://github.com/rust-lang/crates.io-index"
6069
6179
  checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493"
6070
6180
 
6181
+ [[package]]
6182
+ name = "unicode-width"
6183
+ version = "0.2.2"
6184
+ source = "registry+https://github.com/rust-lang/crates.io-index"
6185
+ checksum = "b4ac048d71ede7ee76d585517add45da530660ef4390e49b098733c6e897f254"
6186
+
6071
6187
  [[package]]
6072
6188
  name = "unicode-xid"
6073
6189
  version = "0.2.6"
@@ -2,7 +2,7 @@
2
2
  name = "cocoindex"
3
3
  # Version used for local development is always higher than others to take precedence.
4
4
  # Will be overridden for specific release versions.
5
- version = "0.2.21"
5
+ version = "0.2.23"
6
6
  edition = "2024"
7
7
  rust-version = "1.89"
8
8
  license = "Apache-2.0"
@@ -66,6 +66,7 @@ blake2 = "0.10.6"
66
66
  pgvector = { version = "0.4.1", features = ["sqlx", "halfvec"] }
67
67
  phf = { version = "0.12.1", features = ["macros"] }
68
68
  indenter = "0.3.4"
69
+ indicatif = "0.17.9"
69
70
  itertools = "0.14.0"
70
71
  derivative = "2.2.0"
71
72
  hex = "0.4.3"
@@ -153,5 +154,6 @@ azure_storage_blobs = { version = "0.21.0", default-features = false, features =
153
154
  "hmac_rust",
154
155
  ] }
155
156
  serde_path_to_error = "0.1.17"
157
+ redis = { version = "0.31.0", features = ["tokio-comp", "connection-manager"] }
156
158
  expect-test = "1.5.0"
157
159
  encoding_rs = "0.8.35"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cocoindex
3
- Version: 0.2.21
3
+ Version: 0.2.23
4
4
  Classifier: Development Status :: 3 - Alpha
5
5
  Classifier: License :: OSI Approved :: Apache Software License
6
6
  Classifier: Operating System :: OS Independent
@@ -175,6 +175,13 @@ pip install -U cocoindex
175
175
 
176
176
  2. [Install Postgres](https://cocoindex.io/docs/getting_started/installation#-install-postgres) if you don't have one. CocoIndex uses it for incremental processing.
177
177
 
178
+ 3. (Optional) Install Claude Code skill for enhanced development experience. Run these commands in [Claude Code](https://claude.com/claude-code):
179
+
180
+ ```
181
+ /plugin marketplace add cocoindex-io/cocoindex-claude
182
+ /plugin install cocoindex-skills@cocoindex
183
+ ```
184
+
178
185
  ## Define data flow
179
186
 
180
187
  Follow [Quick Start Guide](https://cocoindex.io/docs/getting_started/quickstart) to define your first indexing flow. An example flow looks like:
@@ -244,8 +251,10 @@ It defines an index flow like this:
244
251
  | [Face Recognition](examples/face_recognition) | Recognize faces in images and build embedding index |
245
252
  | [Paper Metadata](examples/paper_metadata) | Index papers in PDF files, and build metadata tables for each paper |
246
253
  | [Multi Format Indexing](examples/multi_format_indexing) | Build visual document index from PDFs and images with ColPali for semantic search |
254
+ | [Custom Source HackerNews](examples/custom_source_hn) | Index HackerNews threads and comments, using *CocoIndex Custom Source* |
247
255
  | [Custom Output Files](examples/custom_output_files) | Convert markdown files to HTML files and save them to a local directory, using *CocoIndex Custom Targets* |
248
256
  | [Patient intake form extraction](examples/patient_intake_extraction) | Use LLM to extract structured data from patient intake forms with different formats |
257
+ | [HackerNews Trending Topics](examples/hn_trending_topics) | Extract trending topics from HackerNews threads and comments, using *CocoIndex Custom Source* and LLM |
249
258
 
250
259
  More coming and stay tuned 👀!
251
260
 
@@ -122,6 +122,13 @@ pip install -U cocoindex
122
122
 
123
123
  2. [Install Postgres](https://cocoindex.io/docs/getting_started/installation#-install-postgres) if you don't have one. CocoIndex uses it for incremental processing.
124
124
 
125
+ 3. (Optional) Install Claude Code skill for enhanced development experience. Run these commands in [Claude Code](https://claude.com/claude-code):
126
+
127
+ ```
128
+ /plugin marketplace add cocoindex-io/cocoindex-claude
129
+ /plugin install cocoindex-skills@cocoindex
130
+ ```
131
+
125
132
  ## Define data flow
126
133
 
127
134
  Follow [Quick Start Guide](https://cocoindex.io/docs/getting_started/quickstart) to define your first indexing flow. An example flow looks like:
@@ -191,8 +198,10 @@ It defines an index flow like this:
191
198
  | [Face Recognition](examples/face_recognition) | Recognize faces in images and build embedding index |
192
199
  | [Paper Metadata](examples/paper_metadata) | Index papers in PDF files, and build metadata tables for each paper |
193
200
  | [Multi Format Indexing](examples/multi_format_indexing) | Build visual document index from PDFs and images with ColPali for semantic search |
201
+ | [Custom Source HackerNews](examples/custom_source_hn) | Index HackerNews threads and comments, using *CocoIndex Custom Source* |
194
202
  | [Custom Output Files](examples/custom_output_files) | Convert markdown files to HTML files and save them to a local directory, using *CocoIndex Custom Targets* |
195
203
  | [Patient intake form extraction](examples/patient_intake_extraction) | Use LLM to extract structured data from patient intake forms with different formats |
204
+ | [HackerNews Trending Topics](examples/hn_trending_topics) | Extract trending topics from HackerNews threads and comments, using *CocoIndex Custom Source* and LLM |
196
205
 
197
206
  More coming and stay tuned 👀!
198
207