semvec/pypi-packages huggingface dataset:
scaffoldry 0.0.1a3
Package to generate projects
License: MIT
Requires Python: >=3.10

# scaffoldry 

![Version](https://img.shields.io/badge/version-0.0.1a-blue)
![License](https://img.shields.io/badge/license-MIT-green)
![Python](https://img.shields.io/badge/python-3.10-yellow)

## Description

A package to perform a generic project with multiple languages and frameworks.

## Table of Contents
- [Installation](#installation)
- [Usage](#usage)
- [Features](#features)
- [Contributing](#contributing)
- [Tests](#tests)
- [FAQ](#faq)
- [License](#license)
- [Contact](#contact)

  
## Installation
Install via pip:

```bash
pip install scaffoldry --pre
```

## Usage

```console
$ [OPTIONS] COMMAND [ARGS]...
```

**Options**:

* `--install-completion`: Install completion for the current shell.
* `--show-completion`: Show completion for the current shell, to copy it or customize the installation.
* `--help`: Show this message and exit.

**Commands**:

* `generate`: Generate all the content related with the...
* `create-template`: Create a template in json in order to...

## `generate`

Generate all the content related with the input file provided

**Usage**:

```console
$ generate [OPTIONS] PATH_DEFINITION PATH_LOCATION
```

**Arguments**:

* `PATH_DEFINITION`: Path with the definition file  [required]
* `PATH_LOCATION`: Output root path in which the project is generated  [required]

**Options**:

* `--help`: Show this message and exit.

## `create-template`

Create a template in json in order to modify it.

**Usage**:

```console
$ create-template [OPTIONS] PATH_LOC
```

**Arguments**:

* `PATH_LOC`: Path to store the template  [required]

**Options**:

* `--help`: Show this message and exit.

## Features

Generation of base projects in python

## Contributing

At a glance:  
- Create an issue inside the project to raise a bug or suggest an improvement
- Recomendation: If you wait until I answer you can ensure that the issue will be accepted
- Create a branch referring with this issue to work with the code.
- Open a MR

## FAQ

- Why not use alternatives like Cookiecutter?
This package supports multiple languages and frameworks, making it easy to switch while keeping a consistent structure.

- Why does it seem less flexible?
It favors clear, well-defined structures to simplify code generation. Flexibility is reduced, but output is predictable and reliable.


## Licence

MIT

## Contact

You can contact with the user of this repo.
gauthsdk 0.3.0
Python SDK for GAuth API - GearVN Authentication Service
License: MIT
Requires Python: >=3.8
Keywords: gauth, authentication, sdk, api

# GAuth SDK for Python

Python SDK for GAuth API - GearVN Authentication Service.

## Installation

```bash
pip install gauthsdk
```

Or install from source:

```bash
pip install -e .
```

## Quick Start

```python
from gauthsdk import Client

# Initialize client with API Key (for S2S operations)
client = Client(
    api_key="gvn_sk_your_api_key_here",
    base_url="http://localhost:3000",
)

# Get user by ID
user = client.users.get("user-uuid")
print(f"User: {user.full_name()}")
print(f"Email: {user.email}")
print(f"Role: {user.role}")

# List users with pagination
result = client.users.list(page=1, limit=20)
for user in result.users:
    print(f"- {user.email}: {user.status}")
print(f"Total users: {result.paging.total}")

# Validate JWT token
claims = client.validate_token("user_jwt_token")
print(f"User ID: {claims.sub}")
print(f"Tenant ID: {claims.tenant_id}")
print(f"Role: {claims.role}")
```

## Features

### Users API

```python
# Get user by ID
user = client.users.get("user-uuid")

# List users with filters
result = client.users.list(
    page=1,
    limit=20,
    status="active",
    role="user",
    search="john",
)

# List user sessions
sessions = client.users.list_sessions("user-uuid")
for session in sessions:
    print(f"Session: {session.id}, Created: {session.created_at}")

# Revoke a session
client.users.revoke_session("user-uuid", "session-uuid")
```

### Auth API

For auth operations (login, register, etc.), you need to set `tenant_id`:

```python
client = Client(
    api_key="gvn_sk_...",
    tenant_id="tenant-uuid",
    base_url="http://localhost:3000",
)

# Login
tokens = client.auth.login("user@example.com", "password")
print(f"Access Token: {tokens.access_token}")
print(f"Refresh Token: {tokens.refresh_token}")

# Refresh token
new_tokens = client.auth.refresh_token(tokens.refresh_token)
print(f"New Access Token: {new_tokens.access_token}")

# Validate token
claims = client.auth.validate_token(tokens.access_token)
print(f"User: {claims.sub}")
```

## Error Handling

```python
from gauthsdk import Client, APIError

client = Client(api_key="gvn_sk_...")

try:
    user = client.users.get("invalid-uuid")
except APIError as e:
    print(f"Error {e.code}: {e.message}")

    if e.is_not_found():
        print("User not found")
    elif e.is_unauthorized():
        print("Invalid API key")
    elif e.is_forbidden():
        print("Insufficient permissions")
    elif e.is_rate_limited():
        print("Too many requests, please slow down")
```

## Configuration

| Parameter | Description | Default |
|-----------|-------------|---------|
| `api_key` | API Key for authentication (`X-API-Key` header) | None |
| `base_url` | Base URL for the API | `http://localhost:3000` |
| `tenant_id` | Tenant ID for multi-tenant operations | None |
| `timeout` | Request timeout in seconds | 30 |

## Requirements

- Python 3.8+
- `requests` library

## License

MIT
claude-history-backup 0.3.0
Backup and manage Claude Code session history
License: MIT
Requires Python: >=3.10
Keywords: backup, claude, cli, history

# claude-history-backup

Backup Claude Code session history before automatic cleanup removes old sessions. As of December 2025, Claude Code removes sessions older than ~1 month.

## Install

```bash
pip install claude-history-backup
# or
uv tool install claude-history-backup
```

## Quick Start

```bash
claude-history sync              # Create a backup archive
claude-history scheduler-install # Install daily scheduler (macOS)
claude-history status            # Check status
```

## How It Works

```
~/.claude/projects/           →  sync  →   ~/claude_code_history/
                                           ├── backup_20251208_180825.zip
                                           ├── backup_20251210_100000.zip
                                           └── ...
```

Each `sync` creates a new timestamped zip archive of all sessions. Archives accumulate - manage them manually when needed.

## Commands

```bash
claude-history status         # Show sync status
claude-history sync           # Create new backup archive
claude-history list           # List all archives
claude-history config         # View/set backup location
claude-history logs           # View scheduler log

# Scheduler (macOS launchd - runs missed jobs on wake)
claude-history scheduler-install
claude-history scheduler-status
claude-history scheduler-remove
```

## Configuration

```bash
# View current config
claude-history config

# Change backup location
claude-history config --backup-root ~/Dropbox/claude-backups
```

Default: `~/claude_code_history`
Config file: `~/.config/claude-history/config.json`