Skip to content

Developer onboarding improvements#49

Merged
xxsc0529 merged 1 commit into
oceanbase:mainfrom
nileshaher-2024si96522:main
Feb 10, 2026
Merged

Developer onboarding improvements#49
xxsc0529 merged 1 commit into
oceanbase:mainfrom
nileshaher-2024si96522:main

Conversation

@nileshaher-2024si96522

Copy link
Copy Markdown
Contributor

Summary

This PR implements developer onboarding improvements requested in issue #43. It adds Docker Compose files for local development, onboarding documentation, example scripts demonstrating typical workflows (quickstart / RAG / hybrid search), and small developer convenience Makefile targets. These changes are intended to make it easier for new contributors to set up the environment and get started.

Closes

Closes #43

What changed

Added/new files:

  • docker-compose.yml
  • docker-compose.seekdb.yml
  • CONTRIBUTING.md
  • examples/README.md
  • examples/quickstart.py
  • examples/rag_demo.py
  • examples/hybrid_search_demo.py
  • README.md (updated quickstart + onboarding content)

Updated:

  • Makefile (appended onboarding/dev targets: docker-up, docker-down, docker-logs, docker-up-seek, docker-down-seek, docker-logs-seek, fmt, lint, typecheck, test)

Why

  • Provide reproducible local dev environment using OceanBase (and a lightweight SeekDB alternative).
  • Document development setup and PR/test/lint expectations for new contributors.
  • Provide runnable examples to demonstrate the library's intended usage patterns and to make manual testing easier.

How to test locally

  1. Checkout branch:
    git checkout -b feat/onboarding-improvements-43

  2. Bring up the database:
    make docker-up

    or for the lightweight alternative:

    make docker-up-seek

  3. Create a .env file (or export env vars):
    OB_HOST=127.0.0.1
    OB_PORT=3306
    OB_USER=root
    OB_PASSWORD=
    OB_DB=langchain_ob_demo
    OPENAI_API_KEY=

  4. Install example dependencies:
    pip install openai mysql-connector-python numpy

  5. Run examples:
    python examples/quickstart.py
    python examples/rag_demo.py
    python examples/hybrid_search_demo.py

  6. Run linters & tests:
    make fmt
    make lint
    make typecheck
    pytest -q

Notes

  • The example scripts use OpenAI for embeddings/LLM; running them requires an API key. They are intentionally minimal and store embeddings as JSON in the DB and perform client-side ranking (portable approach).
  • The Makefile changes were appended to avoid losing existing targets. If your repo's Makefile already has targets with the same names, please review and merge appropriately.
  • The docker-compose healthchecks assume the images contain common utilities (nc/curl). If not, adjust healthchecks per image.
  • If the repo has CI that enforces dependency files (pyproject.toml / requirements.txt), consider adding example dependencies or mark examples as optional.

@CLAassistant

CLAassistant commented Jan 7, 2026

Copy link
Copy Markdown

CLA assistant check
All committers have signed the CLA.

@nileshaher-2024si96522

Copy link
Copy Markdown
Contributor Author

@webup Please review

@xxsc0529 xxsc0529 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@xxsc0529 xxsc0529 merged commit edca13c into oceanbase:main Feb 10, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Developer onboarding improvements

3 participants