# apps.apple.com Archive

**[中文版本](./README_CN.md)** | **English Version**

## Please star this repo!!! 😭😭😭

##  Ads
## [genshin-ugc.com](https://genshin-ugc.com) is for sale. 
## [miliastra-wonderland.com](https://www.miliastra-wonderland.com/) is for sale!!!
email me hilda_quan@163.com

---

# Installation and Running (Local Preview Guide)

This project is an extracted Svelte/TypeScript frontend archive from online. The repository contains both compiled static assets (`assets/`, `us/`, etc.) and source code (`src/`, `shared/`). Here are two common ways to run it locally: Quick Static Preview (recommended, zero build) and Full Source Code Development (requires dependencies and private packages).

---

## Method A — Quick Static Preview (Recommended)

Purpose: Directly preview the compiled HTML/CSS/JS from the repository (no Node.js installation or build required).

Steps (PowerShell):

```powershell
# Navigate to repository root (example)
Set-Location -Path 'd:\dragon\page\apps.apple.com-main'

# Start a simple static HTTP server (on port 8080)
python -m http.server 8080

# Open in browser (example page)
# http://localhost:8080/us/iphone/today.html
```

Notes: I have tested this static server at the repository root. If you still get 404 errors in the browser, it might be because the HTML references resource names that don't match the actual filenames in `assets/` (e.g., HTML requests `/assets/index~B87DnNzwx-.js` but the file on disk is `indexB87DnNzwx-.js`). For convenient local preview, I've created compatibility copies for some common tilde (~) variants and added a minimal `manifest.json` at the repository root (for `/manifest.json` requests).

Created compatibility files (examples):

- `assets/index~B87DnNzwx-.js` (copied from `assets/indexB87DnNzwx-.js`)
- `assets/index~C-lllyUtRG.css` (copied from `assets/indexC-lllyUtRG.css`)
- `manifest.json` (repository root, minimal PWA manifest)

If you still see 404 errors, check the server logs in the terminal - they will show the missing paths. I can help you automatically create compatibility copies for these references, or modify the HTML to point to existing filenames (the latter is destructive).

---

## Method B — Running from Source (Development Environment, Requires Build)

Purpose: Use the Svelte/TypeScript source code for hot-reload development or rebuilding the assets. Note: The repository references private packages (e.g., `@amp/*`) that may not be installable from public registries.

Main steps (overview):

1. Install Node.js (recommended v18+) and confirm `node` and `npm` are available in PowerShell.
2. Create a `package.json` at the repository root (example below).
3. Install necessary dependencies (e.g., `svelte`, `vite`, `typescript`, `sass`, etc.) and handle `@amp/*` private packages (local stubs, private registry, or replacements).
4. Run `npm run dev` (or the script you defined in `package.json`).

Example `package.json` (for reference - needs adjustment based on actual project requirements):

```json
{
  "name": "appstore-local",
  "private": true,
  "version": "0.0.0",
  "scripts": {
    "dev": "vite",
    "build": "vite build",
    "preview": "vite preview"
  },
  "devDependencies": {
    "vite": "^5.0.0",
    "svelte": "^4.0.0",
    "@sveltejs/vite-plugin-svelte": "^2.0.0",
    "typescript": "^5.0.0",
    "sass": "^1.0.0"
  }
}
```

Important notes:

- Private packages `@amp/*`: If the code extensively uses `import '@amp/...'`, you'll need an accessible registry or place local implementations (stubs) in `node_modules`. I can help you generate minimal local stub packages to satisfy the build, but this might only be enough to start the project without guaranteeing all functionality works.
- Build time and dependency size: Installing dependencies and the first build will take time (depending on network and disk).

Example installation and startup (PowerShell):

```powershell
Set-Location -Path 'd:\dragon\page\apps.apple.com-main'
# If you've already added package.json
npm install
npm run dev
```

---

# Apple App Store frontend source code archive

Extracted from [https://apps.apple.com/](https://apps.apple.com/). Saved using the Chrome extension [Save All Resources](https://chromewebstore.google.com/detail/save-all-resources/abpdnfjocnmdomablahdcfnoggeeiedb).

### How is this possible?

Because Apple forgot to disable sourcemaps in production on the App Store website 🙃

<img width="795" height="548" alt="image" src="https://github.com/user-attachments/assets/59211dfb-5a56-456b-85b8-d292c1cfbfa2" />

As an interesting discovery, I've archived them here on GitHub for educational purposes.

## Directory Structure

```
.
├── api/          # API related code
├── assets/       # Static assets
├── node_modules/ # Dependencies
├── shared/       # Shared modules
├── src/          # Source code
│   ├── components/
│   ├── config/
│   ├── constants/
│   ├── context/
│   ├── stores/
│   └── utils/
└── us/           # US region specific
```

## What's Inside

- Complete Svelte/TypeScript source code
- State management logic
- UI components
- API integration code
- Routing configuration
- And more...

## Disclaimer

This repository is for educational and research purposes only. All code is copyrighted by Apple Inc.

The source code was obtained from publicly accessible resources through browser developer tools.

## License

The content in this repository belongs to Apple Inc. If there are any copyright concerns, please contact for removal.

