datasette-plugin-writer

Guide Datasette plugin development from cookiecutter bootstrap to publishing workflows.

682|49|Updated Oct 20, 2025
One-click install
npx skills add https://github.com/simonw/research --skill datasette-plugin-writer
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: datasette-plugin-writer
Source: https://github.com/simonw/research/tree/main/datasette-plugin-skill
Command: npx skills add https://github.com/simonw/research --skill datasette-plugin-writer

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This guide helps developers rapidly create and publish Datasette plugins by providing a structured, end-to-end workflow and a collection of best practices.

Core Features & Use Cases

  • Cookiecutter bootstrap for quick plugin scaffolding and standardized naming
  • Comprehensive plugin hooks references (prepare_connection, register_routes, render_cell, extra_template_vars, table_actions, actor_from_request, permission_allowed)
  • APIs and patterns for Request/Response, Database access, and Plugin Configuration
  • Static assets and templates integration, testing strategies, and publishing workflows to GitHub and PyPI

Quick Start

Create a new Datasette plugin project using the cookiecutter template and begin implementing core hooks

Frequently Asked Questions about datasette-plugin-writer

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build and publish a Datasette plugin from start to finish?

To build and publish a Datasette plugin, use a cookiecutter template for initial scaffolding, implement core hooks like prepare_connection and register_routes, write tests, then publish the package to GitHub and PyPI.

What are the essential Datasette plugin hooks I need to implement?

Essential Datasette plugin hooks include prepare_connection, register_routes, render_cell, extra_template_vars, table_actions, actor_from_request, and permission_allowed for extending database queries, routing, and authentication.

Can I use cookiecutter to scaffold a new Datasette plugin project?

Yes, you can use cookiecutter to scaffold a new Datasette plugin project. It provides standardized project naming and initial directory structure to quickly bootstrap your development workflow.

What is the best way to test and configure Datasette plugins?

The best way to test and configure Datasette plugins involves using dedicated testing strategies alongside APIs for plugin configuration, allowing you to validate Request/Response handling and database access patterns.

Does Datasette plugin development support custom authentication and permissions?

Yes, Datasette plugin development supports custom authentication and permissions through the actor_from_request and permission_allowed hooks, enabling you to manage user access control and request validation.

How do I add static assets and custom templates to a Datasette plugin?

To add static assets and custom templates to a Datasette plugin, utilize the integration patterns provided for static assets and templates, which allow you to inject custom HTML, CSS, and JavaScript into the Datasette instance.