Skip to content

benny202505/InstantCamera

Repository files navigation

InstantCamera

InstantCamera is an offline iOS app for turning iPhone photos into a more convincing instant-film look.

InstantCamera 是一个本地离线 iOS 应用,用来把 iPhone 照片处理成更接近拍立得/即时成像相机的观感。

InstantCamera app screenshot

Overview

  • Local-only processing, no cloud upload
  • Built for iPhone photo import, preview, save, and share
  • Includes multiple instant camera personalities instead of a single fixed filter
  • Supports manual tuning when the default look is not enough

Features

  • Import photos from the system photo library
  • Real-time preview of the processed result
  • 5 built-in instant camera profiles
    • Instax Mini 12
    • Instax SQ40
    • Instax Wide 400
    • Polaroid Go
    • Polaroid SX-70
  • Manual adjustments
    • Warmth
    • Contrast
    • Saturation
    • Highlight roll-off
    • Blue tone
    • Fade
    • Grain
  • Save back to Photos
  • Share through the iOS system share sheet

Why This Project

Instant film is great, but film packs are expensive and digital filters often only add a white border instead of reproducing the actual tonal character.

This project focuses on the part that matters more: the rendering style of instant cameras, including contrast shape, highlight compression, color bias, fade, and grain response.

Tech Stack

  • Swift 6
  • SwiftUI
  • Core Image
  • XcodeGen
  • Swift Testing

Project Structure

  • Sources/InstaxCore/
    • Reusable image processing core
    • Independent from SwiftUI
  • Tests/InstaxCoreTests/
    • Unit tests for the processing core
  • iOSApp/InstantCamera/
    • iOS app layer
  • iOSApp/InstantCamera.xcodeproj
    • Checked-in Xcode project
  • iOSApp/project.yml
    • XcodeGen source of truth
  • docs/plans/
    • Historical design and implementation notes

Requirements

  • macOS with Xcode 16+
  • Swift 6
  • iOS deployment target: 16.0+
  • Optional: xcodegen 2.38+

Getting Started

Open the project

open iOSApp/InstantCamera.xcodeproj

Run on your iPhone

  1. Open the project in Xcode.
  2. Select the InstantCamera target.
  3. In Signing & Capabilities, enable Automatically manage signing.
  4. Choose your Apple Team.
  5. Change Bundle Identifier to your own unique value, for example com.yourname.instantcamera.
  6. Select your physical iPhone and run the app.

Note:

  • The repository uses a placeholder bundle identifier by default: com.example.instantcamera
  • A development team is required for installing onto a real device

Distribution Notes

  • This repository does not provide a signed .ipa
  • No App Store or TestFlight distribution is included
  • If you want to run it on your own iPhone, build it locally in Xcode
  • This project is not shipped under a paid Apple Developer Program signing identity
  • For personal use, Xcode signing with your own Apple account or Personal Team may be sufficient, subject to Apple's provisioning limits

Regenerate the Xcode project

If you change iOSApp/project.yml:

cd iOSApp
xcodegen generate

Verification

swift test
xcodebuild \
  -project iOSApp/InstantCamera.xcodeproj \
  -scheme InstantCamera \
  -configuration Debug \
  -destination 'generic/platform=iOS' \
  -derivedDataPath iOSApp/.derived \
  CODE_SIGNING_ALLOWED=NO \
  CODE_SIGNING_REQUIRED=NO \
  build

Open Source Notes

  • Local/generated files such as .derived, .spm, .DS_Store, and xcuserdata should not be committed
  • iOSApp/project.yml and iOSApp/InstantCamera.xcodeproj should stay aligned
  • docs/plans/ is kept as development archive, so older naming and intermediate decisions may still appear there

Contributing

Please read CONTRIBUTING.md before sending changes.

If you want to report a security issue, use the guidance in SECURITY.md.

Roadmap

  • Improve more instant-camera profiles
  • Add better visual comparison between camera styles
  • Continue tuning film-like color and highlight behavior
  • Add marketing screenshots for the repository

License

MIT. See LICENSE.

About

Offline instant-film camera app for iOS. Transform photos into Instax & Polaroid styles with adjustable film parameters. Built with Swift 6, SwiftUI & Core Image.

Topics

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages