✅ Task 1.1 - Project Foundation Setup: - Repository structure with Python packaging (setup.py, pyproject.toml) - Development dependencies and requirements - Contributing guidelines and MIT license - GitHub workflows for CI/CD (test.yml, release.yml) - Issue and PR templates for community contributions - Comprehensive project documentation ✅ Task 1.2 - Core Client Structure: - wikijs package with proper module organization - Core client class foundation in client.py - Exception hierarchy for error handling - Base model classes and page models - Type checking support (py.typed) - Utility modules and helper functions 📊 Progress: Phase 1 MVP Development now 40% complete 🎯 Next: Task 1.3 - Authentication System implementation 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
77 lines
1.9 KiB
Python
77 lines
1.9 KiB
Python
"""Wiki.js Python SDK - Professional SDK for Wiki.js API integration.
|
|
|
|
This package provides a comprehensive Python SDK for interacting with Wiki.js
|
|
instances, including support for pages, users, groups, and system management.
|
|
|
|
Example:
|
|
Basic usage:
|
|
|
|
>>> from wikijs import WikiJSClient
|
|
>>> client = WikiJSClient('https://wiki.example.com', auth='your-api-key')
|
|
>>> # API endpoints will be available as development progresses
|
|
|
|
Features:
|
|
- Type-safe data models with validation
|
|
- Comprehensive error handling
|
|
- Automatic retry logic with exponential backoff
|
|
- Professional logging and debugging support
|
|
- Context manager support for resource cleanup
|
|
"""
|
|
|
|
from .client import WikiJSClient
|
|
from .exceptions import (
|
|
WikiJSException,
|
|
APIError,
|
|
AuthenticationError,
|
|
ConfigurationError,
|
|
ValidationError,
|
|
ClientError,
|
|
ServerError,
|
|
NotFoundError,
|
|
PermissionError,
|
|
RateLimitError,
|
|
ConnectionError,
|
|
TimeoutError,
|
|
)
|
|
from .models import BaseModel, Page, PageCreate, PageUpdate
|
|
from .version import __version__, __version_info__
|
|
|
|
# Public API
|
|
__all__ = [
|
|
# Main client
|
|
"WikiJSClient",
|
|
|
|
# Data models
|
|
"BaseModel",
|
|
"Page",
|
|
"PageCreate",
|
|
"PageUpdate",
|
|
|
|
# Exceptions
|
|
"WikiJSException",
|
|
"APIError",
|
|
"AuthenticationError",
|
|
"ConfigurationError",
|
|
"ValidationError",
|
|
"ClientError",
|
|
"ServerError",
|
|
"NotFoundError",
|
|
"PermissionError",
|
|
"RateLimitError",
|
|
"ConnectionError",
|
|
"TimeoutError",
|
|
|
|
# Version info
|
|
"__version__",
|
|
"__version_info__",
|
|
]
|
|
|
|
# Package metadata
|
|
__author__ = "Wiki.js SDK Contributors"
|
|
__email__ = ""
|
|
__license__ = "MIT"
|
|
__description__ = "Professional Python SDK for Wiki.js API integration"
|
|
__url__ = "https://github.com/yourusername/wikijs-python-sdk"
|
|
|
|
# For type checking
|
|
__all__ += ["__author__", "__email__", "__license__", "__description__", "__url__"] |