I wanted to fit a large STL in my printer without guessing at the right angle.
What I built
We adapted an existing auto-rotation script and gave it a UI so we could use it without the command line.
Local project
Currently exploring
AI-powered projects
Exploring how AI can become part of useful software, from small experiments to everyday tools.
Game modding
I’ve made ultrawide mods for several games, including Yellow Taxi Goes Vroom and Escape from Ever After. AI makes it easier to find a starting point when I’m figuring out how a game handles its display.
Decomps & recomps
An interest in game decompilation and recompilation: understanding how games work and how they can run on new platforms.
02 / The story so far
A little about me
I’ve always liked figuring out how things work.
01 / Where it started
Exploring Android and custom software.
As a kid, I was curious about what my devices could do beyond their original settings. With my first Android phone, that curiosity took me to the XDA Developers forums.
I tried custom kernels, CyanogenMod, MIUI, and my own themes. I liked having more control over the hardware—and figuring things out along the way.
Custom kernels / ROMs / Themes
02 / Santa Clara University
My education at Santa Clara University.
In college, I built Gears, an Android OBD2 app. I contributed to the open-source Bluetooth connection code that helped bring vehicle fault codes onto a phone.
Later, a friend and I made an Android game, Future Frog. I graduated from Santa Clara University with a degree in Computer Science & Engineering.
I enjoy cars, motorcycles, and reading. My faith is important to me, and I like learning about the world and reflecting on it.
Cars / Motorcycles / Reading / Faith
← → Follow your curiosity. Hover, tap, or use the arrow keys to explore.
03 / The founder’s workshop
Beyond the screen. Into your hands.
Materius is where my interest in making things takes physical form. I’m building a 3D printing and advanced manufacturing business around functional parts, considered materials, and the journey from a digital design to something you can hold.
0 V D / Q 8 $ L 3 Y G { T B + O 6 @ J 1 W E [ R 9 & M 4 Z H } U C - P 7 # K 2 X F ] S A * N 5 ! I 0 V D / Q 8 $ L 3 Y G { T B + O 6 @ J 1 W E [ R 9 & M 4 Z H } U C - P 7 # K 2 X F ] S A * N 5 ! I 0 V D / Q 8 $ L 3 Y G { T B + O 6 @ J 1 W E [ R 9 & M 4 Z H } U C - P 7 # K 2 X F ] S A * N 5 ! I 0 V D
H 0 W F { U D [ S B - Q 9 * O 7 $ M 5 @ K 3 Z I 1 X G } V E ] T C / R A + P 8 & N 6 # L 4 ! J 2 Y H 0 W F { U D [ S B - Q 9 * O 7 $ M 5 @ K 3 Z I 1 X G } V E ] T C / R A + P 8 & N 6 # L 4 ! J 2 Y H 0 W F { U D [ S B - Q 9 * O 7 $ M 5 @ K 3 Z I 1 X G } V E ] T C / R A + P 8 & N 6 # L 4 ! J 2 Y H 0 W
Y I 2 Z J 3 ! K 4 @ L 5 # M 6 $ N 7 & O 8 * P 9 + Q A - R B / S C [ T D ] U E { V F } W G 0 X H 1 Y I 2 Z J 3 ! K 4 @ L 5 # M 6 $ N 7 & O 8 * P 9 + Q A - R B / S C [ T D ] U E { V F } W G 0 X H 1 Y I 2 Z J 3 ! K 4 @ L 5 # M 6 $ N 7 & O 8 * P 9 + Q A - R B / S C [ T D ] U E { V F } W G 0 X H 1 Y I 2
2 ! L 6 & P A / T E } X I 3 @ M 7 * Q B [ U F 0 Y J 4 # N 8 + R C ] V G 1 Z K 5 $ O 9 - S D { W H 2 ! L 6 & P A / T E } X I 3 @ M 7 * Q B [ U F 0 Y J 4 # N 8 + R C ] V G 1 Z K 5 $ O 9 - S D { W H 2 ! L 6 & P A / T E } X I 3 @ M 7 * Q B [ U F 0 Y J 4 # N 8 + R C ] V G 1 Z K 5 $ O 9 - S D { W H 2 ! L
J 5 & Q C { X J 5 & Q C { X J 5 & Q C { X J 5 & Q C { X J 5 & Q C { X J 5 & Q C { X J 5 & Q C { X J 5 & Q C { X J 5 & Q C { X J 5 & Q C { X J 5 & Q C { X J 5 & Q C { X J 5 & Q C { X J 5 & Q C { X J 5 & Q C { X J 5 & Q C { X J 5 & Q C { X J 5 & Q C { X J 5 & Q C { X J 5 & Q C { X J 5 & Q C { X J 5 &
! N A ] X K 7 - U H 4 & R E 1 @ O B { Y L 8 / V I 5 * S F 2 # P C } Z M 9 [ W J 6 + T G 3 $ Q D 0 ! N A ] X K 7 - U H 4 & R E 1 @ O B { Y L 8 / V I 5 * S F 2 # P C } Z M 9 [ W J 6 + T G 3 $ Q D 0 ! N A ] X K 7 - U H 4 & R E 1 @ O B { Y L 8 / V I 5 * S F 2 # P C } Z M 9 [ W J 6 + T G 3 $ Q D 0 ! N A
4 * T H 5 + U I 6 - V J 7 / W K 8 [ X L 9 ] Y M A { Z N B } ! O C 0 @ P D 1 # Q E 2 $ R F 3 & S G 4 * T H 5 + U I 6 - V J 7 / W K 8 [ X L 9 ] Y M A { Z N B } ! O C 0 @ P D 1 # Q E 2 $ R F 3 & S G 4 * T H 5 + U I 6 - V J 7 / W K 8 [ X L 9 ] Y M A { Z N B } ! O C 0 @ P D 1 # Q E 2 $ R F 3 & S G 4 * T
L A } @ Q F 4 + V K 9 { ! P E 3 * U J 8 ] Z O D 2 & T I 7 [ Y N C 1 $ S H 6 / X M B 0 # R G 5 - W L A } @ Q F 4 + V K 9 { ! P E 3 * U J 8 ] Z O D 2 & T I 7 [ Y N C 1 $ S H 6 / X M B 0 # R G 5 - W L A } @ Q F 4 + V K 9 { ! P E 3 * U J 8 ] Z O D 2 & T I 7 [ Y N C 1 $ S H 6 / X M B 0 # R G 5 - W L A }
# S I 8 { @ R H 7 ] ! Q G 6 [ Z P F 5 / Y O E 4 - X N D 3 + W M C 2 * V L B 1 & U K A 0 $ T J 9 } # S I 8 { @ R H 7 ] ! Q G 6 [ Z P F 5 / Y O E 4 - X N D 3 + W M C 2 * V L B 1 & U K A 0 $ T J 9 } # S I 8 { @ R H 7 ] ! Q G 6 [ Z P F 5 / Y O E 4 - X N D 3 + W M C 2 * V L B 1 & U K A 0 $ T J 9 } # S I
6 ] @ S J A 1 * W N E 5 [ ! R I 9 0 & V M D 4 / Z Q H 8 } $ U L C 3 - Y P G 7 { # T K B 2 + X O F 6 ] @ S J A 1 * W N E 5 [ ! R I 9 0 & V M D 4 / Z Q H 8 } $ U L C 3 - Y P G 7 { # T K B 2 + X O F 6 ] @ S J A 1 * W N E 5 [ ! R I 9 0 & V M D 4 / Z Q H 8 } $ U L C 3 - Y P G 7 { # T K B 2 + X O F 6 ] @
N F 7 } & W O G 8 0 * X P H 9 1 + Y Q I A 2 - Z R J B 3 / ! S K C 4 [ @ T L D 5 ] # U M E 6 { $ V N F 7 } & W O G 8 0 * X P H 9 1 + Y Q I A 2 - Z R J B 3 / ! S K C 4 [ @ T L D 5 ] # U M E 6 { $ V N F 7 } & W O G 8 0 * X P H 9 1 + Y Q I A 2 - Z R J B 3 / ! S K C 4 [ @ T L D 5 ] # U M E 6 { $ V N F 7
& X Q J C 5 { & X Q J C 5 { & X Q J C 5 { & X Q J C 5 { & X Q J C 5 { & X Q J C 5 { & X Q J C 5 { & X Q J C 5 { & X Q J C 5 { & X Q J C 5 { & X Q J C 5 { & X Q J C 5 { & X Q J C 5 { & X Q J C 5 { & X Q J C 5 { & X Q J C 5 { & X Q J C 5 { & X Q J C 5 { & X Q J C 5 { & X Q J C 5 { & X Q J C 5 { & X Q
8 2 [ $ X R L F 9 3 ] & Y S M G A 4 { * Z T N H B 5 } + ! U O I C 6 0 - @ V P J D 7 1 / # W Q K E 8 2 [ $ X R L F 9 3 ] & Y S M G A 4 { * Z T N H B 5 } + ! U O I C 6 0 - @ V P J D 7 1 / # W Q K E 8 2 [ $ X R L F 9 3 ] & Y S M G A 4 { * Z T N H B 5 } + ! U O I C 6 0 - @ V P J D 7 1 / # W Q K E 8 2 [
P K F A 5 0 / $ Y T O J E 9 4 } - # X S N I D 8 3 { + @ W R M H C 7 2 ] * ! V Q L G B 6 1 [ & Z U P K F A 5 0 / $ Y T O J E 9 4 } - # X S N I D 8 3 { + @ W R M H C 7 2 ] * ! V Q L G B 6 1 [ & Z U P K F A 5 0 / $ Y T O J E 9 4 } - # X S N I D 8 3 { + @ W R M H C 7 2 ] * ! V Q L G B 6 1 [ & Z U P K F
+ # Y U Q M I E A 6 2 { - $ Z V R N J F B 7 3 } / & ! W S O K G C 8 4 0 [ * @ X T P L H D 9 5 1 ] + # Y U Q M I E A 6 2 { - $ Z V R N J F B 7 3 } / & ! W S O K G C 8 4 0 [ * @ X T P L H D 9 5 1 ] + # Y U Q M I E A 6 2 { - $ Z V R N J F B 7 3 } / & ! W S O K G C 8 4 0 [ * @ X T P L H D 9 5 1 ] + # Y
A 7 4 1 { / * # Z W T Q N K H E B 8 5 2 } [ + $ ! X U R O L I F C 9 6 3 0 ] - & @ Y V S P M J G D A 7 4 1 { / * # Z W T Q N K H E B 8 5 2 } [ + $ ! X U R O L I F C 9 6 3 0 ] - & @ Y V S P M J G D A 7 4 1 { / * # Z W T Q N K H E B 8 5 2 } [ + $ ! X U R O L I F C 9 6 3 0 ] - & @ Y V S P M J G D A 7 4
R P N L J H F D B 9 7 5 3 1 } ] / + & # ! Y W U S Q O M K I G E C A 8 6 4 2 0 { [ - * $ @ Z X V T R P N L J H F D B 9 7 5 3 1 } ] / + & # ! Y W U S Q O M K I G E C A 8 6 4 2 0 { [ - * $ @ Z X V T R P N L J H F D B 9 7 5 3 1 } ] / + & # ! Y W U S Q O M K I G E C A 8 6 4 2 0 { [ - * $ @ Z X V T R P N
/ - + * & $ # @ ! Z Y X W V U T S R Q P O N M L K J I H G F E D C B A 9 8 7 6 5 4 3 2 1 0 } { ] [ / - + * & $ # @ ! Z Y X W V U T S R Q P O N M L K J I H G F E D C B A 9 8 7 6 5 4 3 2 1 0 } { ] [ / - + * & $ # @ ! Z Y X W V U T S R Q P O N M L K J I H G F E D C B A 9 8 7 6 5 4 3 2 1 0 } { ] [ / - +
C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C C
T U V W X Y Z ! @ # $ & * + - / [ ] { } 0 1 2 3 4 5 6 7 8 9 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z ! @ # $ & * + - / [ ] { } 0 1 2 3 4 5 6 7 8 9 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z ! @ # $ & * + - / [ ] { } 0 1 2 3 4 5 6 7 8 9 A B C D E F G H I J K L M N O P Q R S T U V
] } 1 3 5 7 9 B D F H J L N P R T V X Z @ $ * - [ { 0 2 4 6 8 A C E G I K M O Q S U W Y ! # & + / ] } 1 3 5 7 9 B D F H J L N P R T V X Z @ $ * - [ { 0 2 4 6 8 A C E G I K M O Q S U W Y ! # & + / ] } 1 3 5 7 9 B D F H J L N P R T V X Z @ $ * - [ { 0 2 4 6 8 A C E G I K M O Q S U W Y ! # & + / ] } 1
E H K N Q T W Z # * / { 1 4 7 A D G J M P S V Y @ & - ] 0 3 6 9 C F I L O R U X ! $ + [ } 2 5 8 B E H K N Q T W Z # * / { 1 4 7 A D G J M P S V Y @ & - ] 0 3 6 9 C F I L O R U X ! $ + [ } 2 5 8 B E H K N Q T W Z # * / { 1 4 7 A D G J M P S V Y @ & - ] 0 3 6 9 C F I L O R U X ! $ + [ } 2 5 8 B E H K
V Z $ - { 2 6 A E I M Q U Y # + ] 1 5 9 D H L P T X @ * [ 0 4 8 C G K O S W ! & / } 3 7 B F J N R V Z $ - { 2 6 A E I M Q U Y # + ] 1 5 9 D H L P T X @ * [ 0 4 8 C G K O S W ! & / } 3 7 B F J N R V Z $ - { 2 6 A E I M Q U Y # + ] 1 5 9 D H L P T X @ * [ 0 4 8 C G K O S W ! & / } 3 7 B F J N R V Z $
} 4 9 E J O T Y $ / 0 5 A F K P U Z & [ 1 6 B G L Q V ! * ] 2 7 C H M R W @ + { 3 8 D I N S X # - } 4 9 E J O T Y $ / 0 5 A F K P U Z & [ 1 6 B G L Q V ! * ] 2 7 C H M R W @ + { 3 8 D I N S X # - } 4 9 E J O T Y $ / 0 5 A F K P U Z & [ 1 6 B G L Q V ! * ] 2 7 C H M R W @ + { 3 8 D I N S X # - } 4 9
G M S Y & ] 3 9 F L R X $ [ 2 8 E K Q W # / 1 7 D J P V @ - 0 6 C I O U ! + } 5 B H N T Z * { 4 A G M S Y & ] 3 9 F L R X $ [ 2 8 E K Q W # / 1 7 D J P V @ - 0 6 C I O U ! + } 5 B H N T Z * { 4 A G M S Y & ] 3 9 F L R X $ [ 2 8 E K Q W # / 1 7 D J P V @ - 0 6 C I O U ! + } 5 B H N T Z * { 4 A G M S
X & { 5 C J Q X & { 5 C J Q X & { 5 C J Q X & { 5 C J Q X & { 5 C J Q X & { 5 C J Q X & { 5 C J Q X & { 5 C J Q X & { 5 C J Q X & { 5 C J Q X & { 5 C J Q X & { 5 C J Q X & { 5 C J Q X & { 5 C J Q X & { 5 C J Q X & { 5 C J Q X & { 5 C J Q X & { 5 C J Q X & { 5 C J Q X & { 5 C J Q X & { 5 C J Q X & {
1 9 H P X * 0 8 G O W & } 7 F N V $ { 6 E M U # ] 5 D L T @ [ 4 C K S ! / 3 B J R Z - 2 A I Q Y + 1 9 H P X * 0 8 G O W & } 7 F N V $ { 6 E M U # ] 5 D L T @ [ 4 C K S ! / 3 B J R Z - 2 A I Q Y + 1 9 H P X * 0 8 G O W & } 7 F N V $ { 6 E M U # ] 5 D L T @ [ 4 C K S ! / 3 B J R Z - 2 A I Q Y + 1 9 H
I R ! [ 5 E N W * 1 A J S @ ] 6 F O X + 2 B K T # { 7 G P Y - 3 C L U $ } 8 H Q Z / 4 D M V & 0 9 I R ! [ 5 E N W * 1 A J S @ ] 6 F O X + 2 B K T # { 7 G P Y - 3 C L U $ } 8 H Q Z / 4 D M V & 0 9 I R ! [ 5 E N W * 1 A J S @ ] 6 F O X + 2 B K T # { 7 G P Y - 3 C L U $ } 8 H Q Z / 4 D M V & 0 9 I R !
Z [ 6 G Q ! ] 7 H R @ { 8 I S # } 9 J T $ 0 A K U & 1 B L V * 2 C M W + 3 D N X - 4 E O Y / 5 F P Z [ 6 G Q ! ] 7 H R @ { 8 I S # } 9 J T $ 0 A K U & 1 B L V * 2 C M W + 3 D N X - 4 E O Y / 5 F P Z [ 6 G Q ! ] 7 H R @ { 8 I S # } 9 J T $ 0 A K U & 1 B L V * 2 C M W + 3 D N X - 4 E O Y / 5 F P Z [ 6
3 E P ! { 9 K V + 4 F Q @ } A L W - 5 G R # 0 B M X / 6 H S $ 1 C N Y [ 7 I T & 2 D O Z ] 8 J U * 3 E P ! { 9 K V + 4 F Q @ } A L W - 5 G R # 0 B M X / 6 H S $ 1 C N Y [ 7 I T & 2 D O Z ] 8 J U * 3 E P ! { 9 K V + 4 F Q @ } A L W - 5 G R # 0 B M X / 6 H S $ 1 C N Y [ 7 I T & 2 D O Z ] 8 J U * 3 E P
K W / 7 J V - 6 I U + 5 H T * 4 G S & 3 F R $ 2 E Q # 1 D P @ 0 C O ! } B N Z { A M Y ] 9 L X [ 8 K W / 7 J V - 6 I U + 5 H T * 4 G S & 3 F R $ 2 E Q # 1 D P @ 0 C O ! } B N Z { A M Y ] 9 L X [ 8 K W / 7 J V - 6 I U + 5 H T * 4 G S & 3 F R $ 2 E Q # 1 D P @ 0 C O ! } B N Z { A M Y ] 9 L X [ 8 K W /
@ 1 E R & 4 H U - 7 K X ] A N ! 0 D Q $ 3 G T + 6 J W [ 9 M Z } C P # 2 F S * 5 I V / 8 L Y { B O @ 1 E R & 4 H U - 7 K X ] A N ! 0 D Q $ 3 G T + 6 J W [ 9 M Z } C P # 2 F S * 5 I V / 8 L Y { B O @ 1 E R & 4 H U - 7 K X ] A N ! 0 D Q $ 3 G T + 6 J W [ 9 M Z } C P # 2 F S * 5 I V / 8 L Y { B O @ 1 E
5 J X { C Q & 5 J X { C Q & 5 J X { C Q & 5 J X { C Q & 5 J X { C Q & 5 J X { C Q & 5 J X { C Q & 5 J X { C Q & 5 J X { C Q & 5 J X { C Q & 5 J X { C Q & 5 J X { C Q & 5 J X { C Q & 5 J X { C Q & 5 J X { C Q & 5 J X { C Q & 5 J X { C Q & 5 J X { C Q & 5 J X { C Q & 5 J X { C Q & 5 J X { C Q & 5 J X
M @ 3 I X } E T / A P & 6 L ! 2 H W { D S - 9 O $ 5 K Z 1 G V ] C R + 8 N # 4 J Y 0 F U [ B Q * 7 M @ 3 I X } E T / A P & 6 L ! 2 H W { D S - 9 O $ 5 K Z 1 G V ] C R + 8 N # 4 J Y 0 F U [ B Q * 7 M @ 3 I X } E T / A P & 6 L ! 2 H W { D S - 9 O $ 5 K Z 1 G V ] C R + 8 N # 4 J Y 0 F U [ B Q * 7 M @ 3
$ 6 M # 5 L @ 4 K ! 3 J Z 2 I Y 1 H X 0 G W } F V { E U ] D T [ C S / B R - A Q + 9 P * 8 O & 7 N $ 6 M # 5 L @ 4 K ! 3 J Z 2 I Y 1 H X 0 G W } F V { E U ] D T [ C S / B R - A Q + 9 P * 8 O & 7 N $ 6 M # 5 L @ 4 K ! 3 J Z 2 I Y 1 H X 0 G W } F V { E U ] D T [ C S / B R - A Q + 9 P * 8 O & 7 N $ 6 M
7 O * 9 Q - B S [ D U { F W 0 H Y 2 J ! 4 L # 6 N & 8 P + A R / C T ] E V } G X 1 I Z 3 K @ 5 M $ 7 O * 9 Q - B S [ D U { F W 0 H Y 2 J ! 4 L # 6 N & 8 P + A R / C T ] E V } G X 1 I Z 3 K @ 5 M $ 7 O * 9 Q - B S [ D U { F W 0 H Y 2 J ! 4 L # 6 N & 8 P + A R / C T ] E V } G X 1 I Z 3 K @ 5 M $ 7 O *
LOADING
PLASTICITY / 2018 BMW M2
A part for a BMW M2
A replacement part for a 2018 BMW M2, modeled in Plasticity for 3D printing.
Loading bmw m2 part…
From Idea to Object
Consider the geometry
CAD & design
01
Find the right material
Heat, load & flexibility
02
Make it tangible
Print, finish & inspect
03
Let’s make something good
Have something in mind?
An engineering role, a project, or a shared curiosity. I’d be glad to hear from you.