Add project documentation and configure for JavaScript/TypeScript

- Add PRD and TSD defining SDK and Explorer architecture
- Add CLAUDE.md with project guidance for Claude Code
- Update README with project description
- Replace Python .gitignore with JS/TS configuration

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-01-14 16:47:25 +01:00
parent c299ce9d53
commit 5c1d26afba
5 changed files with 655 additions and 169 deletions

View File

@@ -0,0 +1,225 @@
# Product Requirements Document (PRD)
## Product: **Binect-JS API Wrapper**
---
## 1. Product Overview
### 1.1 Product Name
**Binect-JS API Wrapper**
(working title; final package naming is out of scope for this PRD)
### 1.2 Product Intent
Binect-JS is a **developer-facing integration product** that enables JavaScript developers to **interact reliably and intuitively with the Binect API** to send PDF documents as physical mail.
The products primary intent is to **lower the cognitive, technical, and experiential barrier** for first-time and recurring users of the Binect API—especially in browser-based and JavaScript-centric environments—without changing the underlying Binect service.
### 1.3 Problem Statement
While the Binect API provides comprehensive functionality for physical mail dispatch, it presents several challenges to developers:
* The API is **low-level and REST-centric**, requiring significant upfront interpretation.
* Developers must manually handle:
* authentication
* base64 encoding
* document lifecycle states
* error interpretation
* There is no **official JavaScript abstraction** or **exploratory tooling** that supports learning, testing, and safe experimentation.
As a result, developers face:
* higher onboarding friction
* increased implementation errors
* duplicated integration effort across projects
---
## 2. Target Users and Stakeholders
### 2.1 Primary Users
* JavaScript and TypeScript developers
* Frontend developers integrating physical mail into web applications
* Full-stack developers building document workflows
* Solution engineers evaluating Binect for customer projects
### 2.2 Secondary Stakeholders
* Product management (Binect ecosystem)
* Technical sales and pre-sales
* Developer support and onboarding teams
* Partner developers building reusable integrations
---
## 3. Product Goals
### 3.1 Primary Goals
* **Reduce integration effort** for JavaScript developers using the Binect API
* **Increase correctness and reliability** of API usage
* **Improve discoverability** of Binect API capabilities
* **Support rapid experimentation** without backend infrastructure
### 3.2 Secondary Goals
* Serve as a **reference integration** for good API usage patterns
* Act as a **learning surface** for understanding document validation and sending workflows
* Provide a **shared vocabulary and structure** for downstream tooling and documentation
---
## 4. Scope
### 4.1 In Scope
#### Functional Expectations (Conceptual)
* Enable JavaScript-based interaction with the Binect API for:
* uploading PDF documents
* inspecting document readiness and validation state
* modifying document-related parameters
* triggering physical mail dispatch
* observing sending status and outcomes
* Provide an **interactive, browser-based explorer** that:
* allows credential input
* allows safe execution of API calls
* visualizes results in both structured and raw form
* supports reusable, named “use case profiles”
#### Usage Context
* Usable as:
* a **local developer tool**
* a **hosted static web application**
* Applicable to:
* exploratory usage
* prototyping
* production integration support
### 4.2 Explicit Non-Scope
* No redesign or modification of the Binect backend API
* No replacement of backend integrations or enterprise workflows
* No PDF generation, editing, or layout tooling
* No scheduling, batching, or business process orchestration
* No commitment to a specific UI framework or architectural pattern
---
## 5. Assumptions and Constraints
### 5.1 Assumptions
* The Binect API is accessible via HTTPS using Basic Authentication
* API access is permitted directly from browser environments (no CORS restriction)
* Users possess valid Binect credentials
* Developers have access to PDFs already prepared for sending
### 5.2 Constraints
* The product must operate **without server-side components**
* Sensitive information must not be stored unintentionally
* The wrapper must not obscure or reinterpret business-critical API semantics
* The product must remain compatible with future Binect API evolution
---
## 6. Success Criteria
### 6.1 Qualitative Success Indicators
* Developers can complete a “send physical mail” workflow **without consulting raw API documentation**
* First-time users can validate and preview documents before sending
* The Explorer is usable as a **learning tool**, not just a test harness
* API errors are understandable and actionable
### 6.2 Quantitative / Observable Indicators
* Reduction in support inquiries related to JavaScript integrations
* Decreased integration time reported by developers
* Reuse of the wrapper across multiple projects or partners
* Adoption of Explorer during onboarding or demos
---
## 7. Non-Functional Expectations
### 7.1 Usability
* Clear mental mapping between user actions and API effects
* Safe defaults that prevent accidental mail dispatch
* Transparent presentation of API responses
### 7.2 Reliability
* Predictable handling of network and API errors
* Explicit representation of document and sending states
### 7.3 Security & Trust
* Credentials handled with care and minimal persistence
* No hidden data transmission or telemetry
* Clear user control over destructive actions (send, cancel, delete)
### 7.4 Maintainability
* Product intent remains stable even as API details evolve
* Wrapper serves as a single adaptation layer for API changes
---
## 8. Dependencies and External Interfaces
### 8.1 External Dependencies
* Binect REST API
* Browser and JavaScript runtime capabilities (fetch, crypto, storage)
### 8.2 Downstream Artifacts
This PRD intentionally precedes and informs:
* Functional Requirements Specification (FRS)
* Technical Design Documents (TDD)
* Architecture Decision Records (ADR)
* SDK and Explorer implementation plans
---
## 9. Risks and Mitigations
| Risk | Impact | Mitigation |
| ------------------------ | -------------------- | -------------------------------------------------- |
| API behavior changes | Integration breakage | Wrapper as adaptation layer |
| Over-abstracting API | Loss of control | Keep wrapper thin and transparent |
| Accidental mail dispatch | User trust erosion | Explicit confirmations and preview-first workflows |
| Scope creep | Delayed delivery | Strong adherence to PRD boundaries |
---
## 10. PRD Variant Classification
This document represents a **Hybrid / Boundary PRD**:
* Sufficiently precise to anchor engineering decisions
* Flexible enough to accommodate iterative refinement
* Explicitly positioned between product intent and implementation design
---
## 11. Traceability Note
This PRD acts as the **intent anchor** for all downstream decisions.
Any architectural or technical decision should be explainable as a consequence of:
> “Enabling safe, intuitive JavaScript access to the Binect API for document-based physical mail workflows.”