# 🤝 Contributing to FlexiDatepicker

First off — thank you for taking the time to contribute! 🎉  
Your help makes **FlexiDatepicker** better for everyone.  
Whether it's fixing bugs, improving docs, or adding features — every contribution counts.

---

## 🧭 Table of Contents
- [Code of Conduct](#-code-of-conduct)
- [How Can I Contribute?](#-how-can-i-contribute)
- [Development Setup](#-development-setup)
- [Commit Guidelines](#-commit-guidelines)
- [Pull Request Process](#-pull-request-process)
- [Releasing a New Version](#-releasing-a-new-version)
- [License](#-license)

---

## 📜 Code of Conduct
Please note that this project follows a **Code of Conduct**.  
By participating, you agree to maintain a respectful and inclusive environment.  
If you witness or experience unacceptable behavior, contact [leoanangmh@gmail.com](mailto:leoanangmh@gmail.com).

---

## 💡 How Can I Contribute?

### 🐛 Report Bugs
If you find a bug, please [open an issue](https://github.com/leoanangmh/flexidatepicker/issues) and include:
- A clear description of the problem
- Steps to reproduce
- Expected vs. actual behavior
- Browser or environment details

### ✨ Suggest Features
If you have an idea to improve FlexiDatepicker, create a **feature request**:
- Describe your use case and why it's valuable
- Provide examples or UI mockups if possible

### 🧹 Improve Documentation
Spotted a typo or missing explanation? Feel free to edit any markdown or JS doc comment directly.

---

## 🛠 Development Setup

1. **Fork** this repository.
2. **Clone** your fork locally:
   ```bash
   git clone https://github.com/leoanangmh/flexidatepicker.git
   cd flexidatepicker
   ```
3. **Install Dependencies**
   ```
   npm install
   ```
4. **Run Dev Build**
   ```
   npm run dev
   ```
4. **Build for Production**
   ```
   npm run build
   ```

## 🧾 Commit Guidelines
We follow the Conventional Commits 

### Common Commit Types

| Type       | Description |
|-------------|-------------|
| `feat`      | Introduces a new feature |
| `fix`       | Fixes a bug |
| `docs`      | Documentation changes only |
| `style`     | Code style changes (formatting, missing semicolons, etc.) |
| `refactor`  | Code refactoring without changing functionality |
| `perf`      | Performance improvements |
| `test`      | Adding or updating tests |
| `chore`     | Build tasks, package updates, or maintenance work |


## 🚀 Pull Request Process
Ensure your branch is up-to-date with main:
   ```
   git pull origin main
   ```

## 📄 License

By contributing, you agree that your contributions will be licensed under the MIT License.

## 💬 Need Help?

If you’re unsure about something, feel free to:  
  Open a GitHub Discussion  
  Ask questions in your issue or PR  
  Email: leoanangmh@gmail.com
