ECHEVERIA

WHAT IS ECHEVERIA?

Echeveria is a social platform designed around recording game statistics. Users create social groups to share their personal and collective game data—wins, losses, winstreaks, time spent playing games—with their friends. It is built with swift + swiftUI for front end, and MonngoDB + Realm DeviceSync for back end.

ROLES & RESPONSIBILITIES

I independently developed this project, from problem identification, project brainstorming, development, testing, release, and marketing. I used skills in system design, OOP, various Apple frameworks, MongoDB, and backend database management to put together this project.

Promo

A better way to play games, together.

Metadata

iOS Application

2023 > PRESENT

Tags

visualizer swift siwftUI mongoDB social-network ios-app realmSwift mongoDB-atlas

ALL ABOUT ECHEVERIA

Echeveria is a social platform where friends can create groups to log and share statistics about the games they play together. It is designed to keep track of wins and losses, among other social, ‘bragging right’ data points for groups of friends. The core loop of the app revolves around logging game data: after finishing a game with a group of friends (ie. spikeball, super smash bros. etc), someone in the group will record the win, players, and other game-specific data. This is automatically uploaded to the group for everyone to view and is included in a variety of intractable data visualizations to view the group’s full data. Users also have individual profiles, which allow them to manage their groups, add friends, and view game data aggregated across all their groups. There are many additional customizations to tailer the app / logging experience for specific social groups and people.

TECHNICAL DESCRIPTION

Echeveria is built from Swift and SwiftUI on the front end and MongoDB and Realm DeviceSync on the back end. The app follows the MVVM model for all of its object modeling and app flow structuring, however, it uses many features from DeviceSync to extend that design to the backend as well. This means that the app is fully reactionary and automatically syncs all user data across devices. User sign in and authentication is the combination of MongoDB account registration and userDefaults local storage on iPhone. The app provides basic account control, including account modification and deletion. The social network is based off a permissioning system that fetches and downloads the correct data from other users / groups at the right time so users can view data not directly owned by them, but cannot read, write, or access that data otherwise. All other work, including visualization computations / interactions, are done on device in native swift.

Echeveria was created as both a social and empirical alternative to other ways of keeping track of game data. Having spent much time playing competitive games with my friends, the question of ‘who exactly was best’ proved evasive, and while tools like excel spreadsheets were great for logging simple statistical representations of skill, they lacked both the nuance to describe game victories and the social dimension of easily viewing that data with friends. Echeveria, like excel, offers the tools to objectively record, view, and gain insights from game data, while still allowing the flexibility to describe game experience and other relevant, non-empirical measures. Layering these features over the framework of a social networking platform makes this unique game logging experience inherently collaborative and social.

PROBLEM IDENTIFICATION & DESIGN PROCESS