From f1e20ce056d589a234f753fd22c8dfcb9f720453 Mon Sep 17 00:00:00 2001 From: rohansharmaistoula Date: Thu, 9 Oct 2025 03:54:31 +0530 Subject: [PATCH 1/2] docs: add fun README, issue templates, and Buy Me a Coffee link - Make README more engaging with emojis and conversational tone - Add bug report and feature request issue templates - Include Buy Me a Coffee badge for support - Highlight Gemini CLI (Cascade) in project credits - Add call-to-action for stars and contributions --- .github/ISSUE_TEMPLATE/bug_report.md | 53 +++++++++++++++ .github/ISSUE_TEMPLATE/feature_request.md | 40 ++++++++++++ README.md | 78 +++++++++++++---------- 3 files changed, 137 insertions(+), 34 deletions(-) create mode 100644 .github/ISSUE_TEMPLATE/bug_report.md create mode 100644 .github/ISSUE_TEMPLATE/feature_request.md diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md new file mode 100644 index 0000000..4b33c02 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -0,0 +1,53 @@ +--- +name: Bug Report +about: Create a report to help us improve +title: '[BUG] ' +labels: bug +assignees: '' +--- + +## Bug Description + + + +## To Reproduce + +Steps to reproduce the behavior: + +1. +2. +3. + +## Expected Behavior + + + +## Actual Behavior + + + +## Code Sample + +```python +# Minimal code that reproduces the issue +from blocknote.converter import dict_to_blocks + +# Your code here +``` + +## Error Message + +``` +# Paste the full error message and stack trace here +``` + +## Environment + +- **OS**: [e.g., macOS 14.0, Ubuntu 22.04, Windows 11] +- **Python Version**: [e.g., 3.11.5] +- **blocknote-py Version**: [e.g., 0.1.0] +- **Installation Method**: [e.g., pip, uv] + +## Additional Context + + diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md new file mode 100644 index 0000000..5185013 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -0,0 +1,40 @@ +--- +name: Feature Request +about: Suggest an idea for this project +title: '[FEATURE] ' +labels: enhancement +assignees: '' +--- + +## Feature Description + + + +## Problem Statement + + + + +## Proposed Solution + + + +## Use Case + + + +```python +# Example of how the feature might be used +from blocknote.converter import your_new_feature + +# Usage example +result = your_new_feature(...) +``` + +## Alternatives Considered + + + +## Additional Context + + diff --git a/README.md b/README.md index 95c1f8b..1e77ac6 100644 --- a/README.md +++ b/README.md @@ -1,40 +1,40 @@ -# blocknote-py +# blocknote-py ๐Ÿโœจ -[![Python Version](https://img.shields.io/badge/python-3.7+-blue.svg)](https://www.python.org/) +[![Python Version](https://img.shields.io/badge/python-3.8+-blue.svg)](https://www.python.org/) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![PyPI version](https://badge.fury.io/py/blocknote-py.svg)](https://pypi.org/project/blocknote-py/) +[![CI](https://github.com/rohansharmasitoula/blocknote-py/workflows/CI/badge.svg)](https://github.com/rohansharmasitoula/blocknote-py/actions) -A Python library for working with Blocknote.js blocks. Convert between dictionaries, markdown, and Blocknote block objects with full type safety and validation. +> **Transform your BlockNote.js blocks like magic!** โœจ Convert between dictionaries, markdown, and BlockNote blocks with full type safety and validation. -## Features +Built with โค๏ธ using [Gemini CLI](https://codeium.com/windsurf) (Cascade) -- **Type-safe Blocknote blocks**: Pydantic models with full validation -- **Bidirectional conversion**: Convert between dictionaries, markdown, and Blocknote blocks -- **Dictionary conversion**: Convert dictionaries to validated Block objects -- **Markdown parsing**: Parse markdown into Blocknote blocks -- **Markdown generation**: Convert Blocknote blocks back to markdown -- **Text styling support**: Bold and italic text formatting -- **Lists**: Both ordered and unordered lists -- **Extensible architecture**: Easy to add new block types and converters -- **Comprehensive testing**: Full test coverage with pytest +## โœจ Why blocknote-py? -## Installation +Ever wanted to work with BlockNote.js blocks in Python? Now you can! ๐ŸŽ‰ -```bash -uv add blocknote-py -``` +- ๐Ÿ”„ **Bidirectional Magic**: Dict โ†” Blocks โ†” Markdown (it just works!) +- ๐Ÿ›ก๏ธ **Type-Safe**: Pydantic models keep your data squeaky clean +- ๐ŸŽจ **Style Support**: Bold, italic, and more formatting options +- ๐Ÿ“ **Lists Galore**: Bullets, numbers, checks - we got 'em all +- ๐Ÿงช **Battle-Tested**: 43 tests and counting +- ๐Ÿš€ **Fast & Easy**: Simple API, powerful results -Or install from source: +## ๐Ÿ“ฆ Installation ```bash -git clone https://github.com/yourusername/blocknote-py.git -cd blocknote-py -uv sync --dev +# With uv (recommended) +uv add blocknote-py + +# Or with pip +pip install blocknote-py ``` -## Quick Start +That's it! You're ready to roll! ๐ŸŽธ + +## ๐Ÿš€ Quick Start -### Basic Usage +### The Magic in Action ```python from blocknote.converter import dict_to_blocks, markdown_to_blocks, blocks_to_markdown, blocks_to_dict @@ -251,20 +251,30 @@ src/ โ”‚ โ””โ”€โ”€ test_md_to_blocknote.py ``` -## Contributing +## ๐Ÿค Contributing + +We love contributions! Got an idea? Found a bug? Let's make this better together! + +1. ๐Ÿด Fork it +2. ๐ŸŒฟ Create your feature branch (`git checkout -b feature/awesome-feature`) +3. โœจ Commit your changes (`git commit -m 'Add awesome feature'`) +4. ๐Ÿš€ Push to the branch (`git push origin feature/awesome-feature`) +5. ๐ŸŽ‰ Open a Pull Request + +Check out [CONTRIBUTING.md](CONTRIBUTING.md) for more details! + +## ๐Ÿ“„ License + +MIT License - go wild! See [LICENSE](LICENSE) for details. -Contributions are welcome! Please feel free to submit a Pull Request. +## ๐Ÿ”— Related Projects -1. Fork the repository -2. Create your feature branch (`git checkout -b feature/amazing-feature`) -3. Commit your changes (`git commit -m 'Add some amazing feature'`) -4. Push to the branch (`git push origin feature/amazing-feature`) -5. Open a Pull Request +- [BlockNote.js](https://github.com/TypeCellOS/BlockNote) - The awesome JavaScript library that started it all -## License +--- -This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details. +Made with โค๏ธ and โ˜• by [Rohan Sharma](https://github.com/rohansharmasitoula) -## Related Projects +**Star this repo if you find it useful!** โญ -- [Blocknote.js](https://github.com/TypeCellOS/BlockNote) - The original JavaScript library \ No newline at end of file +[![Buy Me A Coffee](https://img.shields.io/badge/Buy%20Me%20A%20Coffee-โ˜•-yellow.svg)](https://buymeacoffee.com/sitoularohansharma) \ No newline at end of file From 21ceefa4728c24e7c5fb3de72d7d994c69232e99 Mon Sep 17 00:00:00 2001 From: Rohan Sharma Sitoula <100085662+rohansharmasitoula@users.noreply.github.com> Date: Thu, 9 Oct 2025 04:05:31 +0530 Subject: [PATCH 2/2] Update bug_report.md --- .github/ISSUE_TEMPLATE/bug_report.md | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index 4b33c02..36f6b0b 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -6,6 +6,7 @@ labels: bug assignees: '' --- + ## Bug Description