[{"data":1,"prerenderedAt":304},["ShallowReactive",2],{"\u002Fphotography\u002Fmidwest":3,"photographyMetadata:photography\u002Fmidwest":22,"projects":56,"photography":201,"contact":279},{"id":4,"title":5,"body":6,"description":13,"extension":14,"image_path":15,"meta":16,"navigation":17,"path":18,"seo":19,"stem":20,"__hash__":21},"photography\u002Fphotography\u002Fmidwest.md","Kentucky & Tennessee",{"type":7,"value":8,"toc":9},"minimark",[],{"title":10,"searchDepth":11,"depth":11,"links":12},"",2,[],"I spent time in Kentucky and Tennesee recently and took a lot of photos of the surrounding area. I didn't expect to see much, but ended up with some lovely photos.\n","md","\u002Fimages\u002Fphotography\u002Fmidwest\u002F",{},true,"\u002Fphotography\u002Fmidwest",{"title":5,"description":13},"photography\u002Fmidwest","BGXgRawwppcrZOH0aQ2QL1HctFegTpN3sF8kJaFqmek",{"id":23,"data":24,"extension":53,"meta":54,"stem":20,"__hash__":55},"photographyMetadata\u002Fphotography\u002Fmidwest.json",[25,30,32,34,36,38,40,42,45,47,49,51],{"src":26,"width":27,"height":28,"ratio":29},"\u002Fimages\u002Fphotography\u002Fmidwest\u002F39489013176-R1-009-3.jpg",1518,1016,1.4940944881889764,{"src":31,"width":27,"height":28,"ratio":29},"\u002Fimages\u002Fphotography\u002Fmidwest\u002F39489013176-R1-011-4.jpg",{"src":33,"width":27,"height":28,"ratio":29},"\u002Fimages\u002Fphotography\u002Fmidwest\u002F39489013176-R1-023-10.jpg",{"src":35,"width":27,"height":28,"ratio":29},"\u002Fimages\u002Fphotography\u002Fmidwest\u002F39489013176-R1-045-21.jpg",{"src":37,"width":27,"height":28,"ratio":29},"\u002Fimages\u002Fphotography\u002Fmidwest\u002F39489013176-R1-057-27.jpg",{"src":39,"width":27,"height":28,"ratio":29},"\u002Fimages\u002Fphotography\u002Fmidwest\u002F39489013176-R1-061-29.jpg",{"src":41,"width":27,"height":28,"ratio":29},"\u002Fimages\u002Fphotography\u002Fmidwest\u002F39489013176-R1-065-31.jpg",{"src":43,"width":28,"height":27,"ratio":44},"\u002Fimages\u002Fphotography\u002Fmidwest\u002F39489013177-R1-074-35A.jpg",0.6693017127799736,{"src":46,"width":28,"height":27,"ratio":44},"\u002Fimages\u002Fphotography\u002Fmidwest\u002F39489013178-R1-034-15A.jpg",{"src":48,"width":28,"height":27,"ratio":44},"\u002Fimages\u002Fphotography\u002Fmidwest\u002F39489013178-R1-042-19A.jpg",{"src":50,"width":27,"height":28,"ratio":29},"\u002Fimages\u002Fphotography\u002Fmidwest\u002F39489013178-R1-068-32A.jpg",{"src":52,"width":27,"height":28,"ratio":29},"\u002Fimages\u002Fphotography\u002Fmidwest\u002F39489013178-R1-074-35A.jpg","json",{},"Yv0TkMucPD2vaecDVPZArqg6kCiRgUTu75922i2vpzI",[57,88,118,149,175],{"id":58,"title":59,"body":60,"bulletpoints":64,"date_range":70,"description":71,"description_long":72,"extension":14,"github":73,"image_path":74,"images":75,"meta":81,"navigation":17,"path":82,"seo":83,"stem":84,"title_additional_info":85,"tools":86,"__hash__":87},"projects\u002Fprojects\u002Faedansitevue.md","aedanmagsombol.com",{"type":7,"value":61,"toc":62},[],{"title":10,"searchDepth":11,"depth":11,"links":63},[],[65,66,67,68,69],"Developed a personal portfolio using \u003Cstrong>Vue\u003C\u002Fstrong> and \u003Cstrong>Nuxt Content\u003C\u002Fstrong>","Utilized \u003Cstrong>Bootstrap classes and components\u003C\u002Fstrong> for \u003Cstrong>grid layouts and image modals\u003C\u002Fstrong>","Built \u003Cstrong>responsive layouts\u003C\u002Fstrong> with \u003Cstrong>Bootstrap\u003C\u002Fstrong> and \u003Cstrong>media queries\u003C\u002Fstrong> to ensure compatibility across different devices and screen sizes","Improved modularity over the original vanilla HTML implementation of the site","Implemented a simple \u003Cstrong>CI\u002FCD\u003C\u002Fstrong> pipeline through \u003Cstrong>GitHub Actions\u003C\u002Fstrong> for swift deployment","January 2026 - Present","A personal portfolio site to showcase my projects and photography.\n","I originally made my V1 of my website in static HTML, CSS, and JavaScript  for a course at UC Irvine. However, I realized quickly how limited it was in  scope, and wanted to learn a modern web framework to fix some of the issues  with the previous site and to make the site extremely modular.\n","https:\u002F\u002Fgithub.com\u002Fskyguys\u002Faedan-portfolio-site-vue","\u002Fimages\u002Fprojects\u002Faedansitevue\u002F",[76,77,78,79,80],"1.png","2.png","3.png","4.png","5.png",{},"\u002Fprojects\u002Faedansitevue",{"title":59,"description":71},"projects\u002Faedansitevue","Personal Site Recreated in Vue + Nuxt","Vue, Nuxt, Bootstrap, SCSS, JavaScript\n","WmlSOWDVrkqWs-jHxEF--GeANGkjWt8nW9RoUHfrdjQ",{"id":89,"title":90,"body":91,"bulletpoints":95,"date_range":100,"description":101,"description_long":102,"extension":14,"github":103,"image_path":104,"images":105,"meta":111,"navigation":17,"path":112,"seo":113,"stem":114,"title_additional_info":115,"tools":116,"__hash__":117},"projects\u002Fprojects\u002Ffabflix.md","Fabflix",{"type":7,"value":92,"toc":93},[],{"title":10,"searchDepth":11,"depth":11,"links":94},[],[96,97,98,99],"Developed a \u003Cstrong>full stack\u003C\u002Fstrong> film catalog site with \u003Cstrong>1000s\u003C\u002Fstrong> of films, featuring \u003Cstrong>pagination\u003C\u002Fstrong> and \u003Cstrong>full-text search\u003C\u002Fstrong>","Utilized a custom \u003Cstrong>ETL pipeline\u003C\u002Fstrong> to ingest \u003Cstrong>50,000+\u003C\u002Fstrong> rows of badly-formatted XML in \u003Cstrong>under 2 seconds\u003C\u002Fstrong>","\u003Cstrong>A\u002FB\u003C\u002Fstrong> tested with \u003Cstrong>JMeter\u003C\u002Fstrong> to compare \u003Cstrong>MySQL & MongoDB\u003C\u002Fstrong>, choosing \u003Cstrong>MySQL\u003C\u002Fstrong> for faster throughput","Managed \u003Cstrong>SQL Injection\u003C\u002Fstrong> attacks through the use of \u003Cstrong>sanitization schemes (PreparedStatements)\u003C\u002Fstrong>","March 2026 - June 2026","Course project for CS122b at UC Irvine.\n","Fabflix is the course project for CS122b (Project in Databases and Web  Applications) at UC Irvine. Fabflix is a movie aggregation site, where users can search up information about movies and the actors present in them. At it's core, it's a movie search engine, but there's a lot of intricacies under the hood and with the decisions we made. \n",null,"\u002Fimages\u002Fprojects\u002Ffabflix\u002F",[106,107,108,109,110],"fabflix1.png","fabflix2.png","fabflix3.png","fabflix4.png","fabflix5.png",{},"\u002Fprojects\u002Ffabflix",{"title":90,"description":101},"projects\u002Ffabflix","A Fullstack IMDb Clone","Tomcat, Java, MySQL, RESTful APIs, JavaScript, reCAPTCHA, jQuery, JMeter\n","B6yDac79Hm41v2Xw2-82UT7tVU1mgFos3ZfgfvdcTvM",{"id":119,"title":120,"body":121,"bulletpoints":125,"date_range":130,"description":131,"description_long":132,"extension":14,"github":133,"image_path":134,"images":135,"meta":142,"navigation":17,"path":143,"seo":144,"stem":145,"title_additional_info":146,"tools":147,"__hash__":148},"projects\u002Fprojects\u002Fhackaton.md","Hackaton",{"type":7,"value":122,"toc":123},[],{"title":10,"searchDepth":11,"depth":11,"links":124},[],[126,127,128,129],"Created an interactive typing game under the guidance of the Roblox team to teach adolescents the importance of strong passwords","Learned Luau on the fly to implement gameplay-defining features","\u003Cstrong>LA Hacks 2026 4th Place Winner (Roblox Civility Challenge)\u003C\u002Fstrong>","There's not much else to say, it's a roblox game! But we had a lot of fun learning Roblox Studio and Luau during the event.","36 hours (Hackathon)","A password-cracking game to teach adolescents digital literacy through  secure passwords.\n","At LA Hacks 2026, two friends and I decided to go against the grain. In an AI-first environment where everyone was trying to create the newest AI-augmented software, we chose a different approach- a Roblox game. In  thirty-six hours, the three of us learned the ins and outs of Roblox  development to create a unique game to teach the importance of strong  passwords.\n","https:\u002F\u002Fdevpost.com\u002Fsoftware\u002Fhack-a-ton-829q1s","\u002Fimages\u002Fprojects\u002Fhackaton\u002F",[136,137,138,139,140,141],"hackaton1.png","hackaton2.png","hackaton3.png","hackaton4.jpg","hackaton5.jpg","hackaton6.jpg",{},"\u002Fprojects\u002Fhackaton",{"title":120,"description":131},"projects\u002Fhackaton","LA Hacks '26 Roblox Civility Challenge 4th Place","Roblox Studio, Lua(u), Energy Drinks, Chocolate Milk","ThLGpjzU-V7l7UZAzvDBVe2DjjCpvukQDF_tmKREVzY",{"id":150,"title":151,"body":152,"bulletpoints":156,"date_range":161,"description":162,"description_long":163,"extension":14,"github":103,"image_path":164,"images":165,"meta":168,"navigation":17,"path":169,"seo":170,"stem":171,"title_additional_info":172,"tools":173,"__hash__":174},"projects\u002Fprojects\u002Fopenneg.md","OpenNeg",{"type":7,"value":153,"toc":154},[],{"title":10,"searchDepth":11,"depth":11,"links":155},[],[157,158,159,160],"Developed a Python application to convert film negatives into positive images","Averaging \u003Cstrong>30% faster computation time\u003C\u002Fstrong> than commonly-used paid software (Negative Lab Pro) in pilot testing, utilizing \u003Cstrong>multithreading\u003C\u002Fstrong> for faster computation","Utilized a \u003Cstrong>sliding window\u003C\u002Fstrong> to load & unload images, improving memory consumption","Implemented the \u003Cstrong>Qt Library\u003C\u002Fstrong> with \u003Cstrong>OpenGL\u003C\u002Fstrong> integration for the user interface","Sept 2024 - Present","A tool I created for myself to invert photo negatives into color positives.\n","I originally created this project because I was frustrated with the lack of  free-to-use, open-source programs to invert film photos. Film photography  inversion isn't as simple as taking a photo and inverting the colors in Photoshop- there's a naunced process in balancing color curves to get the right information out. Tradtional programs cost quite a bit and required  Adobe products, which I do not have on Linux. Thus, I made my own version.\n","\u002Fimages\u002Fprojects\u002Fopenneg\u002F",[166,167],"openneg1.png","openneg2.png",{},"\u002Fprojects\u002Fopenneg",{"title":151,"description":162},"projects\u002Fopenneg","Film Photography Negative Inversion Tool","Python, NumPy, OpenCV, OpenGL, Qt\n","iBw_1AyaBXfMuLIXtYLozrPcUwtsO4oTXBjgtuBdb5U",{"id":176,"title":177,"body":178,"bulletpoints":182,"date_range":161,"description":187,"description_long":188,"extension":14,"github":103,"image_path":189,"images":190,"meta":194,"navigation":17,"path":195,"seo":196,"stem":197,"title_additional_info":198,"tools":199,"__hash__":200},"projects\u002Fprojects\u002Fpetrsearch.md","PetrSearch",{"type":7,"value":179,"toc":180},[],{"title":10,"searchDepth":11,"depth":11,"links":181},[],[183,184,185,186],"Built a scalable search engine indexing \u003Cstrong>55,000 URLs\u003C\u002Fstrong> designed for corpus growth","Averaged \u003Cstrong>\u003C100ms latency\u003C\u002Fstrong> for multi-token queries and \u003Cstrong>\u003C10ms latency\u003C\u002Fstrong> for single tokens","Implemented \u003Cstrong>TF-IDF score & cosine similarity\u003C\u002Fstrong> to efficiently rank and score webpages","Efficiently handled memory usage to be less of the size of the corpus \u003Cstrong>(~130MB)\u003C\u002Fstrong>","Course project for CS121 at UC irvine.\n","While this was supposed to be a four-person group project, I thought I would challenge myself and program the entire search engine myself. In doing so, I taught myself the ins and outs of how search engines work: tokenization, cosine similarity, and massively optimizing the search to be efficient.\n","\u002Fimages\u002Fprojects\u002Fpetrsearch\u002F",[191,192,193],"petrsearch1.png","petrsearch2.png","petrsearch3.png",{},"\u002Fprojects\u002Fpetrsearch",{"title":177,"description":187},"projects\u002Fpetrsearch","Traditional Small-Scale Search Engine","Python, NumPy, Flask, BeautifulSoup\n","x1xsh3v_fH6aU_SpF50FVcw2UmKjLiWTBSgn-CMmaNw",[202,216,230,244,251,265],{"id":203,"title":204,"body":205,"description":209,"extension":14,"image_path":210,"meta":211,"navigation":17,"path":212,"seo":213,"stem":214,"__hash__":215},"photography\u002Fphotography\u002F1.canada.md","Québec City, Canada",{"type":7,"value":206,"toc":207},[],{"title":10,"searchDepth":11,"depth":11,"links":208},[],"In my final year of college, I wanted to go somewhere unique. I had a friend living in Quebec invite me over for the week, and I've never really seen the snow, so why not? It was a really fun trip, and was my first time abroad alone.\n","\u002Fimages\u002Fphotography\u002Fcanada\u002F",{},"\u002Fphotography\u002Fcanada",{"title":204,"description":209},"photography\u002F1.canada","t4km77n30QCf3n4VRgN9xDoRXrV8TklMP2F24wNQA8Q",{"id":217,"title":218,"body":219,"description":223,"extension":14,"image_path":224,"meta":225,"navigation":17,"path":226,"seo":227,"stem":228,"__hash__":229},"photography\u002Fphotography\u002Fapo.md","UCI APO Photoshoot",{"type":7,"value":220,"toc":221},[],{"title":10,"searchDepth":11,"depth":11,"links":222},[],"The photography club at UCI did a photoshoot studio day! I decided it would be a bright idea to bring film. It wasn't, but I still had a lot of fun!\n","\u002Fimages\u002Fphotography\u002Fapo\u002F",{},"\u002Fphotography\u002Fapo",{"title":218,"description":223},"photography\u002Fapo","QN7VNq_aU1wSyCYlyIfxaf-NHwtw3XKDutrq3OTCo_0",{"id":231,"title":232,"body":233,"description":237,"extension":14,"image_path":238,"meta":239,"navigation":17,"path":240,"seo":241,"stem":242,"__hash__":243},"photography\u002Fphotography\u002Fblackandwhite.md","Black and White",{"type":7,"value":234,"toc":235},[],{"title":10,"searchDepth":11,"depth":11,"links":236},[],"There's a certain charm in taking photos in just black and white. I found myself more focused on the composition of the photo rather than the colors.\n","\u002Fimages\u002Fphotography\u002Fblackandwhite\u002F",{},"\u002Fphotography\u002Fblackandwhite",{"title":232,"description":237},"photography\u002Fblackandwhite","AoiO7iXW4b1EhfwRkmInWczjcG5YyvJWGmCucxr8j60",{"id":4,"title":5,"body":245,"description":13,"extension":14,"image_path":15,"meta":249,"navigation":17,"path":18,"seo":250,"stem":20,"__hash__":21},{"type":7,"value":246,"toc":247},[],{"title":10,"searchDepth":11,"depth":11,"links":248},[],{},{"title":5,"description":13},{"id":252,"title":253,"body":254,"description":258,"extension":14,"image_path":259,"meta":260,"navigation":17,"path":261,"seo":262,"stem":263,"__hash__":264},"photography\u002Fphotography\u002Foregon.md","Oregon",{"type":7,"value":255,"toc":256},[],{"title":10,"searchDepth":11,"depth":11,"links":257},[],"I spent time in Oregon with family in the summer of 2023. It was the first time I was testing out my film camera, and really got me into photography. Here are some of my favorite photos.\n","\u002Fimages\u002Fphotography\u002Foregon\u002F",{},"\u002Fphotography\u002Foregon",{"title":253,"description":258},"photography\u002Foregon","3bOPlo8IreaWX8Z7ISNwjieI5YqP920YgeWk_A-h84M",{"id":266,"title":267,"body":268,"description":272,"extension":14,"image_path":273,"meta":274,"navigation":17,"path":275,"seo":276,"stem":277,"__hash__":278},"photography\u002Fphotography\u002Fpanoramic.md","True Panoramic",{"type":7,"value":269,"toc":270},[],{"title":10,"searchDepth":11,"depth":11,"links":271},[],"Panoramic photos are really interesting. These aren't taken by cropping a frame, they rather extend the frame of a normal camera sensor to get a  wide frame. The photos you get from it are very cinematic!\n","\u002Fimages\u002Fphotography\u002Fpanoramic\u002F",{},"\u002Fphotography\u002Fpanoramic",{"title":267,"description":272},"photography\u002Fpanoramic","ntOXBUZV6Wt_RzFZ4LQu2dOUYBmhmvPbgDb1_3t02NY",[280,292],{"id":281,"title":282,"extension":14,"icon":283,"link":284,"meta":285,"stem":290,"__hash__":291},"contact\u002Fcontact\u002Fgithub.md","GitHub","\u002Fsvg\u002Fgithub.svg","https:\u002F\u002Fgithub.com\u002Fskyguys",{"body":286},{"type":7,"value":287,"toc":288},[],{"title":10,"searchDepth":11,"depth":11,"links":289},[],"contact\u002Fgithub","bxvPZUVIPY9MDQs3pXtU759dbZvueU-2XKOJ29oqTGY",{"id":293,"title":294,"extension":14,"icon":295,"link":296,"meta":297,"stem":302,"__hash__":303},"contact\u002Fcontact\u002Flinkedin.md","LinkedIn","\u002Fsvg\u002Flinkedin.svg","https:\u002F\u002Fwww.linkedin.com\u002Fin\u002Faedan-magsombol-a75a5433a\u002F",{"body":298},{"type":7,"value":299,"toc":300},[],{"title":10,"searchDepth":11,"depth":11,"links":301},[],"contact\u002Flinkedin","ntvf_WZb6WMOauQyzTNxQFnS491rckr2MfDqvaE-0fg",1783239244117]