I'm a web developer and ui/ux designer who focuses on crafting digital experiences that are both visually engaging and easy to use. I enjoy working in the space where creativity meets problem-solving — where imagination becomes something tangible and functional. I use my versatile experiences in visual design, motion design, illustration, and web development to create unique designs and interfaces that truly stand out.
I’m currently finishing my BFA in Digital Media & Design at the University of Connecticut, where I concentrate in Web and Interactive Media. I’ve been exploring the world of design for as long as I can remember — starting with simple graphic design projects in middle school and growing into brand design, illustration, motion, ui/ux, and web development over the years, just to name a few. I’ve been lucky to learn from some incredible mentors along the way, and those early experiences really shaped how I think about creativity: not just as self-expression, but as a way to communicate ideas clearly and meaningfully.
When I work on a project, I like to approach it with curiosity and experimentation. I’ve always enjoyed finding unique, unexpected ways to design something — solutions that still feel intuitive and user-focused, but have a bit of personality to them. Whether it’s developing a polished web app or building out a visual identity, I love the process of shaping ideas into something tangible and functional. That balance between creativity and problem-solving is where I do my best work.
Outside of design, I’m almost always working on something creative — drawing, making music, writing, or exploring photography whenever I travel. Those different outlets all feed into how I think and create; they keep me curious and constantly looking for new perspectives. I’ve found that no matter what I’m making, it’s the act of creating — of trying something new and seeing it come to life — that keeps me inspired.
I have always loved nature, but I often found myself overwhelmed by the details of plant care. Each species seems to come with its own rules; how often to water, how much sunlight is enough, when to re-fertilize, and how to recognize when something is wrong. All of these factors deterred me from getting some I would just eventually kill, despite my desire to grow plants myself. This personal struggle led me to create Canopy. As a plant lover and designer, I wanted to create something that would make caring for plants feel less intimidating and more inviting. Canopy is an app designed to help people bring more nature into their daily lives by simplifying the process of plant care. With Canopy, users can take a picture of any plant and receive instant identification along with tailored care instructions. Beyond just information, the app encourages an ongoing relationship between the user and their plants: plants can be saved to a personal collection, their growth tracked over time, and their health checked if something seems off. Users can also add notes, set reminders for watering or fertilizing, and build a personalized record of their plants.
I wanted to design a tool that transforms plant care from something stressful into something approachable, rewarding, and even joyful. By lowering the barrier to entry, Canopy not only supports those who already enjoy plants but also invites new people to experience the benefits of caring for living things in their own spaces. My hope is that Canopy encourages users to see plants not just as decorations, but as living companions that enrich our environments, connect us to nature, and remind us to slow down and nurture growth in small, meaningful ways.
I have always loved game design as a practice, both the visual aspects and the coding/logical aspects. With the rise of publicly accessible LLMs, I had an idea for a development project that I wanted to begin working on just to stretch my skills and explore the possibilities of AI in game-like experiences. This project, while still very much under development, is a modern take on classic text adventure games. As someone who loves the experience of Dungeons and Dragons, I wanted to try and combine that classic text-adventure style with modern AI models to create a freedom-heavy DnD-style game experience where the player is given total control over their actions, words, and future. They are given absolute and total freedom to be whoever they want in this world, and the NPCs and world will adapt and react to however the player chooses to portray themselves.
On the technical side of things, I am using a combination of HTML, CSS, JavaScript, JSON, and Ollama to achieve this prototype. Firstly, I designed a completely custom HTML Canvas for the classic pixel art style to be pixel-perfect, with the UI also being fully functional. Then, in the actual game logic, the information systems work with a combination of JavaScript logic pulling information and saving it to either JSON files or Markdown files. There are many of both file types that contain various information, from world lore to game rules to map nodes and more. Now for the actual LLM usage, there are a few. The goal is to have multiple different LLMs with different functions act together as a Dungeon Master of sorts. For example, the NPC bot is fed that NPC's character sheet, the player's character sheet, the world lore and rules, and some basic contextual instructions. This is only temporary while the basic game loop is being developed, as I am planning on implimenting both a RAG system and other contextual tools for the LLMs to have smaller, consistent knowledge chunks. The NPCs also have extensive memories, with current conversations being saved to a JSON, and older interactions being summerized and appended as memory chunks.
Here are a few of the assets/screens I designed from scratch for the interface and experience. Some of them (like the title & stats screen) are still being designed fully, but this is the general look and feel I am striving for.
Here is a dev test of my current version - it does not have any of the visuals currently while I still work on the logic and functionality. In it you can see how the character creator leads into the world introduction and NPC interaction functions. In this beginning loop, the player approaches the gate of a city, and has to talk to and convince the gate guard to let them into the city, which then triggers the location change as they enter and an introduction to the city.
Ready to bring your vision to life? I'd love to hear about your project and discuss how we can create something amazing together.
I typically respond within 24 hours. Looking forward to hearing from you!
2020-2024
Company description goes here...