Skip to content
View csark0812's full-sized avatar

Block or report csark0812

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
csark0812/README.md

Christopher Sarkissian

I'm a mobile engineer at Popl who builds tools that make complex systems easier to understand, test, and operate.

My work spans mobile infrastructure, state tooling, open-source libraries, and agent-native engineering workflows. The recurring goal is the same: expose the real contract, make it testable, and give people a small interface they can trust.

At Popl

I work on Popl's React Native application across product and engineering boundaries. My work includes owning a ground-up navigation rearchitecture, resolving problems at their underlying integration points, and applying agentic workflows to shorten debugging, testing, and delivery loops.

The details of that codebase are private; the public projects below show how I approach similar classes of complexity.

Selected open-source work

Project What it makes easier
expo-targets Building native extensions and targets—widgets, App Clips, share extensions, and more—inside Expo projects
zustand-expo-devtools Inspecting Zustand state, actions, and history through Expo DevTools
zustand-getters Expressing reactive derived state with ordinary JavaScript getters
skeleton Keeping the documentation, skills, and source-of-truth contracts agents depend on internally consistent
toolbox Reusing engineering workflows such as Council, Grill, and Refactor Companion across coding agents
react-native-progressive-blur-view Adding a focused progressive-blur primitive to React Native interfaces

Complex core, calm surface

Mobile platforms, state systems, and agent workflows all hide meaningful complexity. I prefer to name that complexity and give it one clear owner instead of accumulating symptom-level fixes. The result should be explicit and testable internally, but small and unsurprising for the person using it. That principle guides both my work at Popl and the tools I build independently.

Evidence from use

expo-targets monthly downloads Zustand Expo DevTools monthly downloads

"Thank you for the amazing library. I implemented widgets and love it already!" — kitze on expo-targets

"I've been using @csark0812/zustand-expo-devtools and it works perfectly with the following environment." — melnady-freelancer

These are public implementation reports, not company endorsements or production claims. The open-source adoption ledger records the dated metrics, integrations, sources, and limitations behind each claim.

Background

I studied Computer Science and Psychology at Santa Clara University and graduated summa cum laude. I like learning difficult systems, understanding the people operating them, and distilling what I learn into tools and explanations other people can use.

Pinned Loading

  1. expo-targets expo-targets Public

    Expo config plugin for Apple targets and Android app extensions

    TypeScript 96 1

  2. zustand-expo-devtools zustand-expo-devtools Public

    Zustand state inspection and time-travel debugging for Expo apps

    HTML 94 2

  3. skeleton skeleton Public

    SSOT audit CLI for the documentation and skills agent workflows depend on

    TypeScript

  4. toolbox toolbox Public

    Portable engineering workflows for Cursor, Claude Code, and Codex

    JavaScript

  5. zustand-getters zustand-getters Public

    Reactive JavaScript getters for Zustand

    TypeScript 2

  6. react-native-progressive-blur-view react-native-progressive-blur-view Public

    Cross-platform progressive blur views for React Native

    TypeScript 1