Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,13 +35,13 @@ jobs:
run: pip install -e ".[dev]"

- name: Lint (ruff)
run: ruff check src/pytypeform
run: ruff check src/typeform

- name: Type-check (mypy)
run: mypy src/pytypeform
run: mypy src/typeform

- name: Test (pytest + coverage)
run: pytest --cov=pytypeform --cov-report=xml --cov-report=term-missing
run: pytest --cov=typeform --cov-report=xml --cov-report=term-missing

- name: Upload coverage
if: matrix.os == 'ubuntu-latest' && matrix.python-version == '3.12'
Expand Down
20 changes: 10 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@

A Type-Safe UI/CLI Generator powered by Pydantic and Prompt-Toolkit.

[![PyPI version](https://img.shields.io/pypi/v/pytypeform.svg)](https://pypi.org/project/pytypeform/)
[![Python](https://img.shields.io/pypi/pyversions/pytypeform.svg)](https://pypi.org/project/pytypeform/)
[![CI](https://github.com/sthitaprajnas/pytypeform/actions/workflows/ci.yml/badge.svg)](https://github.com/sthitaprajnas/pytypeform/actions/workflows/ci.yml)
[![PyPI version](https://img.shields.io/pypi/v/typeform.svg)](https://pypi.org/project/typeform/)
[![Python](https://img.shields.io/pypi/pyversions/typeform.svg)](https://pypi.org/project/typeform/)
[![CI](https://github.com/sthitaprajnas/typeform/actions/workflows/ci.yml/badge.svg)](https://github.com/sthitaprajnas/typeform/actions/workflows/ci.yml)
[![License](https://img.shields.io/badge/license-Apache%202.0-green)](LICENSE)
[![Typed](https://img.shields.io/badge/typing-py.typed-informational)](src/pytypeform/py.typed)
[![Typed](https://img.shields.io/badge/typing-py.typed-informational)](src/typeform/py.typed)

Typerform transforms your Pydantic models into professional, interactive CLI wizards. Stop writing boilerplate input loops and manual validation—let your schemas drive the user experience.

Expand All @@ -26,15 +26,15 @@ Typerform transforms your Pydantic models into professional, interactive CLI wiz
## Installation

```bash
pip install pytypeform
pip install typeform
```

## Quick Start

```python
from typing import Literal
from pydantic import BaseModel, Field
from pytypeform import form
from typeform import form

class SetupConfig(BaseModel):
project_name: str = Field(description="Project Name", min_length=3)
Expand Down Expand Up @@ -90,12 +90,12 @@ config = form(MyModel, hydrate_from=[os.environ])
Contributions are welcome! Whether it's bug reports, feature requests, or new prompt engines.

```bash
git clone https://github.com/sthitaprajnas/pytypeform.git
cd pytypeform
git clone https://github.com/sthitaprajnas/typeform.git
cd typeform
pip install -e ".[dev]"
pytest # run test suite
ruff check src/pytypeform # lint
mypy src/pytypeform # type-check
ruff check src/typeform # lint
mypy src/typeform # type-check
```

## License
Expand Down
2 changes: 1 addition & 1 deletion examples/collection_wizard.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
# Add src to sys.path
sys.path.insert(0, "./src")

from pytypeform import form
from typeform import form
from rich.console import Console

console = Console()
Expand Down
2 changes: 1 addition & 1 deletion examples/enterprise_wizard.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
# Add the src directory to sys.path
sys.path.insert(0, "./src")

from pytypeform import form
from typeform import form
from rich.console import Console

console = Console()
Expand Down
4 changes: 2 additions & 2 deletions examples/simple_wizard.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,12 @@

from pydantic import BaseModel, EmailStr, Field

# Add the src directory to sys.path so we can import pytypeform without installing it
# Add the src directory to sys.path so we can import typeform without installing it
sys.path.insert(0, "./src")

from rich.console import Console

from pytypeform import form
from typeform import form

console = Console()

Expand Down
2 changes: 1 addition & 1 deletion examples/ultimate_demo.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
# Add src to sys.path
sys.path.insert(0, "./src")

from pytypeform import form
from typeform import form
from rich.console import Console

console = Console()
Expand Down
2 changes: 1 addition & 1 deletion examples/ultimate_wizard.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
# Add src to sys.path
sys.path.insert(0, "./src")

from pytypeform import form
from typeform import form
from rich.console import Console

console = Console()
Expand Down
6 changes: 3 additions & 3 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ dev = [
# ---------------------------------------------------------------------------

[tool.hatch.build.targets.wheel]
packages = ["src/pytypeform"]
packages = ["src/typeform"]

[tool.hatch.build.targets.sdist]
include = [
Expand All @@ -89,7 +89,7 @@ addopts = "-v --tb=short"
[tool.mypy]
strict = true
python_version = "3.10"
files = ["src/pytypeform"]
files = ["src/typeform"]

[tool.ruff]
line-length = 100
Expand All @@ -100,7 +100,7 @@ select = ["E", "F", "I", "UP", "B", "SIM"]
ignore = ["E501"]

[tool.coverage.run]
source = ["src/pytypeform"]
source = ["src/typeform"]

[tool.coverage.report]
show_missing = true
Expand Down
4 changes: 4 additions & 0 deletions src/typeform/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
from .core import form

__version__ = "0.1.0"
__all__ = ["form"]
Loading
Loading