Skip to content

deep-priyo/kanban-board-wordpress

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

16 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

WPTaskBoard - WordPress Kanban Task Management Plugin

A modern, full-featured Kanban task management plugin for WordPress with Gutenberg block integration. Create beautiful, interactive task boards directly in your WordPress posts and pages with drag-and-drop functionality.

WordPress PHP License Status

๐Ÿ“ธ Screenshots

Kanban Board in Action

Screenshot of the main kanban board

Kanban Board Main View

Gutenberg Block Editor

Screenshot showing the block in the WordPress editor

Block Editor View

Mobile Responsive Design

Screenshot showing mobile layout

Mobile View

โœจ Features

๐ŸŽฏ Core Functionality

  • Drag & Drop Interface - Intuitive task movement between columns
  • Three-Column Layout - To Do, In Progress, and Done columns
  • Real-time Updates - AJAX-powered task management
  • Gutenberg Integration - Native WordPress block editor support
  • Responsive Design - Works perfectly on all devices

๐Ÿ› ๏ธ Task Management

  • Quick Task Creation - Add tasks with title, description, priority, and assignee
  • Priority Levels - Visual priority indicators (High, Medium, Low)
  • Task Assignment - Assign tasks to team members
  • Status Tracking - Automatic status updates when moving tasks
  • Task Counting - Real-time task count per column

๐ŸŽจ Customization

  • Custom Board Titles - Personalize your task boards
  • Toggle Add Button - Show/hide the add task button
  • Modern UI - Clean, professional design
  • Custom Styling - Easy to customize with CSS

๐Ÿ”ง Technical Features

  • AJAX Integration - Smooth, no-reload interactions
  • Database Storage - Persistent task storage
  • REST API Ready - Extensible API endpoints
  • Security First - Nonce verification and data sanitization
  • Debug Support - Built-in debugging and logging

๐Ÿš€ Installation

Method 1: Manual Installation

  1. Download the plugin files
  2. Upload the wptaskboard folder to /wp-content/plugins/
  3. Activate the plugin through the 'Plugins' menu in WordPress
  4. Start using the Kanban Board block in your posts/pages!

Method 2: GitHub Installation

cd wp-content/plugins/
git clone https://github.com/yourusername/wptaskboard.git

๐Ÿ“ Project Structure

wptaskboard/
โ”œโ”€โ”€ wptaskboard.php              # Main plugin file
โ”œโ”€โ”€ README.md                    # This file
โ”œโ”€โ”€ assets/
โ”‚   โ”œโ”€โ”€ css/
โ”‚   โ”‚   โ””โ”€โ”€ kanban-board.css     # Main stylesheet
โ”‚   โ””โ”€โ”€ js/
โ”‚       โ””โ”€โ”€ kanban-board.js      # Frontend JavaScript
โ”œโ”€โ”€ blocks/
โ”‚   โ””โ”€โ”€ kanban-board/
โ”‚       โ”œโ”€โ”€ block.json           # Block configuration
โ”‚       โ”œโ”€โ”€ index.js             # Block registration
โ”‚       โ”œโ”€โ”€ edit.js              # Block editor component
โ”‚       โ”œโ”€โ”€ save.js              # Block save component
โ”‚       โ””โ”€โ”€ style.css            # Block-specific styles
โ”œโ”€โ”€ includes/
โ”‚   โ”œโ”€โ”€ class-ajax.php           # AJAX handlers
โ”‚   โ”œโ”€โ”€ class-blocks.php         # Block management
โ”‚   โ”œโ”€โ”€ class-database.php       # Database operations
โ”‚   โ””โ”€โ”€ class-api.php            # REST API endpoints
โ””โ”€โ”€ screenshots/                 # Plugin screenshots
    โ”œโ”€โ”€ kanban-board-main.png
    โ”œโ”€โ”€ block-editor.png
    โ””โ”€โ”€ mobile-view.png

๐ŸŽฎ Usage

Adding a Kanban Board

  1. In Block Editor:

    • Click the "+" button to add a new block
    • Search for "Kanban Task Board"
    • Insert the block into your post/page
  2. Customize Settings:

    • Set a custom board title in the block settings
    • Toggle the "Add Task" button visibility
    • Adjust alignment (wide/full width supported)

