Sign in

Craig Phares

@craigphares.bsky.social
60 followers 37 following 106 posts

Serial Maker

PostsRepliesMedia
Craig Phares @craigphares.bsky.social · 06/02/2026
Noise wave experiments #generativeart #creativecoding #algorithmicart
020
Craig Phares @craigphares.bsky.social · 06/02/2026
Taking this algorithm a little further with one line shapes. Keeping things monochromatic for now while figuring out the best results. Also managed to setup a nice workflow with no libraries. #generativeart #creativecoding #geometry
030
Craig Phares @craigphares.bsky.social · 01/02/2026
That's a wrap for #Genuary2026! Woke up today not knowing what to do. #Genuary is one of my favorite things. Fleshed out my own #retrowave style & hope to ride this momentum into a larger project. Big thanks to EditArt, Piter Pasma & the artists who contributed this year!
050
Craig Phares @craigphares.bsky.social · 01/02/2026
"Liquid Glass" Genuary Day 31: GLSL day. Create an artwork using only shaders. #genuary2026 #genuary #genuary30 #creativecoding Explore live on @editart_xyz 👇
130
Craig Phares @craigphares.bsky.social · 30/01/2026
"OUT OF ORDER" Genuary Day 30: Its not a bug, its a feature. (credit: @Unordered__list) #genuary2026 #genuary #genuary30 #glitchart Explore live on @editart_xyz 👇
151
Craig Phares @craigphares.bsky.social · 29/01/2026
"Polygon Neighborhood" Genuary Day 29: Genetic evolution and mutation. (credit: @monokai) Regular polygon mutations happen gradually. Each generation inherits from its neighbors. Made with p5.js @editart_xyz series in thread 👇 #genuary2026 #genuary #genuary29 #creativecoding
141
Craig Phares @craigphares.bsky.social · 28/01/2026
"Bug in the Vaporwave" Genuary Day 28: No libraries, no canvas, only HTML elements. (credit: @pifragile) Something is wrong with the system. Made with HTML & CSS. #genuary2026 #genuary #genuary28 #vaporwave Click & drag on @editart_xyz (link in thread) 👇
112
Craig Phares @craigphares.bsky.social · 27/01/2026
"Curious Amoeba" Genuary Day 27 Lifeform. A shape or structure that behaves as if it’s alive or growing. (credit: @ManuelLarino) A SmoothLife simulation made with p5.js. See it move on @editart_xyz (link in thread) 👇 #genuary2026 #genuary #genuary27 #genartclub
181
Craig Phares @craigphares.bsky.social · 26/01/2026
"Hexaglitch" Genuary Day 26: Recursive Grids. Split the canvas into a grid of some kind and recurse on each cell again and again. (@pifragile) Continuing my obsession with hexagons. Made with p5.js #genuary2026 #genuary #genuary26 #genartclub @editart_xyz link in thread 👇
162
Craig Phares @craigphares.bsky.social · 25/01/2026
"Space Filler D20" Genuary Day 25: Organic Geometry. Forms that look or act organic but are constructed entirely from geometric shapes. (@manuellarino) Made with p5.js #genuary2026 #genuary #genuary25 #genartclub See it in action on @editart_xyz link in thread 👇
152
Craig Phares @craigphares.bsky.social · 24/01/2026
"Neon Homage à Vera Molnar" Genuary Day 24: Perfectionist’s nightmare. Inspired by Vera Molnar's algorithmic drawings. Made with p5.js. #genuary2026 #genuary #genuary24 #genartclub See more on @editart_xyz link in thread 👇
2162
Craig Phares @craigphares.bsky.social · 23/01/2026
"Lofi Canvas" Genuary Day 23: Transparency. Explore the concept of transparency. Working in Photoshop, but the shapes won't stop moving. Made with p5.js. #genuary2026 #genuary #genuary23 #genartclub @editart_xyz link in thread 👇
111
Craig Phares @craigphares.bsky.social · 22/01/2026
"Plottable Planarwave" Genuary Day 22: Pen plotter ready. A single line traversing a noise field, upgraded to render different shapes. Outputs to a plottable image. Made with pure JavaScript. #genuary2026 #genuary #genuary22 #genartclub @editart_xyz link in thread 👇
182
Craig Phares @craigphares.bsky.social · 21/01/2026
"Neon Bauhaus" Genuary Day 21 Bauhaus Poster. Create a poster design inspired by the German art school Bauhaus. Made with p5.js #genuary2026 #genuary #genuary21 #genartclub @editart_xyz link in thread 👇
1143
Craig Phares @craigphares.bsky.social · 20/01/2026
"Planarwave" Genuary Day 20: One line. An artwork that is made of a single line only. A line traversing a noise field, retrowaved. Made with p5.js. #genuary2026 #genuary #genuary20 #genartclub @editart_xyz link in thread 👇
121
Craig Phares @craigphares.bsky.social · 19/01/2026
Pixellated Genuary Day 19: 16x16 #genuary2026 #genuary #genuary19 #genartclub @editart_xyz link in thread 👇
101
Craig Phares @craigphares.bsky.social · 18/01/2026
"Lightcycle" Genuary Day 18: Unexpected path. Draw a route that changes direction based on one very simple rule. Tron lightcycles that try not to collide. The only way to win the game is not to play. #genuary2026 #genuary #genuary18 #genartclub @editart_xyz link in thread 👇
141
Craig Phares @craigphares.bsky.social · 17/01/2026
"Mac OS 7 Wallpaper" Genuary Day 17: Wallpaper group. There are only 17 ways to cover a plane with a repeating pattern. Choose your favorite. I chose all 17. Some OG ❤️ for MacOS7. Made with p5.js #genuary2026 #genuary #genuary17 #genartclub @editart_xyz link in comments 🔗
131
Craig Phares @craigphares.bsky.social · 16/01/2026
"Neon Turmite" Genuary Day 16: Order and disorder. An ordered hexagonal grid is the home of a disorderly turmite. The turmite will perform its actions until it's stuck in a loop or 2s have passed. #genuary2026 #genuary #genuary16 #genartclub @editart_xyz link in comments 🔗
131
Craig Phares @craigphares.bsky.social · 15/01/2026
"Shadow Mask Glitch" Genuary Day 15: Create an invisible object where only the shadows can be seen. A triangle artifact casts its shadow over a glitching CRT video display. Made with p5.js. #genuary2026 #genuary #genuary15 #genartclub @editart_xyz link in comments 🔗
161
Craig Phares @craigphares.bsky.social · 14/01/2026
Packed Neon Triangles Genuary Day 14: Everything fits perfectly. Made with p5.js. #genuary2026 #genuary #genuary14 #genartclub @editart_xyz link in comments
141
Craig Phares @craigphares.bsky.social · 13/01/2026
Mirror Genuary Day 13: Self portrait. Panels learn from a rudimentary GAN how to tilt themselves towards a light source to generate tints and shades. Made with p5.js. #genuary2026 #genuary #genuary13 #genartclub Available on @editart_xyz (link in comments)
151
Craig Phares @craigphares.bsky.social · 12/01/2026
Retroboxes 🧊🧊🧊 Genuary Day 12: Boxes only. Made with p5.js #genuary2026 #genuary #genuary12 #genartclub @editart_xyz link in comments 🔗
111
Craig Phares @craigphares.bsky.social · 12/01/2026
Quinewave Genuary Day 11 Quine. A Quine is a form of code poetry, it’s a computer program that outputs exactly its own source code. First time making a Quine! #genuary2026 #genuary #genuary11 #genartclub @editart link in comments 🔗
121
Craig Phares @craigphares.bsky.social · 10/01/2026
Polarwave Genuary Day 10: Polar coordinates. Synthwave grid wrapped into polar coordinates around a rolling icosohedron. Made with p5.js. #genuary2026 #genuary #genuary10 #genartclub
132
Craig Phares @craigphares.bsky.social · 09/01/2026
Hexatomaton Genuary Day 9 Crazy automaton. Cellular automata with crazy rules. Rolls a D20 to pick from a curated set of CA rules. Rules are executed on a random hexagonal grid. Made with p5.js. #genuary2026 #genuary #genuary9 #genartclub
131
Craig Phares @craigphares.bsky.social · 09/01/2026
Tronopolis Genuary Day 8 A City. Create a generative metropolis. #genuary2026 #genuary #genuary8 #genartclub
141
Craig Phares @craigphares.bsky.social · 08/01/2026
Neon Triangle XOR Genuary Day 7 Boolean algebra. Get inspired by Boolean algebra, in any way. A variety of XOR formulas are used to render neon triangles on a grid. Made with p5.js. #genuary2026 #genuary #genuary7 #genartclub
1143
Craig Phares @craigphares.bsky.social · 06/01/2026
Neon Light Genuary Day 6 Lights on/off. Make something that changes when you switch on or off the “digital” lights. Click the triangle to turn the lights on and off. #genuary2026 #genuary #genuary6 #genartclub
101
Craig Phares @craigphares.bsky.social · 05/01/2026
"GAN Writer" Genuary Day 5: Write “Genuary”. Avoid using a font. This sketch uses a rudimentary GAN with a generator and discriminator to iteratively improve its ability to write "GENUARY" over time. #genuary2026 #genuary #genuary5 #genartclub
111
Craig Phares @craigphares.bsky.social · 04/01/2026
"20D Arcade" 20 sided dice, made with p5.js on a 144p screen. Genuary Day 4 Lowres. An image or graphic with low resolution, where details are simplified or pixelated. #genuary2026 #genuary #genuary4 #genartclub
121
Craig Phares @craigphares.bsky.social · 03/01/2026
VogelWave Genuary Day 3: Fibonacci forever Made with p5.js and my CRT shader. #genuary2026 #genuary #genuary3 #genartclub
150
Craig Phares @craigphares.bsky.social · 02/01/2026
Genuary Day 2 - Twelve principles of animation "Chase The Bouncing Sun" #genuary2026 #genuary #genuary2 #genartclub
140
Craig Phares @craigphares.bsky.social · 02/01/2026
Happy GENUARY! Day 1: One color, one shape. I'll be focusing on Retrowave art this year. Everything passes through a shader to make things extra cathode ray tubey. Day 1 draws a random triangle with 1 color. #genuary2026 #genuary #genuary1 #genartclub
130
Craig Phares @craigphares.bsky.social · 04/11/2025
Rothko meets Lichtenstein #generative #genartclub
020
Craig Phares @craigphares.bsky.social · 04/11/2025
Discovered that SVGs have a mix-blend-mode that's widely supported! No more manually mixing colors 😅 Added two-page spreads and gradients. Will try to add some non-rectilinear shapes next. #generative #genartclub
0111
Craig Phares @craigphares.bsky.social · 29/10/2025
No libraries. Pure JavaScript to SVG. Love me some Benday dots. 🩵🩷💛🖤 #generative #genartclub
010
Craig Phares @craigphares.bsky.social · 15/10/2025
Revisiting old code. Will try to get this library-free and SVG-friendly. #generative #genartclub
030
Craig Phares @craigphares.bsky.social · 11/10/2025
Channeling my inner Vera Molnár today. #generative #genartclub
092
Craig Phares @craigphares.bsky.social · 03/04/2025
I built a tiny macOS menu bar app medium.com/@craigphares...
medium.com
How I Built and Launched a Micro App in 3 Days With the Help Of AI
Incorporating artificial intelligence into my development toolchain helped me to rapidly build ShinyTimer, a tiny macOS menu bar app.
110
Craig Phares @craigphares.bsky.social · 31/01/2025
Day 31: Pixel sorting. Pixel sorted ANSITUNES. ASCII Charset: ≡☼─█▀▄▌▐ #genuary2025 #genuary31 #genuary #generative #genartclub
090
Craig Phares @craigphares.bsky.social · 31/01/2025
Day 30: Abstract map. ASCII Rogue maps. #genuary2025 #genuary30 #genuary #generative #genartclub
070
Craig Phares @craigphares.bsky.social · 29/01/2025
Day 29: Grid-based graphic design. PETSCII Charset: █ #genuary2025 #genuary29 #genuary #generative #genartclub
0180
Craig Phares @craigphares.bsky.social · 28/01/2025
Day 28: Infinite Scroll. Lately, all my art is an infinite scroll, so I had a little fun with this one. ASCII Charset: █┌┐└┘─│▌▀/\ #genuary2025 #genuary28 #genuary #generative #genartclub
151
Craig Phares @craigphares.bsky.social · 27/01/2025
Day 27: Make something interesting with no randomness or noise or trig. Combining 2 logic fractals: (x | y) % 7 and (x | y) % 29. ASCII Charset: •◘ #genuary2025 #genuary27 #genuary #generative #genartclub
0123
Craig Phares @craigphares.bsky.social · 26/01/2025
Day 26: Symmetry. ASCII Charset: ░▒▓▄▌ #genuary2025 #genuary26 #genuary #generative #genartclub
0215
Craig Phares @craigphares.bsky.social · 26/01/2025
Day 25: One line that may or may not intersect itself ASCII Charset: │┐└─┘┌█ #genuary2025 #genuary25 #genuary #generative #genartclub
091
Craig Phares @craigphares.bsky.social · 24/01/2025
Day 24: Geometric art - pick either a circle, rectangle, or triangle and use only that geometric shape. PETSCII Charset: ●○ #genuary2025 #genuary24 #genuary #generative #genartclub
0121
Craig Phares @craigphares.bsky.social · 23/01/2025
Day 23: Inspired by brutalism. PETSCII Charset: █◥ #genuary2025 #genuary23 #genuary #generative #genartclub
1101
Craig Phares @craigphares.bsky.social · 22/01/2025
Day 22: Gradients only. ASCII Charset: ░▒▓█ #genuary2025 #genuary22 #genuary #generative #genartclub
091