's Avatar

@cameronfoxly.bsky.social

87 Followers  |  29 Following  |  24 Posts  |  Joined: 21.11.2024  |  1.9261

Latest posts by cameronfoxly.bsky.social on Bluesky

You can't just drop "turn of the century" on an old man like that!

I went on a lot of "ancient" tangents trying to find a tool that could help me, and durdraw.org , based on Aciddraw almost did the trick, but was just too buggy. But that site πŸ‘†reminds me how much I miss the old internet:)

26.09.2025 02:38 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

Thank you, Katie! It would warm my heart if you made some ascii art with my tool! ❀️

26.09.2025 00:07 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Preview
GitHub - CameronFoxly/Ascii-Motion: A modern web application for creating and animating ASCII art A modern web application for creating and animating ASCII art - CameronFoxly/Ascii-Motion

Thanks for reading! And if you've made it this far, please go try Ascii Motion and tell me what you think! It would make my day if someone opened an issue in the repo of my very first app to complain about how they hate it ❀️: github.com/CameronFoxly...

25.09.2025 23:35 β€” πŸ‘ 11    πŸ” 0    πŸ’¬ 2    πŸ“Œ 0

This is such an exciting time to be a technically-minded designer! Code was always a barrier for me getting my work into digital spaces, but now I can prototype things like one of those fancy "creative technologists" I always considered magicians!

25.09.2025 23:35 β€” πŸ‘ 8    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Video thumbnail

And with this tool that I just willed into existence in under a week of post-kids-bedtime copilot sessions, I was immediately able to make the teaser for the CLI that GitHub posted a few days before the launch to help build some hype.

25.09.2025 23:35 β€” πŸ‘ 9    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Video thumbnail

But, I couldn't stop there! Now that I had a taste of the ASCII bug, I knew that I needed to make a better tool for making ASCII animation. So, I spent a handful of nights with Copilot spinning up an MVP of my very first app: www.ascii-motion.app (desktop only for now)

25.09.2025 23:35 β€” πŸ‘ 21    πŸ” 3    πŸ’¬ 2    πŸ“Œ 0
Video thumbnail

I handed that file off to the aggressively helpful Andy Feller on the CLI eng team, and he was able to shoehorn that in to the product with some expert refactoring making sure that the colors worked with the CLI's color theme management across color modes. Light mode FTW!

25.09.2025 23:35 β€” πŸ‘ 4    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Video thumbnail

Because I was able to show copilot the tech stack for building the CLI (React for the CLI with INK, using Typescript), and tell it to create an export feature for my app that would save a self contained .tsx file with the character and color data.

25.09.2025 23:35 β€” πŸ‘ 4    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Video thumbnail

Then, with my trusty Copilot agent mode in VSCode, I vibe-coded myself a simple web tool to do what I wanted to do: ingest .txt files as frames, set the duration of frames and test playback, and add and preview different terminal's default ANSI colors.

25.09.2025 23:35 β€” πŸ‘ 8    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
ASCII Draw Studio UI with Copilot CLI welcome screen in black and white

ASCII Draw Studio UI with Copilot CLI welcome screen in black and white

The best tool I could find was asciiart.eu's ASCII Draw Studio, that let me "draw" on a canvas in one color with no animation, and export out .txt files. Not exactly what I needed, but close enough to get started.

25.09.2025 23:35 β€” πŸ‘ 9    πŸ” 1    πŸ’¬ 1    πŸ“Œ 0
Screenshot of table showing ANSII escape codes for terminal colors

Screenshot of table showing ANSII escape codes for terminal colors

And I learned from the engineers that it would need to be utilizing the 4-bit ANSI escape code colors to be universally supported and be accessible. These are rendered differently in every terminal, because of course! This was going to be trickier than I thought! 😬

25.09.2025 23:35 β€” πŸ‘ 6    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

I quickly realized that there really aren't great off the shelf tools for making this sort of thing. Lots of clunky half-baked tools for static images, or fancy shader effects for animation with no manual frame-by-frame editing.

25.09.2025 23:35 β€” πŸ‘ 4    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Preview
bender from futurama is asking how hard it can be ALT: bender from futurama is asking how hard it can be

When the CLI team asked for a ASCII banner, I knew I wanted it to be animated and utilize some color, but had zero experience with ASCII art. I thought, "it's just text, how hard can it be???"

25.09.2025 23:35 β€” πŸ‘ 4    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Video thumbnail

The public preview of Github Copilot CLI launched today, and if you install it, you'll be welcomed by little ASCII art welcome banner that I animated. Creating it ended up being great example of how vibe-coding has entered my toolbelt. Nerdy deets in 🧡...

25.09.2025 23:35 β€” πŸ‘ 81    πŸ” 18    πŸ’¬ 4    πŸ“Œ 4

Really depends on how complex the svg is. They’re within the same order of magnitude in this specific case, but svgs have the advantage of being able to be styled inline and crisp at any context or screen resolution. But a complex svg would get too big quick, and I’d fall back to video

14.02.2025 00:37 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Video thumbnail

S/O to @deanb.bsky.social for wrangling the code on this. The GitHub Copilot design engineering team is killing it with this kind of attention to delightful details. I’m super excited to see more polish like this as the product matures. Thanks for following along!

11.02.2025 16:56 β€” πŸ‘ 7    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

This Director/Actor setup allows for a separation of concerns, making it easy to extend and add new animations, while also allowing us to maintain full control of timings and transitions, creating an interactive Copilot experience - fun to watch and easy to maintain!

11.02.2025 16:55 β€” πŸ‘ 3    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Video thumbnail

Once the Director knows which animation should be playing, it delegates the execution of this animation to the Actor. The Actor is a smaller and much more simple state machine that breaks each animation into 4 stages: 1) Idle, 2) Starting, 3) Running, 4) Ending

11.02.2025 16:55 β€” πŸ‘ 5    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Flow chart of animation states for the copilot animation controller, showing states and variable flags triggering each state.

Flow chart of animation states for the copilot animation controller, showing states and variable flags triggering each state.

The Director calls the shots. It evaluates conditions like if there’s an error, if copilot is 'thinking' and even if there will be strong positive or negative sentiment in Copilots reply. The Director is driven by 3 main components: AnimationType, OnFinish, and loopAnimation.

11.02.2025 16:54 β€” πŸ‘ 5    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

Playback is then controlled with javascript via 2 state machines. The first controls which animation to play and when. You can think of this as this state machine as the β€˜Director’.
The second controls how the animation is played. You can think of this piece as the β€˜Actor’

11.02.2025 16:53 β€” πŸ‘ 5    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Video thumbnail

Making them into SVG sprite sheets meant we could style them for color mode support and animate them entirely with pure CSS. Lightweight, flexible, universally supported, and fast!

11.02.2025 16:53 β€” πŸ‘ 5    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Sprite sheet of copilot head animation of a spinning dance/jump.

Sprite sheet of copilot head animation of a spinning dance/jump.

But video files, gifs, or third-party js libraries are all too heavy and limiting for the product, so we took a page from old school game design and converted each animation into image sequences, autotraced them into SVGs in Illustrator, and laid them out into sprite sheets.

11.02.2025 16:52 β€” πŸ‘ 7    πŸ” 0    πŸ’¬ 2    πŸ“Œ 0
Video thumbnail

To make the animations themselves, I modeled a 3D version of the Copilot icon in Blender and animated them in After Effects, to build out a video library of potential responses:

11.02.2025 16:52 β€” πŸ‘ 6    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Video thumbnail

If you’ve used GitHub Copilot chat on GitHub.com/copilot recently, you may have noticed some new life breathed into the Copilot chat avatar with interactive 3D character animations. Let's do a deep dive 🧡on how we hacked it together for the front end πŸ€“β€™s out there…

11.02.2025 16:51 β€” πŸ‘ 48    πŸ” 12    πŸ’¬ 3    πŸ“Œ 6

@cameronfoxly is following 20 prominent accounts