├── .editorconfig ├── .github └── workflows │ └── update.yaml ├── .gitignore ├── README.md └── autofill_tld_whitelist_url.json /.editorconfig: -------------------------------------------------------------------------------- 1 | [*] 2 | indent_style=space 3 | indent_size=2 4 | end_of_line=lf 5 | charset=utf-8 6 | trim_trailing_whitespace=true 7 | insert_final_newline=true 8 | -------------------------------------------------------------------------------- /.github/workflows/update.yaml: -------------------------------------------------------------------------------- 1 | name: update 2 | 3 | on: 4 | workflow_dispatch: {} 5 | push: 6 | branches: 7 | - main 8 | - develop 9 | schedule: 10 | - cron: "0 * * * *" 11 | 12 | jobs: 13 | update: 14 | runs-on: ubuntu-latest 15 | steps: 16 | - name: Checkout 17 | uses: actions/checkout@v2 18 | with: 19 | fetch-depth: 0 20 | 21 | - name: Update JSON file 22 | shell: bash 23 | run: curl "https://cdn.smoot.apple.com/static/autofill_tld_whitelist_url" | jq > autofill_tld_whitelist_url.json 24 | 25 | - name: Update "last check" badge 26 | shell: bash 27 | run: > 28 | awk -v line=4 -v str="[![Last check: $(date -u)](https://img.shields.io/date/$(date +%s)?label=last%20check)](https://github.com/b0o/apple-autofill-domains/actions/runs/${{github.run_id}})" 'FNR == line { print str; next } { print $0 }' README.md > README.md.new && mv README.md.new README.md 29 | 30 | - name: Update "last change" badge 31 | shell: bash 32 | run: > 33 | commit="$(git rev-list -1 HEAD autofill_tld_whitelist_url.json)"; 34 | timestamp="$(git show --quiet --format=format:%ct "$commit")"; 35 | awk -v line=5 -v str="[![Last change: $(date -u --date=@$timestamp)](https://img.shields.io/date/${timestamp}?color=orange&label=last%20change)](https://github.com/b0o/apple-autofill-domains/commit/$commit)" 'FNR == line { print str; next } { print $0 }' README.md > README.md.new && mv README.md.new README.md 36 | 37 | - name: Commit and Push Changes 38 | uses: EndBug/add-and-commit@v7 39 | with: 40 | message: Update data 41 | default_author: github_actions 42 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | doc/tags 2 | 3 | # Created by https://www.toptal.com/developers/gitignore/api/linux,macos,windows,vim,git 4 | # Edit at https://www.toptal.com/developers/gitignore?templates=linux,macos,windows,vim,git 5 | 6 | ### Git ### 7 | # Created by git for backups. To disable backups in Git: 8 | # $ git config --global mergetool.keepBackup false 9 | *.orig 10 | 11 | # Created by git when using merge tools for conflicts 12 | *.BACKUP.* 13 | *.BASE.* 14 | *.LOCAL.* 15 | *.REMOTE.* 16 | *_BACKUP_*.txt 17 | *_BASE_*.txt 18 | *_LOCAL_*.txt 19 | *_REMOTE_*.txt 20 | 21 | ### Linux ### 22 | *~ 23 | 24 | # temporary files which can be created if a process still has a handle open of a deleted file 25 | .fuse_hidden* 26 | 27 | # KDE directory preferences 28 | .directory 29 | 30 | # Linux trash folder which might appear on any partition or disk 31 | .Trash-* 32 | 33 | # .nfs files are created when an open file is removed but is still being accessed 34 | .nfs* 35 | 36 | ### macOS ### 37 | # General 38 | .DS_Store 39 | .AppleDouble 40 | .LSOverride 41 | 42 | # Icon must end with two 43 | Icon 44 | 45 | # Thumbnails 46 | ._* 47 | 48 | # Files that might appear in the root of a volume 49 | .DocumentRevisions-V100 50 | .fseventsd 51 | .Spotlight-V100 52 | .TemporaryItems 53 | .Trashes 54 | .VolumeIcon.icns 55 | .com.apple.timemachine.donotpresent 56 | 57 | # Directories potentially created on remote AFP share 58 | .AppleDB 59 | .AppleDesktop 60 | Network Trash Folder 61 | Temporary Items 62 | .apdisk 63 | 64 | ### Vim ### 65 | # Swap 66 | [._]*.s[a-v][a-z] 67 | !*.svg # comment out if you don't need vector files 68 | [._]*.sw[a-p] 69 | [._]s[a-rt-v][a-z] 70 | [._]ss[a-gi-z] 71 | [._]sw[a-p] 72 | 73 | # Session 74 | Session.vim 75 | Sessionx.vim 76 | 77 | # Temporary 78 | .netrwhist 79 | # Auto-generated tag files 80 | tags 81 | # Persistent undo 82 | [._]*.un~ 83 | 84 | ### Windows ### 85 | # Windows thumbnail cache files 86 | Thumbs.db 87 | Thumbs.db:encryptable 88 | ehthumbs.db 89 | ehthumbs_vista.db 90 | 91 | # Dump file 92 | *.stackdump 93 | 94 | # Folder config file 95 | [Dd]esktop.ini 96 | 97 | # Recycle Bin used on file shares 98 | $RECYCLE.BIN/ 99 | 100 | # Windows Installer files 101 | *.cab 102 | *.msi 103 | *.msix 104 | *.msm 105 | *.msp 106 | 107 | # Windows shortcuts 108 | *.lnk 109 | 110 | # End of https://www.toptal.com/developers/gitignore/api/linux,macos,windows,vim,git 111 | 112 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Apple's Allowed Autofill Domains 2 | 3 | [![Build Status](https://img.shields.io/github/workflow/status/b0o/apple-autofill-domains/update)](https://github.com/b0o/apple-autofill-domains/actions/workflows/update.yaml) 4 | [![Last check: Sat Aug 17 05:04:09 UTC 2024](https://img.shields.io/date/1723871049?label=last%20check)](https://github.com/b0o/apple-autofill-domains/actions/runs/10429718231) 5 | [![Last change: Mon Apr 4 10:37:28 UTC 2022](https://img.shields.io/date/1649068648?color=orange&label=last%20change)](https://github.com/b0o/apple-autofill-domains/commit/3a3896a63f63158d88c794843b20d0990b0fd0bd) 6 | 7 | Apple serves a JSON file containing a list of 250,000 domains at the `https://cdn.smoot.apple.com/static/autofill_tld_whitelist_url` endpoint. This list appears to be used by the Safari web browser to auto-complete domains typed into the address bar. 8 | 9 | This repository is automated with a [GitHub action](https://github.com/b0o/apple-autofill-domains/actions/workflows/update.yaml) that polls the endpoint hourly, saves the response to [`./autofill_tld_whitelist_url.json`](https://github.com/b0o/apple-autofill-domains/blob/main/autofill_tld_whitelist_url.json), commits any changes, and updates the badges in the README. You can click on the _last change_ badge to see a diff. 10 | --------------------------------------------------------------------------------