Skip to content

pranjal2004838/python-zulip-api

 
 

Repository files navigation

Zulip Python API 🚀

Build status Coverage status

What is this?

This repository contains Python packages for interacting with Zulip, an open-source team chat platform.

Three main packages:

  • zulip - API bindings to send messages and interact with Zulip
  • zulip_bots - Framework to build and run chatbots
  • zulip_botserver - Server for hosting multiple bots

💡 New to open source? This is a beginner-friendly project perfect for your first contribution!


⚡ Quick Start (5 minutes)

Prerequisites

  • Python 3.7+ installed
  • Git installed
  • ~200MB disk space

Step 1: Clone the repo

git clone https://github.com/YOUR_USERNAME/python-zulip-api.git cd python-zulip-api git remote add upstream https://github.com/zulip/python-zulip-api.git

Step 2: Run setup (one command!)

python3 ./tools/provision

This will:

  • Create a Python virtual environment
  • Install all dependencies
  • Set up the project automatically

Step 3: Activate the environment

After setup completes, copy and run the activation command shown in your terminal. It will look something like:

source zulip-api-py3-venv/bin/activate

Done! You're ready to develop.


🛠️ Common Commands

Run all tests

pytest

Run tests for specific package

`pytest zulip` # Test the main zulip package `pytest zulip_bots` # Test the bots package `pytest zulip_botserver` # Test the Botserver

Check code style

./tools/lint

Check type annotations

./tools/run-mypy

📖 Next Steps

  • Want to contribute? → Read the CONTRIBUTING guide. See <CONTRIBUTING.md>.
  • Learn the codebase? → Check out individual README files in each package folder
  • Need help? → See the main Zulip contributing guide

📝 Project Structure

zulip/ # Main API client zulip_bots/ # Bot framework zulip_botserver/ # Botserver tools/ # Helper scripts (provision, lint, etc.) 

💬 Questions?

About

Python library for the Zulip API.

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Python 99.0%
  • Other 1.0%