Skip to main content

UriPoint

Overview

UriPoint is a flexible Python library for creating, managing, and interacting with network endpoints across multiple protocols.

Key Features

Persistent Endpoint Management

UriPoint provides a robust CLI for creating and managing endpoints that persist across sessions.

How It Works

  1. Configuration Storage

    • Endpoints are stored in ~/.uripoint_config.yaml
    • Automatically saves and loads endpoint configurations
    • Maintains state between CLI sessions
  2. Endpoint Creation

    • Supports multiple creation methods
    • Prevents duplicate endpoint registration
    • Stores endpoint details with associated metadata

Installation

pip install uripoint

CLI Usage

Endpoint Creation Methods

  1. Full URI Approach
# Create an endpoint with full URI
uripoint --uri http://localhost:8080/api/status --data '{"status": "OK"}'
  1. Component-Based Approach
# Create an endpoint using individual components
uripoint --hostname localhost --path /api/status --protocol http --port 8001 --data '{"status": "OK"}'

Endpoint Management

# List all configured endpoints
uripoint --list

# Serve all configured endpoints
uripoint --serve

uripoint --test

Persistent Configuration

How Configuration Works

  • Endpoints are saved in ~/.uripoint_config.yaml
  • Each endpoint includes:
    • Protocol
    • Hostname
    • Path
    • Port
    • Optional metadata

Example Workflow

# Create first endpoint
uripoint --hostname localhost --path /api/users --port 8001

# Create second endpoint
uripoint --hostname localhost --path /api/products --port 8002

# List all endpoints (persists between sessions)
uripoint --list

# Serve all endpoints
uripoint --serve

Supported Protocols

  • HTTP
  • HTTPS
  • WebSocket (WS)
  • WebSocket Secure (WSS)
  • FTP
  • SFTP

Programmatic Usage

from uripoint import UriPointCLI

# Create CLI instance
cli = UriPointCLI()

# Create an endpoint
cli.create_endpoint(
    uri='http://localhost:8000/api/status',
    data='{"status": "OK"}'
)

# List endpoints
cli.list_endpoints()

# Serve endpoints
cli.serve()

Configuration File Location

  • Path: ~/.uripoint_config.yaml
  • Format: YAML
  • Contents: List of endpoint configurations

Contributing

Contributions are welcome! Please see CONTRIBUTING.md

License

This project is licensed under the terms of the LICENSE file in the project root.

Metadata

Release files for uripoint 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for uripoint 1.0.0
File Size Uploaded
uripoint-1.0.0.tar.gz 25.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for uripoint 1.0.0
File Interpreter ABI Platform
uripoint-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 37.2 kB

Release files / uripoint-1.0.0.tar.gz

Download URL uripoint-1.0.0.tar.gz
Size 25.1 kB
Tags Source
SHA-256 checksum
How to use checksums
c78f5b8d212b4e7090b5dfe4e08ea900f85ab0c58e37bae98c5f6ddd87e50c13
BLAKE2b-256 checksum
How to use checksums
0d58b09cc891178183888f67d7291fc403724973800eeb9179fe7e1c7ad59d3e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.11.3

Release files / uripoint-1.0.0-py3-none-any.whl

Download URL uripoint-1.0.0-py3-none-any.whl
Size 12.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e155d2a686cacd5c4b5ae158e7ade562f27ba7870578f98d83f30a5a2491a9a0
BLAKE2b-256 checksum
How to use checksums
85bc00ea79f332702167272484589f819adabaf1926af648dc232e79feeee082
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.11.3

Release history Release notifications | RSS feed

1.9.7

2 release files

1.9.6

2 release files

1.9.5

2 release files

1.9.4

2 release files

1.9.3

2 release files

1.9.2

2 release files

1.9.1

2 release files

1.9.0

2 release files

1.8.0

2 release files

1.7.0

2 release files

1.6.0

2 release files

1.5.0

2 release files

1.4.0

2 release files

1.3.0

2 release files

1.2.0

2 release files

1.1.0

2 release files

This release

1.0.0 This release

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.2.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page