Skip to content

[Gallery] Envelope #23

@joshuakcockrell

Description

@joshuakcockrell

App name

Envelope

Developer / publisher

Envelope Money, Inc.

App Store URL

https://apps.apple.com/us/app/envelope-money/id6444296251

Play Store URL

https://play.google.com/store/apps/details?id=com.envelopemoney.prod

One- or two-sentence description

Envelope is a budgeting app with built-in checking and debit cards, like if YNAB or Monarch were also your bank, and is built for people who want their budget to control spending before it happens, not just track transactions after the money is gone. Envelope combines digital envelopes, joint accounts, debit cards, and envelope-based spending controls into one checking account, with early direct deposit, mobile check deposit, ATM access, and a waivable annual fee.

Skip mode

SkipLite (Swift transpiled to Kotlin)

Source repository (optional)

No response

Demonstration that the app is built with Skip

// swift-tools-version: 6.0
// This is a Skip (https://skip.tools) package,
// containing a Swift Package Manager project
// that will use the Skip build plugin to transpile the
// Swift Package, Sources, and Tests into an
// Android Gradle Project with Kotlin sources and JUnit tests.
import PackageDescription

let package = Package(
    name: "envelope",
    defaultLocalization: "en",
    platforms: [.iOS(.v18), .macCatalyst(.v16)],
    products: [
        .library(name: "EnvelopeApp", type: .dynamic, targets: ["Envelope"]),
    ],
    dependencies: [
        .package(url: "https://source.skip.tools/skip.git", exact: "1.8.5"),
        .package(url: "https://source.skip.tools/skip-ui.git", exact: "1.51.0"),
        .package(url: "https://source.skip.tools/skip-marketplace.git", exact: "0.3.0"),
        
        .package(url: "https://github.com/stripe/stripe-ios-spm", exact: "23.32.0"),
        .package(url: "https://source.skip.tools/skip-firebase.git", exact: "0.16.0"),
//        .package(url: "https://github.com/firebase/firebase-ios-sdk", exact: "12.12.1"),

        
        .package(url: "https://github.com/getsentry/sentry-cocoa", exact: "8.48.0"),
        .package(url: "https://github.com/stytchauth/stytch-ios", exact: "0.104.0"),
        .package(url: "https://github.com/apollographql/apollo-ios", exact: "2.1.2"),
//        .package(url: "https://github.com/apollographql/apollo-ios", revision: "f0c9d12820b460673a2ce8245963433b4086033b"),
        .package(url: "https://github.com/plaid/plaid-link-ios-spm", exact: "6.4.7"),
        .package(url: "https://github.com/envelopemoney/vgs-show-ios", branch: "main"),
        .package(url: "https://github.com/envelopemoney/vgs-collect-ios", branch: "master"),
        .package(path: "./EnvelopeApi")
    ],
    targets: [
        .target(
            name: "Envelope",
            dependencies: [
                .product(name: "SkipUI", package: "skip-ui"),
                .product(name: "SkipMarketplace", package: "skip-marketplace"),
                .product(name: "SkipFirebaseMessaging", package: "skip-firebase"), // Custom import
                
                .product(name: "Stripe", package: "stripe-ios-spm"), // Custom import
                .product(name: "StripePayments", package: "stripe-ios-spm"), // Custom import
                .product(name: "StripePaymentSheet", package: "stripe-ios-spm"), // Custom import
                .product(name: "StripeApplePay", package: "stripe-ios-spm"), // Custom import
                .product(name: "StytchCore", package: "stytch-ios"), // Custom import
//                .product(name: "FirebaseMessaging", package: "firebase-ios-sdk"), // Custom import
                
                
                .product(name: "LinkKit", package: "plaid-link-ios-spm"), // Custom import
                .product(name: "VGSShowSDK", package: "vgs-show-ios"), // Custom import
                .product(name: "VGSCollectSDK", package: "vgs-collect-ios"), // Custom import
                .product(name: "Apollo", package: "apollo-ios"), // Custom import
                .product(name: "ApolloSQLite", package: "apollo-ios"), // Custom import
                .product(name: "ApolloTestSupport", package: "apollo-ios"), // Custom import
                .product(name: "EnvelopeApi", package: "EnvelopeApi"), // Custom import
                .product(name: "EnvelopeApiTestMocks", package: "EnvelopeApi"), // Custom import
            ],
            resources: [.process("Resources")],
            plugins: [
              .plugin(name: "skipstone", package: "skip")
            ]
        ),
        .testTarget(
            name: "EnvelopeTests", 
            dependencies: [
              "Envelope",
                .product(name: "SkipTest", package: "skip")
            ],
            resources: [.process("Resources")],
            plugins: [
              .plugin(name: "skipstone", package: "skip")
            ]
        ),
    ]
)

Developer website (optional)

https://envelopebudgeting.com

Confirmations

  • The app is currently live on both the App Store and the Play Store (or I've noted in the description that one or both listings are pending).
  • I have permission to suggest this app for the gallery (developer, employee of the publishing company, or the suggestion comes from a publicly available source like a community announcement).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions