improved-sdd


Nameimproved-sdd JSON
Version 0.1.3 PyPI version JSON
download
home_pageNone
SummarySetup tool for Improved Spec-Driven Development projects with AI assistant templates
upload_time2025-09-07 09:37:23
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseNone
keywords spec-driven-development ai github-copilot templates cli development-tools
VCS
bugtrack_url
requirements typer rich platformdirs readchar httpx flake8 black isort pre-commit mypy
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Improved-SDD

[![License](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)
[![Python](https://img.shields.io/badge/Python-3.8+-blue.svg)](https://www.python.org/)

A GitHub Copilot Studio project with Improved Spec-Driven Development templates for building high-quality Python CLI applications.

## Features

- **Spec-Driven Development**: Structured approach to software development with comprehensive specifications
- **Python CLI Framework**: Built with Typer and Rich for modern, beautiful command-line interfaces
- **Automated Code Quality**: Pre-commit hooks with Flake8, Black, isort, and mypy
- **GitHub Copilot Integration**: Custom templates and instructions for AI-assisted development
- **CI/CD Ready**: GitHub Actions workflow for automated testing and linting
- **Cross-Platform**: Works on Windows, macOS, and Linux

## Quick Start

1. **Clone the repository**
   ```bash
   git clone <repository-url>
   cd improved-sdd
   ```

2. **Install dependencies**
   ```bash
   pip install -r requirements.txt
   ```

3. **Set up development environment**
   ```bash
   pip install pre-commit
   pre-commit install
   ```

4. **Open in VS Code** and start developing with GitHub Copilot using the provided templates

## Usage

### CLI Commands

The project includes a CLI tool for managing spec-driven development projects:

```bash
# Initialize a new project
python src/improved_sdd_cli.py init <project-name>

# Delete a project (with confirmation)
python src/improved_sdd_cli.py delete <project-name>

# Get help
python src/improved_sdd_cli.py --help
```

### Development Workflow

1. Create a specification in `specs/`
2. Use the CLI to initialize your project structure
3. Develop following the spec-driven approach
4. Commit changes (linting runs automatically)

## Development Setup

### Prerequisites

- Python 3.8 or higher
- VS Code with Python extension
- Git

### Installation

1. Clone the repository
2. Install dependencies:
   ```bash
   pip install -r requirements.txt
   ```

3. Install pre-commit hooks:
   ```bash
   pip install pre-commit
   pre-commit install
   ```

### Code Quality Tools

This project uses comprehensive linting and formatting tools:

#### Automatic Linting (Pre-commit Hooks)

Pre-commit hooks run automatically on each commit. Install them with:

```bash
pre-commit install
```

Run manually on all files:
```bash
pre-commit run --all-files
```

#### Manual Tools

```bash
# Style guide enforcement
flake8 src/ --max-line-length=120

# Code formatting
black src/

# Import sorting
isort src/ --profile=black

# Type checking
mypy src/
```

#### VS Code Integration

The project includes optimized VS Code settings for:
- Real-time linting with Flake8
- Automatic formatting with Black on save
- Import sorting
- 120-character line ruler

#### CI/CD

GitHub Actions automatically runs quality checks on:
- Pushes to main/develop branches
- Pull requests

## Project Structure

```
improved-sdd/
├── src/                    # Source code
├── specs/                  # Project specifications
├── templates/              # Development templates
├── memory/                 # Project memory and constitution
├── .github/                # GitHub templates and workflows
├── requirements.txt        # Python dependencies
├── pyproject.toml         # Project configuration
├── .pre-commit-config.yaml # Pre-commit hooks
└── .flake8                # Linting configuration
```

## Templates Available

- **Chatmodes**: AI behavior patterns for different development scenarios
- **Instructions**: Context-specific development guidance
- **Prompts**: Structured prompts for AI interactions

## Contributing

1. Fork the repository
2. Create a feature branch: `git checkout -b feature/your-feature`
3. Make your changes and ensure tests pass
4. Commit with pre-commit hooks: `git commit -m "Add your feature"`
5. Push to your branch: `git push origin feature/your-feature`
6. Create a Pull Request

### Development Guidelines

- Follow the spec-driven development approach
- Write clear, documented code
- Use type hints for better code quality
- Run pre-commit hooks before committing
- Update specifications for new features

## Resources

- [Typer Documentation](https://typer.tiangolo.com/)
- [Rich Documentation](https://rich.readthedocs.io/)
- [CLI Guidelines](https://clig.dev/)
- [Python CLI Development Guide](.github/instructions/python-cli-development.md)

## License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "improved-sdd",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "spec-driven-development, ai, github-copilot, templates, cli, development-tools",
    "author": null,
    "author_email": "Robert Meisner <robert@catchit.pl>",
    "download_url": "https://files.pythonhosted.org/packages/29/c1/d3ee1ec6cf39dab79e7866f190c49967a5f3abd5e6261364dc219934aa3b/improved_sdd-0.1.3.tar.gz",
    "platform": null,
    "description": "# Improved-SDD\r\n\r\n[![License](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)\r\n[![Python](https://img.shields.io/badge/Python-3.8+-blue.svg)](https://www.python.org/)\r\n\r\nA GitHub Copilot Studio project with Improved Spec-Driven Development templates for building high-quality Python CLI applications.\r\n\r\n## Features\r\n\r\n- **Spec-Driven Development**: Structured approach to software development with comprehensive specifications\r\n- **Python CLI Framework**: Built with Typer and Rich for modern, beautiful command-line interfaces\r\n- **Automated Code Quality**: Pre-commit hooks with Flake8, Black, isort, and mypy\r\n- **GitHub Copilot Integration**: Custom templates and instructions for AI-assisted development\r\n- **CI/CD Ready**: GitHub Actions workflow for automated testing and linting\r\n- **Cross-Platform**: Works on Windows, macOS, and Linux\r\n\r\n## Quick Start\r\n\r\n1. **Clone the repository**\r\n   ```bash\r\n   git clone <repository-url>\r\n   cd improved-sdd\r\n   ```\r\n\r\n2. **Install dependencies**\r\n   ```bash\r\n   pip install -r requirements.txt\r\n   ```\r\n\r\n3. **Set up development environment**\r\n   ```bash\r\n   pip install pre-commit\r\n   pre-commit install\r\n   ```\r\n\r\n4. **Open in VS Code** and start developing with GitHub Copilot using the provided templates\r\n\r\n## Usage\r\n\r\n### CLI Commands\r\n\r\nThe project includes a CLI tool for managing spec-driven development projects:\r\n\r\n```bash\r\n# Initialize a new project\r\npython src/improved_sdd_cli.py init <project-name>\r\n\r\n# Delete a project (with confirmation)\r\npython src/improved_sdd_cli.py delete <project-name>\r\n\r\n# Get help\r\npython src/improved_sdd_cli.py --help\r\n```\r\n\r\n### Development Workflow\r\n\r\n1. Create a specification in `specs/`\r\n2. Use the CLI to initialize your project structure\r\n3. Develop following the spec-driven approach\r\n4. Commit changes (linting runs automatically)\r\n\r\n## Development Setup\r\n\r\n### Prerequisites\r\n\r\n- Python 3.8 or higher\r\n- VS Code with Python extension\r\n- Git\r\n\r\n### Installation\r\n\r\n1. Clone the repository\r\n2. Install dependencies:\r\n   ```bash\r\n   pip install -r requirements.txt\r\n   ```\r\n\r\n3. Install pre-commit hooks:\r\n   ```bash\r\n   pip install pre-commit\r\n   pre-commit install\r\n   ```\r\n\r\n### Code Quality Tools\r\n\r\nThis project uses comprehensive linting and formatting tools:\r\n\r\n#### Automatic Linting (Pre-commit Hooks)\r\n\r\nPre-commit hooks run automatically on each commit. Install them with:\r\n\r\n```bash\r\npre-commit install\r\n```\r\n\r\nRun manually on all files:\r\n```bash\r\npre-commit run --all-files\r\n```\r\n\r\n#### Manual Tools\r\n\r\n```bash\r\n# Style guide enforcement\r\nflake8 src/ --max-line-length=120\r\n\r\n# Code formatting\r\nblack src/\r\n\r\n# Import sorting\r\nisort src/ --profile=black\r\n\r\n# Type checking\r\nmypy src/\r\n```\r\n\r\n#### VS Code Integration\r\n\r\nThe project includes optimized VS Code settings for:\r\n- Real-time linting with Flake8\r\n- Automatic formatting with Black on save\r\n- Import sorting\r\n- 120-character line ruler\r\n\r\n#### CI/CD\r\n\r\nGitHub Actions automatically runs quality checks on:\r\n- Pushes to main/develop branches\r\n- Pull requests\r\n\r\n## Project Structure\r\n\r\n```\r\nimproved-sdd/\r\n\u251c\u2500\u2500 src/                    # Source code\r\n\u251c\u2500\u2500 specs/                  # Project specifications\r\n\u251c\u2500\u2500 templates/              # Development templates\r\n\u251c\u2500\u2500 memory/                 # Project memory and constitution\r\n\u251c\u2500\u2500 .github/                # GitHub templates and workflows\r\n\u251c\u2500\u2500 requirements.txt        # Python dependencies\r\n\u251c\u2500\u2500 pyproject.toml         # Project configuration\r\n\u251c\u2500\u2500 .pre-commit-config.yaml # Pre-commit hooks\r\n\u2514\u2500\u2500 .flake8                # Linting configuration\r\n```\r\n\r\n## Templates Available\r\n\r\n- **Chatmodes**: AI behavior patterns for different development scenarios\r\n- **Instructions**: Context-specific development guidance\r\n- **Prompts**: Structured prompts for AI interactions\r\n\r\n## Contributing\r\n\r\n1. Fork the repository\r\n2. Create a feature branch: `git checkout -b feature/your-feature`\r\n3. Make your changes and ensure tests pass\r\n4. Commit with pre-commit hooks: `git commit -m \"Add your feature\"`\r\n5. Push to your branch: `git push origin feature/your-feature`\r\n6. Create a Pull Request\r\n\r\n### Development Guidelines\r\n\r\n- Follow the spec-driven development approach\r\n- Write clear, documented code\r\n- Use type hints for better code quality\r\n- Run pre-commit hooks before committing\r\n- Update specifications for new features\r\n\r\n## Resources\r\n\r\n- [Typer Documentation](https://typer.tiangolo.com/)\r\n- [Rich Documentation](https://rich.readthedocs.io/)\r\n- [CLI Guidelines](https://clig.dev/)\r\n- [Python CLI Development Guide](.github/instructions/python-cli-development.md)\r\n\r\n## License\r\n\r\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\r\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Setup tool for Improved Spec-Driven Development projects with AI assistant templates",
    "version": "0.1.3",
    "project_urls": {
        "Documentation": "https://github.com/robertmeisner/improved-sdd#readme",
        "Homepage": "https://github.com/robertmeisner/improved-sdd",
        "Issues": "https://github.com/robertmeisner/improved-sdd/issues",
        "Repository": "https://github.com/robertmeisner/improved-sdd"
    },
    "split_keywords": [
        "spec-driven-development",
        " ai",
        " github-copilot",
        " templates",
        " cli",
        " development-tools"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "8ee6510f78b1195cb889291381c73efba63451c2932efab013d670573f207959",
                "md5": "71175c58a0c30c15ef1ae378c5a97fdb",
                "sha256": "d8a074bd712e7b1055ca07d6edcfe18b51b0f489f3b9257745eae5c2a5ae146f"
            },
            "downloads": -1,
            "filename": "improved_sdd-0.1.3-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "71175c58a0c30c15ef1ae378c5a97fdb",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 16868,
            "upload_time": "2025-09-07T09:37:22",
            "upload_time_iso_8601": "2025-09-07T09:37:22.830495Z",
            "url": "https://files.pythonhosted.org/packages/8e/e6/510f78b1195cb889291381c73efba63451c2932efab013d670573f207959/improved_sdd-0.1.3-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "29c1d3ee1ec6cf39dab79e7866f190c49967a5f3abd5e6261364dc219934aa3b",
                "md5": "f00732f54e6fdf0cf37d1b287855768e",
                "sha256": "63078210fa5422bc9f3e08b2870bd68de5e3e60b109cd23327223198b03b1e19"
            },
            "downloads": -1,
            "filename": "improved_sdd-0.1.3.tar.gz",
            "has_sig": false,
            "md5_digest": "f00732f54e6fdf0cf37d1b287855768e",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 17423,
            "upload_time": "2025-09-07T09:37:23",
            "upload_time_iso_8601": "2025-09-07T09:37:23.796090Z",
            "url": "https://files.pythonhosted.org/packages/29/c1/d3ee1ec6cf39dab79e7866f190c49967a5f3abd5e6261364dc219934aa3b/improved_sdd-0.1.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-09-07 09:37:23",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "robertmeisner",
    "github_project": "improved-sdd#readme",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "typer",
            "specs": []
        },
        {
            "name": "rich",
            "specs": []
        },
        {
            "name": "platformdirs",
            "specs": []
        },
        {
            "name": "readchar",
            "specs": []
        },
        {
            "name": "httpx",
            "specs": []
        },
        {
            "name": "flake8",
            "specs": [
                [
                    ">=",
                    "6.0.0"
                ]
            ]
        },
        {
            "name": "black",
            "specs": [
                [
                    ">=",
                    "23.0.0"
                ]
            ]
        },
        {
            "name": "isort",
            "specs": [
                [
                    ">=",
                    "5.12.0"
                ]
            ]
        },
        {
            "name": "pre-commit",
            "specs": [
                [
                    ">=",
                    "3.0.0"
                ]
            ]
        },
        {
            "name": "mypy",
            "specs": [
                [
                    ">=",
                    "1.0.0"
                ]
            ]
        }
    ],
    "lcname": "improved-sdd"
}
        
Elapsed time: 0.90897s