Pookkalam by Jayakrishnan P U

Code

c = circle(r=150,fill='#170101',stroke='none')
show(c)

#outerpattern
def s(color, side):
    return rectangle(w=side, h=side, fill=color, stroke='none')

redp=s(side=211,color='#bd0404') | repeat(10,  rotate(10)) 
orange=s(side=199, color='#ff9626') | rotate(5) | repeat(10,  rotate(10)) 
yellowp= s(side=185, color='#ffc23d') | repeat(10,  rotate(10)) 
lyellowp= s(side=175, color='#fcefb1') | rotate(5) | repeat(10,  rotate(10)) 
whitep = s(side=165, color='#fffcf0')  | repeat(10,  rotate(10))
c2=circle(r=102,fill='#170101',stroke='none')
show(redp,orange,yellowp,lyellowp,whitep,c2)

#middlepattern
cp= rectangle(x=93, y=0,w=10,h=12,fill='#668f24',stroke='#fffcf0')| repeat(72,rotate(10))
pattern1= ellipse(x=0,y=30,w=25,h=106,fill="#ff9626",stroke='none')| repeat(22,rotate(18))
pattern2= ellipse(x=0,y=30,w=20,h=100,fill="#ffc23d",stroke='none')| repeat(22,rotate(18))
pattern3= ellipse(x=0,y=30,w=15,h=90,fill="#fcefb1",stroke='none')| repeat(22,rotate(18))
pattern4= ellipse(x=0,y=30,w=8,h=80,fill="#422057ff",stroke='none')| repeat(22,rotate(18))
c4=circle(r=60,fill='#225e25',stroke='#422057ff',stroke_width=2)
c3= circle(x=75,y=11.5,r=2,fill='#fffcf0',stroke='none')|repeat(22,rotate(18))
show(pattern1,pattern2,pattern3,pattern4,cp,c3,c4)

#middle2
def s2(color, side):
    return rectangle(w=side, h=side, fill=color, stroke='none')
w1=s(side=85,color="#fffcf0") | repeat(14,  rotate(22.5))
r1=s(side=77,color="#bd0404") | repeat(14,  rotate(22.5))
o1=s(side=67,color="#ff9626") | repeat(14,  rotate(22.5))
y1=s(side=58,color="#ffc23d") | repeat(14,  rotate(22.5))
ly1=s(side=52,color="#fcefb1") | repeat(14,  rotate(22.5))
c5=circle(r=30,fill="#422057ff",stroke='none')
c6=circle(r=27,fill="#6d3a8c",stroke='none')
c7=circle(r=24,fill="#9c5fc2",stroke='none')
rm=rectangle(w=40,h=40,fill="#FFC0CB")|repeat(20,rotate(20)|scale(0.9))
show(w1,r1,o1,y1,ly1,c5,c6,c7,rm)