Skip to content

Commit 0a40410

Browse files
committed
Add README for desktop download CDN service
1 parent b818cf0 commit 0a40410

1 file changed

Lines changed: 60 additions & 0 deletions

File tree

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
# Desktop Download CDN
2+
3+
A CDN service for managing and serving desktop application downloads.
4+
5+
## Available Routes
6+
7+
### Universal Route
8+
9+
- `/`
10+
11+
This route will serve the latest version of the application and use the user agent to determine the platform and architecture.
12+
NOTE: it's not possible to determine the architecture from the user agent on macOS, so it will default to `x64` if a universal installer is not available.
13+
14+
### Latest Version Routes
15+
16+
- `/:platform/:artifactName/:arch`
17+
- `/:platform/:artifactName`
18+
- `/:platform`
19+
20+
These routes will serve the latest version of the application. The parameters are the same as above, but they will always return the most recent release.
21+
22+
### Version-based Routes
23+
24+
- `/versions/:appVersion/:platform/:artifactName/:arch`
25+
- `/versions/:appVersion/:platform/:artifactName`
26+
- `/versions/:appVersion/:platform`
27+
- `/versions/:appVersion`
28+
29+
These routes allow downloading specific versions of the application. The parameters are:
30+
31+
- `appVersion`: The version number of the application (e.g., "1.2.3")
32+
- `platform`: The operating system (e.g., "windows", "mac", "linux")
33+
- `artifactName`: The name of the artifact to download (e.g., "nsis", "dmg", "appimage")
34+
- `arch`: (Optional) The CPU architecture (e.g., "x64", "arm64")
35+
36+
### Build-based Routes
37+
38+
- `/builds/:buildId/:platform/:artifactName/:arch`
39+
- `/builds/:buildId/:platform/:artifactName`
40+
- `/builds/:buildId/:platform`
41+
- `/builds/:buildId`
42+
43+
These routes allow downloading specific builds of the application. The parameters are:
44+
45+
- `buildId`: The unique identifier for the build
46+
- Other parameters are the same as version-based routes
47+
48+
## Examples
49+
50+
### Download the latest Windows installer
51+
52+
`/windows`
53+
54+
### Download version 1.2.3 for Mac ARM
55+
56+
`/versions/1.2.3/mac/arm64`
57+
58+
### Download a specific build for Linux
59+
60+
`/builds/12345/linux/appimage/x64`

0 commit comments

Comments
 (0)