{"__browser":{"country":"US","device":"unknown_device","mobile":false,"name":"unknown browser","platform":"unknown_platform","version":"0"},"__constants":{},"__CPDATA":{"domain_iframe":"https://cdpn.io","environment":"production","host":"codepen.io","iframe_allow":"accelerometer *; ambient-light-sensor *; camera *; display-capture *; encrypted-media *; geolocation *; gyroscope *; microphone *; midi *; payment *; vr *; web-share *; serial *; xr-spatial-tracking *","iframe_sandbox":"allow-downloads allow-forms allow-modals allow-pointer-lock allow-popups-to-escape-sandbox allow-popups allow-presentation allow-same-origin allow-scripts allow-top-navigation-by-user-activation"},"__graphql":{"data":{"data":{"sessionUser":{"id":"VoDkNZ","name":"Captain Anonymous","title":"Captain Anonymous","avatar":"https://assets.codepen.io/t-1/user-default-avatar.jpg?format=auto&version=0","currentContext":{"id":"VoDkNZ","title":"Captain Anonymous","name":"Captain Anonymous","avatar":"https://assets.codepen.io/t-1/user-default-avatar.jpg?format=auto&version=0","username":"anon","__typename":"User"},"currentTeamId":null,"username":"anon","admin":false,"anon":true,"pro":false,"verified":false,"featureFlags":[],"teams":[],"__typename":"User"}}},"url":"https://codepen.io/graphql","api":"cprails"},"__user":{"anon":true,"base_url":"/anon/","cohorts":[],"current_team_hashid":null,"current_team_id":0,"hashid":"VoDkNZ","id":1,"itemType":"user","name":"Captain Anonymous","paid":false,"tier":0,"username":"anon","created_at":null,"email_verified":null,"collections_count":0,"collections_private_count":0,"followers_count":0,"followings_count":0,"pens_count":0,"pens_private_count":0,"projects_count":0,"projects_private_count":0},"__firebase":{"config":{"apiKey":"AIzaSyBgLAe7N_MdFpuVofMkcQLGwwhUu5tuxls","authDomain":"codepen-store-production.firebaseapp.com","databaseURL":"https://codepen-store-production.firebaseio.com","disabled":false,"projectId":"codepen-store-production"},"token":"eyJhbGciOiJSUzI1NiJ9.eyJhdWQiOiJodHRwczovL2lkZW50aXR5dG9vbGtpdC5nb29nbGVhcGlzLmNvbS9nb29nbGUuaWRlbnRpdHkuaWRlbnRpdHl0b29sa2l0LnYxLklkZW50aXR5VG9vbGtpdCIsImNsYWltcyI6eyJvd25lcklkIjoiVm9Ea05aIiwiYWRtaW4iOmZhbHNlfSwiZXhwIjoxNzMzNTY3NTA0LCJpYXQiOjE3MzM1NjM5MDQsImlzcyI6ImZpcmViYXNlLWFkbWluc2RrLThva3lsQGNvZGVwZW4tc3RvcmUtcHJvZHVjdGlvbi5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIsInN1YiI6ImZpcmViYXNlLWFkbWluc2RrLThva3lsQGNvZGVwZW4tc3RvcmUtcHJvZHVjdGlvbi5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIsInVpZCI6IlZvRGtOWiJ9.Okt5aich55Ea7SvL035zO6Cy1HemVzb40wgsJ9yzhkEYqSxXtq7yXkD1Ok7axDslTd0k3ofmlorGtPDp528BbyWhqq-59_mq-dJVGcu50pDoVoAAhcAu-X1TagQqR0vk5c7PwC46NajGZdbJfrnQikUOWlbj3uFenlZJsRO4BStt0kb9WSHV77sWRQ-tRJNFW01Dyt39Y_76P1-dgCzGej0O5l7wDDPZ5IEkGif-W-jUXKMOKHISoIXIAmR2EE8VNkd2VeER6IAP_8-rK8umEbP4u8OhJLSTHKS4XAkrj16IGlxD3gS55z37WMBUnyeYBOe_WqGnuoeJcniM6jIkUw"},"__pay_stripe_public_key":"pk_live_2GndomDfiklqpSNQn8FrGuwZSMIMzha7DkLJqlYe7IR0ihKAlKdiHg68JJc5eVPt68rzAjzAAVXcUwjySHRCsgjQQ00gtRBUFNH","__pay_braintree_env":"production","__item":"{\"id\":72440422,\"user_id\":4559259,\"html\":\"\",\"css\":\"body {\\n background-color: rgb(20, 40, 55);\\n display: flex;\\n height: 100vh;\\n overflow: hidden;\\n align-items: center;\\n justify-content: center;\\n}\\n\",\"js\":\"\\/\\/genuary2024 - particles;\\n\\/\\/Day-1\\n\\/\\/click to change\\nlet specks;\\nlet n = 100;\\nlet shadow;\\nlet nReflections;\\n\\nfunction setup() {\\n createCanvas(windowWidth * 0.9, windowHeight * 0.9);\\n specks = [];\\n for (let i = 0; i < n; i++) {\\n newSpeck(i);\\n }\\n nReflections = int(random(5, 20));\\n rectMode(CENTER);\\n shadow = { x: 0, y: 0 };\\n}\\n\\nfunction draw() {\\n translate(width \\/ 2, height \\/ 2);\\n t = frameCount;\\n\\n background(10, 30, 40, 255 - 255 * abs(sin(t \\/ 500) * sin(t \\/ 500)));\\n\\n shadow.x = (width \\/ 200) * sin(t \\/ 1000);\\n shadow.y = (height \\/ 200) * cos(t \\/ 1000);\\n border();\\n push();\\n rotate(t \\/ 500);\\n manifest();\\n stir();\\n pop();\\n}\\n\\nfunction stir() {\\n for (let i = 0; i < specks.length; i++) {\\n if (\\n specks[i].x > width \\/ 1.8 ||\\n specks[i] < -width \\/ 1.8 ||\\n specks[i].y > height \\/ 1.8 ||\\n specks[i].y < -height \\/ 1.8\\n ) {\\n specks.splice(i, 1);\\n newSpeck(specks.length);\\n } else {\\n specks[i].x +=\\n specks[i].vx * sin(t \\/ 50) * cos(t \\/ 100) +\\n (specks[i].x \\/ 1000) * cos(t \\/ 1000);\\n specks[i].y +=\\n specks[i].vy * cos(t \\/ 50) * sin(t \\/ 100) +\\n random(-0.05, 0.05) +\\n (specks[i].x \\/ 1000) * cos(t \\/ 1000);\\n }\\n }\\n}\\nfunction manifest() {\\n noStroke();\\n\\n for (let i = 0; i < specks.length; i++) {\\n opacity = 240 - 60 * sqrt(specks[i].size);\\n\\n for (let j = 0; j < 20; j += 4) {\\n d = dist(specks[i].x, specks[i].y, shadow.x, shadow.y);\\n\\n fill(\\n 100 + 120 * abs(sin(d \\/ 20)),\\n 240,\\n 255,\\n 70 - 4 * specks[i].size - j * 2 - d \\/ 20\\n );\\n for (let k = 0; k < nReflections; k++) {\\n push();\\n rotate((k * TWO_PI) \\/ nReflections);\\n circle(\\n specks[i].x,\\n specks[i].y,\\n specks[i].size - j * (specks[i].size \\/ 20)\\n );\\n pop();\\n }\\n }\\n }\\n}\\n\\nfunction newSpeck(i) {\\n c = max(width, height);\\n specks[i] = {\\n x: randomGaussian(0, c \\/ 10),\\n y: randomGaussian(0, c \\/ 10),\\n vx: randomGaussian(0.2, 0.5),\\n vy: randomGaussian(0.2, 0.5),\\n size: random(1, 20)\\n };\\n}\\nfunction border() {\\n noFill();\\n stroke(20, 50, 60);\\n strokeWeight(4);\\n rect(0, 0, width - 20, height - 20);\\n}\\n\\nfunction mousePressed() {\\n frameCount = 0;\\n setup();\\n draw();\\n}\\n\\nfunction windowResized() {\\n resizeCanvas(windowWidth * 0.9, windowHeight * 0.9);\\n}\\n\",\"html_pre_processor\":\"none\",\"css_pre_processor\":\"none\",\"js_pre_processor\":\"none\",\"html_classes\":\"\",\"css_starter\":\"neither\",\"js_library\":null,\"created_at\":\"2023-12-26T22:20:23.473Z\",\"updated_at\":\"2024-01-04T04:39:06.433Z\",\"title\":\"specks of me\",\"description\":\"\",\"slug_hash\":\"OJqPayW\",\"head\":\"\",\"private\":false,\"slug_hash_private\":\"e0adacd6479bc7d6da926927fd1c2284\",\"has_animation\":false,\"team_id\":0,\"css_prefix\":\"neither\",\"template\":false,\"parent_id\":0,\"comments_count\":0,\"custom_screenshot_filename\":null,\"loves_count\":0,\"pick\":false,\"popularity_score\":0,\"views_count\":0,\"pick_visible_at\":null,\"cpid\":\"018ca836-f631-7a50-9399-9703e1137063\",\"is_new_editor_pen\":false,\"protected\":false,\"access\":\"Public\",\"pen_hash\":null,\"hashid\":\"OJqPayW\"}"}