Releases: Webisso/currency-api
v1.0.2
Summary
This release aligns snapshot storage with the publication date embedded in the source XML so the stored raw snapshots and generated static API outputs follow the same calendar logic. It also makes duplicate daily source snapshots explicit during builds instead of silently regenerating the same dated API folder.
What changed
- Fetching now parses the source XML before saving and stores snapshots under the source bulletin date rather than the local execution date.
- Snapshot path generation now validates and derives directory segments directly from an ISO date string.
- Static API generation now deduplicates snapshots that resolve to the same source date and logs when duplicate files are skipped.
- Documentation now explains why
data/anddocs/may stay on the same dated snapshot when the upstream provider republishes the same bulletin on different days. - Package metadata was updated for the 1.0.2 release.
Why this matters
Previously, raw XML files could appear to update every day because their filenames were based on the fetch date, while the generated docs/ API artifacts were based on the source bulletin date inside the XML. When the upstream source repeated the same bulletin date across multiple days, data/ and docs/ diverged in a confusing way. This release removes that mismatch and makes the build output deterministic.
Validation
- Ran
npm run build:apisuccessfully on version 1.0.2. - Confirmed duplicate source snapshots are reported as skipped during the build when they map to the same bulletin date.
- Rebasing and pushing were completed against the latest
mainbefore publishing this release.
v1.0.1
Currency API 1.0.1
This release improves the delivery pipeline to keep published endpoints reliably up to date and removes redundant generated artifacts.
Highlights
- Fixed CI trigger behavior so data and docs updates are processed consistently.
- Added a safeguard to prevent bot-driven push loops during workflow runs.
- Removed the redundant public output tree to avoid duplicate artifacts.
- Kept GitHub Pages as the single source of truth from docs.
- Bumped package version to 1.0.1.
Why this matters
These changes help ensure latest API endpoints stay fresh while simplifying repository maintenance and reducing unnecessary generated files.
v1.0.0
Currency API - Release Notes
Highlights
This release upgrades the project from a daily XML collector into a static-first currency platform that works on both GitHub Pages and jsDelivr.
- Switched deployment model to
main /docsfor straightforward GitHub Pages publishing - Added versioned static endpoints for
latestand date-based snapshots - Added query-based conversion feature for browser usage
- Improved CI flow for daily fetch, JSON generation, and commit automation
- Refined repository docs, links, and examples for direct production usage
What's New
1) Static API Distribution (Pages + jsDelivr)
You can now consume data from both:
- GitHub Pages
- jsDelivr (GitHub source)
Example endpoints:
https://webisso.github.io/currency-api/latest/v1/currencies.json
https://cdn.jsdelivr.net/gh/Webisso/currency-api@main/docs/latest/v1/currencies.json2) Date-Versioned Data Structure
Generated outputs are now organized under docs/:
docs/
latest/
v1/
YYYY-MM-DD/
v1/This enables stable latest access and historical snapshot access in parallel.
3) Query-Based Conversion Feature
A new browser-side conversion endpoint is available:
/latest/v1/convert/?from=USD&to=EUR&unit=10Returns JSON with:
- source currency metadata
- target currency metadata
- TRY rates for both
- direct conversion rate
- converted amount
Live examples:
https://webisso.github.io/currency-api/latest/v1/convert/?from=USD&to=EUR&unit=10
https://cdn.jsdelivr.net/gh/Webisso/currency-api@main/docs/latest/v1/convert/?from=USD&to=EUR&unit=10Programmatic module:
https://webisso.github.io/currency-api/latest/v1/convert.js
https://cdn.jsdelivr.net/gh/Webisso/currency-api@main/docs/latest/v1/convert.js4) CI/CD Improvements
- Daily scheduled fetch pipeline remains active at
17:30Turkey time (14:30 UTC) - Automatic XML fetch retry handling
- Automatic JSON rebuild pipeline
- Change-aware commit behavior (no empty commits)
Changes Summary
Added
docs/latest/v1/convert.jsdocs/latest/v1/convert/index.html- Query-based conversion response flow
Changed
- Build target directory changed from
public/todocs/ - Local static server now serves
docs/ - Workflow paths and commit targets updated for
docs/
Removed
- Legacy Pages deploy workflow for Actions-based artifact deployment
Compatibility Notes
- Existing JSON consumers should use
.../docs/...path for jsDelivr source URLs. - GitHub Pages must be configured as:
Deploy from a branch -> main /docs.
Quick Smoke Test
npm run build:api
npm startThen test:
http://localhost:3000/latest/v1/currencies.json
http://localhost:3000/latest/v1/convert/?from=USD&to=EUR&unit=10Suggested Tag
v1.1.0Suggested Release Title
v1.1.0 - Static API, Query Conversion, and Docs-Based Pages Deployment