Placard: an iOS app for browsing and installing PosterBoard wallpapers
PosterBoard Wallpapers for iOS 26.0 - 27 beta 4
At a glance
- What is it?
- Placard is a Swift app that downloads community .tendies wallpaper packages and installs them into the iOS PosterBoard container on supported physical devices. It depends on undocumented behaviour, so the real question is which device and iOS build you are willing to test on.
- Who is it for?
- Placard is for developers and tinkerers who already build iOS apps from source and accept that the app relies on behaviour Apple does not expose as a public API. It is not for anyone who wants a stable, App Store distributed wallpaper tool, and it is not usable on the Simulator for installation or library management.
- Can I use it commercially?
- Yes, with conditions. GPL-3.0 is a copyleft licence: if you distribute software that includes it, you must release that software's source code under the same licence. Running it internally without distributing it does not trigger that obligation.
- Is it still maintained?
- Yes. The repository last received commits 4 days ago.
- What is it written in?
- Mainly Swift, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 30, 2026, and from our analysis. They are not legal advice.
Editorial analysis
What Placard does that the built-in wallpaper picker does not
iOS ships a wallpaper picker, but it does not give you a catalog of community-made interactive wallpapers, and it does not let you import a packaged wallpaper from outside the system. Placard fills that gap. The README describes it as an iOS app for browsing, creating, installing, and managing custom PosterBoard wallpapers, and the feature list is concrete: search and sort a community catalog, preview entries, download or import local .tendies packages, turn a vertical video of up to 12 seconds into a looping or auto-reversing Lock Screen wallpaper, install directly into PosterBoard, and remove installed custom and featured wallpapers afterwards.
The audience is narrow by design. The requirements section asks for Xcode 26 or later, iOS 26 or later, and a physical device on which bad_query is supported for installation and library management. That last clause is the whole story: the app is aimed at people who already have a device they are willing to experiment on, not at general iPhone users. The repository description pins the target range as iOS 26.0 through 27 beta 4, which tells you the author is tracking a moving OS surface rather than a fixed release.
The .tendies pipeline: fetch, validate, rewrite identifiers, install
The mechanism is documented in the README's How it works section, and it is a four-stage pipeline. Placard fetches the community wallpaper catalog, downloads the selected .tendies package, validates and extracts its PosterBoard descriptors, and assigns fresh identifiers before installation. That identifier rewrite is the interesting part: because two installed wallpapers cannot share the same descriptor identifiers, the app cannot simply copy a package into place. It has to parse the descriptor structure, regenerate the identifiers, and write the result back out.
Access to the target container comes from bad_query, which the README credits as providing the sandbox extension technique used to access PosterBoard data on supported systems. The same access is reused for the read path: Placard uses it to display and remove installed wallpapers, so browsing your installed library and deleting from it run through the same privileged channel as installation.
For a video of your own, the pipeline is the same but the front half is different. Placard generates the required CAML and PosterBoard descriptor structure locally, then installs it through the same pipeline. A SpringBoard refresh powered by NeoSpring finishes the job, which is what makes the new wallpaper visible without a full restart. The architecture is therefore thin: a catalog client, a ZIP and descriptor layer built on ZIPFoundation, a local generator for video input, and a privileged install/read/delete path that everything funnels through.
Building Placard from source and installing your first wallpaper
There is no App Store listing and no Homebrew formula. The README's Building section is the only distribution path, and it is four steps: clone the repository, open placard.xcodeproj in Xcode, select the placard target and choose your own development team under Signing & Capabilities, then build and run on your device. Swift Package Manager resolves ZIPFoundation automatically when the project is opened, so there is no separate dependency install step.
Start by cloning and opening the project:
git clone https://github.com/frs0n/placard.git
cd placard
open placard.xcodeprojIn Xcode, pick the placard target and set your team. The README is explicit that you must choose your own development team under Signing & Capabilities; without that, the build will not produce a runnable app for your device.
Once the app is on a supported physical device, the first real use is the catalog path. Browse or search the community list, preview an entry, and install it. Placard downloads the .tendies package, validates and extracts the descriptors, assigns fresh identifiers, and writes it into PosterBoard, then refreshes SpringBoard through NeoSpring. The README does not document a progress indicator, a failure message, or a rollback path, so treat a successful install as the only observable signal.
The second path is your own footage. Import a vertical video of up to 12 seconds, choose looping or auto-reversing, and Placard builds the CAML and descriptor structure locally before running the same install pipeline. Do not attempt either path on the Simulator: the README states it can be used to browse the catalog and develop the interface, but it cannot install or manage system wallpapers.
Where Placard is the wrong tool
The README carries its own warning, and it is not boilerplate: Placard relies on behavior that is not provided by a public Apple API, compatibility may change between iOS releases, and installing or deleting system wallpaper data carries risk. Read that as three separate failure modes.
First, the install path can break on any iOS update. Nothing in the repository guarantees that bad_query keeps working on a future build, and the app's own description limits the target range to iOS 26.0 through 27 beta 4. If you update your device past that window, you are on your own.
Second, the operations are destructive in a way the app does not appear to mediate. The README does not document rollback, backup, or a restore path for wallpaper data that Placard removes. If deletion goes wrong, the documented surface offers no recovery story.
Third, the Simulator is not a substitute for a device. You can develop the interface against it, but you cannot exercise installation or library management, which means the parts most likely to fail are exactly the parts you cannot test without hardware. If you need a wallpaper tool that works on any iPhone without a development team, or if you are not prepared to lose wallpaper state on a device you care about, Placard is the wrong choice.
Placard compared with Pocket Poster
Placard did not invent this workflow. Its acknowledgements name Pocket Poster by LeminLimez as the original project that inspired Placard's PosterBoard wallpaper workflow and .tendies support. The two share the package format and the general idea of writing descriptors into the PosterBoard container.
The difference is scope. Pocket Poster is the upstream inspiration for the workflow; Placard layers a catalog client, search and sorting, previews, a video-to-wallpaper generator with a 12-second cap and looping or auto-reversing output, and an installed-wallpaper management view on top of it. Placard also splits the privileged access into a separate dependency, bad_query, and the SpringBoard refresh into another, NeoSpring. That is a more modular arrangement, and it is also a longer dependency chain: three upstream projects whose terms and compatibility you inherit. If you only want the original workflow and nothing else, Pocket Poster is the smaller surface. If you want a catalog and a video import path in one app, Placard is the one that has them.
Maintenance cadence, build cost and licensing
The repository is not archived, and the last push was on 2026-08-30. The release list shows v1.6.7 on 2026-08-30, v1.6.6 on 2026-08-21 and v1.6.5 on 2026-08-21, so the project was shipping patch releases within the last month. That is a useful signal for a project tied to beta OS behaviour, because it suggests the author is still reacting to changes rather than having abandoned the codebase.
Upgrade cost is dominated by the toolchain, not the app. Xcode 26 or later is required, and each new iOS release is a fresh compatibility question because the install path rests on undocumented behaviour. Budget for re-testing on a physical device after every OS update; the README offers no compatibility matrix beyond the stated target range.
On licensing, Placard is released under the GNU General Public License v3.0, with the LICENSE file at the repository root. The README adds a caution that some incorporated techniques or source material come from upstream projects, and that the upstream bad_query and NeoSpring repositories may not declare a separate license. If you plan to redistribute a build, that combination is worth checking before you do, since the README itself points you at the upstream terms rather than resolving them. This is not legal advice; read the LICENSE file and the upstream repositories yourself.
Editorial conclusion
Placard is for developers and tinkerers who already build iOS apps from source and accept that the app relies on behaviour Apple does not expose as a public API. It is not for anyone who wants a stable, App Store distributed wallpaper tool, and it is not usable on the Simulator for installation or library management. Before adopting it, verify that your device and iOS build actually support bad_query, check that the upstream bad_query and NeoSpring repositories declare a license you can live with, and confirm your signing team is set on the placard target so the project builds at all.
Frequently asked questions
How do you use Placard to install a wallpaper?
Build the app from source in Xcode 26 or later, run it on a supported physical device, then browse or search the catalog and install an entry. Placard downloads the .tendies package, validates and extracts its PosterBoard descriptors, assigns fresh identifiers, installs it, and refreshes SpringBoard through NeoSpring.
What does Placard mean as an app name?
The README does not explain the name. It describes Placard only as an iOS app for browsing, creating, installing, and managing custom PosterBoard wallpapers, so the naming rationale is not stated in the repository documentation.
Can Placard be installed on the iOS Simulator?
No, not for wallpaper work. The README states the Simulator can be used to browse the catalog and develop the interface, but it cannot install or manage system wallpapers. Installation and library management require a physical device on which bad_query is supported.
What iOS versions does Placard support?
The requirements list iOS 26 or later, and the repository description scopes the project to iOS 26.0 through 27 beta 4. The README warns that compatibility may change between iOS releases because the app relies on behaviour that is not provided by a public Apple API.
What file format does Placard use for wallpapers?
Placard downloads or imports local .tendies wallpaper packages. It validates and extracts their PosterBoard descriptors and assigns fresh identifiers before installation, and ZIPFoundation handles the ZIP archive side of that process.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/frs0n-placard)