App
Support
Blog
Categories
App
Technology
Product
Latest Articles
All Articles
Eclipse featured on Waterloo News

Eclipse featured on Waterloo News

Eclipse featured on front page of Waterloo News
Introducing Eclipse Community & more

Introducing Eclipse Community & more

Exciting new updates - Eclipse Community & more
Behind Eclipse - The Technicals

Behind Eclipse - The Technicals

An outline of the technical details of Eclipse for curious minds.
Eclipse App Store Launch

Eclipse App Store Launch

Eclipse launches on the App Store
Download App
Download App
Demo
Support
Blog
Technology
Technology

Behind Eclipse - The Technicals

An outline of the technical details of Eclipse for curious minds.
Behind Eclipse - The Technicals

Behind Eclipse - The Technicals

‍

We’re very grateful for all the feedback and support for Eclipse’s launch. This post is to outline some of the details about the technicals of Eclipse.

‍

The App

‍

We built the iOS app for Eclipse using the Swift programming language using a mix of SwiftUI and UIKit as our frontend. We also use various native Apple frameworks and some other UI packages.

‍

Why not React Native? Flutter? Cross-platform? Well, our goal was to provide a fast, iterative, and optimal user interface and experience. Building with Apple’s native programming language and frameworks gives you a familiar feel for iOS devices, and cuts down on our update time.

‍

Real-Time Optimization

‍

Eclipse uses only the name of your location to recommend you cards from your wallet (This means that your exact location never goes through our servers). Using the cards which are in your wallet, your custom point values and custom points multipliers (if applicable), we rank your cards based on how much “value” they provide. Cash back cards are unaltered (i.e. 2% cash back is simply 2% value) while the value of rewards cards is the effective cash back of your card (e.g. 1x points with a point value of 1.5 cents / point is 1.5% value). If you are in a country which your card would consider ‘foreign’ we apply a foreign transaction fee (if applicable to your card) which we subtract from the ‘value’ of your card. For example a card with 1.5% cash back in a foreign country would be -1.5% value if the foreign transaction fee is 3%.

‍

We also consider where your cards might not be accepted. To do this we have a database of location names which have limitations on which types of cards are accepted. We check the name of your location with our database and find cards in your wallet which may not be accepted. If this is the case we display the ‘value’ as 0.00% and let you know explicitly that the card is not accepted.

‍

Recommendations for Your Wallet

‍

Recommendations are a unique feature in Eclipse. We use your profile (eg credit range, income range, travel) to recommend you new cards which are not currently in your wallet. To do this we create a base ‘score’ for each card by applying a custom weight function based on its properties such as cash back/rewards multipliers. These ‘scores’ are then altered based on your custom point values and travel. The first rudimentary algorithm used a Jaccard Index regressor to support these recommendations, but we have since pivoted to something a bit more advanced. Credit range and income act as filters which filter out cards which you may not qualify for. However, in the future income may play a bigger role in recommendations.

‍

Card of the Week

‍

This is a relatively new feature which we’re still exploring. We currently have implemented a custom variant of the Metropolis Hastings algorithm, written in Rust, to seed a card of the week. This algorithm is a Markov chain Monte Carlo (MCMC) to draw samples from a probability distribution based off our card scorings. This also considers popular cards in your georegion.

‍

Metropolis Hastings algorithm, source: https://en.m.wikipedia.org/wiki/Metropolis–Hastings_algorithm

‍

Notifications

‍

Certain specific actions in the app will trigger notifications with the app’s notification center. For remote notifications, we use FCM tokens after verifying your user authentication. We use this to let you know of updates or useful information when your app is not opened.

‍

Autopilot

‍

The Autopilot feature is something we’re still experimenting with, and it was built using the ActivityKit framework for both the live notifications and dynamic island. Basically, it schedules updates for location and backend API calls when activated, so you can receive updates from your lock screen.

‍

Search Functionality

‍

Our search functionality is built using MapKit with natural language input. It supports locations around you, names of locations, and categories to shop at. We’re working on improving it further.

‍

Adding a Card

‍

When you add a credit card, you essentially get a customizable template of the card which you can personalize to fit your needs. This does not require connecting bank accounts nor secure details. We update our database often, so please reach out to our team if there are any cards that are missing!

‍

Future Plans

‍

In the future we plan to revamp our card recommendations. This would entail features such as using monthly spending budgets to determine the best card for you and using LLMs and AI trained on Eclipse’s platform, making recommendations even more personalized.

‍

In a future update, you will also be able to add coupons, loyalties, and debit cards to your Eclipse wallet, which would automatically trigger when you arrive at a specific location in real-time - on top of the credit card recommendation. Basically this allows your value-back at every transaction to compound across different forms of returns, which we will also make clear and transparent in our UI.

‍

A cool follow up idea is to allow users to add photos of these coupons or loyalties (codes / barcodes). So when it gets recommended at a location, you can just easily show and use it directly with the Eclipse app. Other random location-based recommendations for stuff like transit cards might also be possible as we begin to generalize the Eclipse wallet.

‍

Also, we’re looking into making an android Eclipse app and a web extension!

‍

--

‍

Thanks so much for reading! 🧡

‍

Luke and Mingchung from Eclipse

‍

‍

Share Article

Related Articles

All Articles

Reinventing Credit Hacking and Management

Learn how Eclipse is reinventing credit usage, and how we can help you save over $90 per month.
App
App
Technology
Technology
Product
Product

Behind Eclipse - The Technicals

An outline of the technical details of Eclipse for curious minds.
Technology
Technology

The Dilemma

We suffer from an oversupply of information and an undersupply of personalization.
App
App
Technology
Technology
Product
Product

About

Demo
Support
Blog

Blog

App
Technology
Product

Contact

info@eclipsecard.net
nathan@eclipsecard.net
krish@eclipsecard.net

‍
mingchung@eclipsecard.net
luke@eclipsecard.net

Social

LinkedIn
Youtube
‍
GitHub
‍
‍
© 2024 EclipseCard, Inc.
Privacy PolicyTerms & Conditions