Skip to content

Contributing Guide

Thanks for your interest in contributing! πŸš€
We welcome bug reports, feature requests, and improvements.


πŸ§‘β€πŸ’» Development Setup

  1. Clone the repository: git clone https://github.com/Zomato/pulse-droid

  2. Open in Android Studio

  3. Sync Gradle and build the project


🌿 Branching Strategy

We follow a structured branching model:

  • master β†’ Production-ready code
  • dev β†’ Active development branch
  • feature/* β†’ New features
  • bug/* β†’ Bug fixes

πŸ”„ Contribution Workflow

  1. Fork the repository
  2. Create a new branch from dev: git checkout -b feature/your-feature-name
  3. Make your changes
  4. Commit with a clear message
  5. Push to your fork
  6. Create a Pull Request (PR) to dev

🧾 Commit Message Guidelines

Follow this format:

type: short description

Examples: - feat: add mqtt retry mechanism - fix: resolve connection timeout issue - refactor: optimize reconnect logic


πŸ“¦ Code Guidelines

  • Follow Kotlin best practices
  • Keep code modular and testable
  • Add comments for complex logic
  • Maintain backward compatibility

βœ… Pull Request Checklist

Before submitting a PR:

  • [ ] Code compiles successfully
  • [ ] No unnecessary changes included
  • [ ] Proper description added
  • [ ] Related issue linked (if any)
  • [ ] Tested locally

πŸ” Review Process

  • All changes must go through PR
  • Code owners will review changes
  • PR will be merged only after approval

πŸ› Reporting Issues

Please include:

  • Clear description
  • Steps to reproduce
  • Expected vs actual behavior
  • Logs/screenshots (if applicable)

🚫 What We Don’t Accept

  • Breaking changes without discussion
  • Unrelated large PRs
  • Poorly documented changes

🀝 Code of Conduct

Be respectful and constructive.
We aim to maintain a healthy open-source community.


Thanks for contributing ❀️