Managing Tasks

  1. Adding Tasks:

    • Click the "+ Add Task" button
    • Fill in task details (title, description, priority, assignee)
    • Submit to add to the "To Do" column
  2. Moving Tasks:

    • Drag tasks between columns to change status
    • Changes are automatically saved
    • Task counts update in real-time

๐Ÿ”ง Configuration

Block Attributes

The Kanban Board block supports the following attributes:

{
  "boardTitle": {
    "type": "string",
    "default": "My Task Board"
  },
  "showAddButton": {
    "type": "boolean", 
    "default": true
  }
}

AJAX Endpoints

  • wptaskboard_add_task - Create new tasks
  • wptaskboard_update_task - Update task status/details

CSS Classes

Key CSS classes for customization:

.wptaskboard-kanban-board     /* Main container */
.kanban-board                 /* Board grid */
.kanban-column               /* Individual columns */
.kanban-task                 /* Task cards */
.priority-high/.priority-medium/.priority-low  /* Priority indicators */

๐Ÿ› ๏ธ Development

Requirements

  • WordPress 5.0+
  • PHP 7.4+
  • Modern browser with JavaScript enabled

Development Setup

  1. Clone the repository
  2. Set up a local WordPress development environment
  3. Install the plugin in development mode
  4. Enable WP_DEBUG for development logging

File Structure Explained

  • Main Plugin File (wptaskboard.php) - Plugin initialization and core functionality
  • Block Files (blocks/kanban-board/) - Gutenberg block definition and editor interface
  • Assets (assets/) - CSS and JavaScript files for frontend functionality
  • Includes (includes/) - PHP classes for database, AJAX, and API functionality

Hooks and Filters

The plugin provides several hooks for customization:

// Example: Customize task creation
add_filter('wptaskboard_before_task_create', 'my_custom_task_handler');

// Example: Modify board output
add_filter('wptaskboard_board_html', 'my_custom_board_html');

๐Ÿค Contributing

We welcome contributions! Here's how you can help:

  1. Fork the Repository
  2. Create a Feature Branch (git checkout -b feature/amazing-feature)
  3. Commit Changes (git commit -m 'Add amazing feature')
  4. Push to Branch (git push origin feature/amazing-feature)
  5. Open Pull Request

Development Guidelines

  • Follow WordPress coding standards
  • Include PHPDoc comments for all functions
  • Test on multiple WordPress versions
  • Ensure mobile responsiveness
  • Add appropriate error handling

๐Ÿ› Bug Reports & Feature Requests

Please use GitHub Issues to report bugs or request features:

  1. Bug Reports - Include WordPress version, PHP version, and steps to reproduce
  2. Feature Requests - Describe the feature and use case clearly
  3. Questions - Use the Discussions tab for general questions

๐Ÿ“‹ Roadmap

Version 1.1 (Planned)

  • Task due dates and reminders
  • User assignment with WordPress user integration
  • Task templates and categories
  • Export/import functionality

Version 1.2 (Future)

  • Multiple board support
  • Task comments and attachments
  • Advanced filtering and search
  • Email notifications
  • Integration with popular project management tools

Version 2.0 (Long-term)

  • Team collaboration features
  • Advanced reporting and analytics
  • Custom workflow states
  • API webhooks
  • Premium features and licensing

๐Ÿ“ Changelog

Version 1.0.0 (Current)

  • Initial release
  • Gutenberg block integration
  • Drag and drop functionality
  • AJAX-powered task management
  • Responsive design
  • Basic task creation and management

๐Ÿ“„ License

This project is licensed under the GPL v2 or later - see the LICENSE file for details.

๐Ÿ™ Acknowledgments

  • WordPress community for excellent documentation
  • Gutenberg team for the block editor
  • Contributors and beta testers
  • Icons by Dashicons

โญ If you find this plugin useful, please give it a star on GitHub!

Made with โค๏ธ for the WordPress community

About

Modern Kanban task management plugin for WordPress with Gutenberg block integration and drag-and-drop task boards.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors