{"id":12,"date":"2026-06-12T12:54:07","date_gmt":"2026-06-12T12:54:07","guid":{"rendered":"https:\/\/msgportfolio.com\/?page_id=12"},"modified":"2026-06-17T13:18:23","modified_gmt":"2026-06-17T13:18:23","slug":"projects","status":"publish","type":"page","link":"https:\/\/msgportfolio.com\/?page_id=12","title":{"rendered":"Projects"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"12\" class=\"elementor elementor-12\">\n\t\t\t\t<div class=\"elementor-element elementor-element-998ad30 mg-page-hero e-flex e-con-boxed e-con e-parent\" data-id=\"998ad30\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-97e9f57 mg-eyebrow elementor-widget elementor-widget-heading\" data-id=\"97e9f57\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\">\/\/ project_portfolio<\/div>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c519d9b elementor-widget elementor-widget-heading\" data-id=\"c519d9b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">Every Project Has a <span class=\"mg-grad\">Story<\/span><\/h1>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e651b6b elementor-widget elementor-widget-text-editor\" data-id=\"e651b6b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p style=\"color:#8892A4;font-size:1.05rem;max-width:510px;line-height:1.75;\">Explore the full range of what I&#8217;ve built \u2014 each one designed to demonstrate real skills, real decisions, and real results worth talking about.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-3e4dedc e-flex e-con-boxed e-con e-parent\" data-id=\"3e4dedc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1f8aa7d elementor-tabs-alignment-flex-start elementor-tabs-view-horizontal elementor-widget elementor-widget-tabs\" data-id=\"1f8aa7d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"tabs.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-tabs\">\n\t\t\t<div class=\"elementor-tabs-wrapper\" role=\"tablist\" >\n\t\t\t\t\t\t\t\t\t<div id=\"elementor-tab-title-3301\" class=\"elementor-tab-title elementor-tab-desktop-title\" aria-selected=\"true\" data-tab=\"1\" role=\"tab\" tabindex=\"0\" aria-controls=\"elementor-tab-content-3301\" aria-expanded=\"false\">All Projects<\/div>\n\t\t\t\t\t\t\t\t\t<div id=\"elementor-tab-title-3302\" class=\"elementor-tab-title elementor-tab-desktop-title\" aria-selected=\"false\" data-tab=\"2\" role=\"tab\" tabindex=\"-1\" aria-controls=\"elementor-tab-content-3302\" aria-expanded=\"false\">Web Apps<\/div>\n\t\t\t\t\t\t\t\t\t<div id=\"elementor-tab-title-3303\" class=\"elementor-tab-title elementor-tab-desktop-title\" aria-selected=\"false\" data-tab=\"3\" role=\"tab\" tabindex=\"-1\" aria-controls=\"elementor-tab-content-3303\" aria-expanded=\"false\">Backend<\/div>\n\t\t\t\t\t\t\t\t\t<div id=\"elementor-tab-title-3304\" class=\"elementor-tab-title elementor-tab-desktop-title\" aria-selected=\"false\" data-tab=\"4\" role=\"tab\" tabindex=\"-1\" aria-controls=\"elementor-tab-content-3304\" aria-expanded=\"false\">Python<\/div>\n\t\t\t\t\t\t\t\t\t<div id=\"elementor-tab-title-3305\" class=\"elementor-tab-title elementor-tab-desktop-title\" aria-selected=\"false\" data-tab=\"5\" role=\"tab\" tabindex=\"-1\" aria-controls=\"elementor-tab-content-3305\" aria-expanded=\"false\">ML \/ Data<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t<div class=\"elementor-tabs-content-wrapper\" role=\"tablist\" aria-orientation=\"vertical\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-tab-title elementor-tab-mobile-title\" aria-selected=\"true\" data-tab=\"1\" role=\"tab\" tabindex=\"0\" aria-controls=\"elementor-tab-content-3301\" aria-expanded=\"false\">All Projects<\/div>\n\t\t\t\t\t<div id=\"elementor-tab-content-3301\" class=\"elementor-tab-content elementor-clearfix\" data-tab=\"1\" role=\"tabpanel\" aria-labelledby=\"elementor-tab-title-3301\" tabindex=\"0\" hidden=\"false\"><div style=\"display: grid; grid-template-columns: repeat(auto-fill,minmax(310px,1fr)); gap: 24px;\"><div class=\"mg-project-card\" style=\"margin-bottom: 24px;\"><div style=\"padding: 22px 24px 24px;\"><div style=\"margin-bottom: 12px;\"><span class=\"mg-tag\"><img fetchpriority=\"high\" decoding=\"async\" class=\" wp-image-127 alignnone\" src=\"https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/SeniorProjectHome-300x161.png\" alt=\"\" width=\"310\" height=\"167\" srcset=\"https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/SeniorProjectHome-300x161.png 300w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/SeniorProjectHome-1024x549.png 1024w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/SeniorProjectHome-768x412.png 768w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/SeniorProjectHome.png 1440w\" sizes=\"(max-width: 310px) 100vw, 310px\" \/>PHP,JS,HTML,CSS,<\/span><span class=\"mg-tag\">MySQL, MAMP<\/span><\/div><h3 style=\"color: #f0f4ff; font-family: Space Grotesk,sans-serif; font-weight: bold; font-size: 1.1rem; margin: 0 0 9px;\">BlueHat Data Extraction \u2014 Penetration Testing Hack\u00a0<\/h3><p style=\"color: #8892a4; font-size: 0.87rem; line-height: 1.65; margin: 0 0 20px;\">A web application that shows users what information was taken from them in a demo hack environment using Kali Linux to assist and inform users of protective measures to be taken.<\/p><div style=\"display: flex; justify-content: space-between; align-items: center;\"><div><a style=\"color: #3b6fff; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none; margin-right: 16px;\" href=\"#\">See More \u2192<\/a><a style=\"color: #8892a4; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none;\" href=\"#\">GitHub \u2197<\/a><\/div><p><span style=\"font-family: JetBrains Mono,monospace; font-size: 0.7rem; color: #8892a4;\">2023<\/span><\/p><\/div><\/div><\/div><div class=\"mg-project-card\" style=\"margin-bottom: 24px;\"><p><img decoding=\"async\" style=\"width: 100%; height: 210px; object-fit: cover; display: block;\" src=\"https:\/\/images.unsplash.com\/photo-1555949963-ff9fe0c870eb?w=700&amp;q=80\" alt=\"DataStream AI analytics pipeline\" \/><\/p><div style=\"padding: 22px 24px 24px;\"><div style=\"margin-bottom: 12px;\"><span class=\"mg-tag\">Python<\/span><span class=\"mg-tag\">FastAPI<\/span><span class=\"mg-tag\">scikit-learn<\/span><span class=\"mg-tag\">PostgreSQL<\/span><\/div><h3 style=\"color: #f0f4ff; font-family: Space Grotesk,sans-serif; font-weight: bold; font-size: 1.1rem; margin: 0 0 9px;\">DataStream \u2014 AI Analytics Pipeline<\/h3><p style=\"color: #8892a4; font-size: 0.87rem; line-height: 1.65; margin: 0 0 20px;\">An intelligent data processing pipeline that ingests CSV or JSON data, runs ML classification models, and exposes insights via a FastAPI REST interface.<\/p><div style=\"display: flex; justify-content: space-between; align-items: center;\"><div><a style=\"color: #3b6fff; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none; margin-right: 16px;\" href=\"#\">See More\u2192<\/a><a style=\"color: #8892a4; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none;\" href=\"#\">GitHub \u2197<\/a><\/div><p><span style=\"font-family: JetBrains Mono,monospace; font-size: 0.7rem; color: #8892a4;\">2024<\/span><\/p><\/div><\/div><\/div><div class=\"mg-project-card\" style=\"margin-bottom: 24px;\"><p><img decoding=\"async\" style=\"width: 100%; height: 210px; object-fit: cover; display: block;\" src=\"https:\/\/images.unsplash.com\/photo-1551288049-bebda4e38f71?w=700&amp;q=80\" alt=\"PulseBoard real-time dashboard\" \/><\/p><div style=\"padding: 22px 24px 24px;\"><div style=\"margin-bottom: 12px;\"><span class=\"mg-tag\">TypeScript<\/span><span class=\"mg-tag\">WebSockets<\/span><span class=\"mg-tag\">D3.js<\/span><span class=\"mg-tag\">PostgreSQL<\/span><\/div><h3 style=\"color: #f0f4ff; font-family: Space Grotesk,sans-serif; font-weight: bold; font-size: 1.1rem; margin: 0 0 9px;\">PulseBoard \u2014 Real-Time Dashboard<\/h3><p style=\"color: #8892a4; font-size: 0.87rem; line-height: 1.65; margin: 0 0 20px;\">A live KPI monitoring dashboard using WebSockets for real-time updates. D3.js charting, date-range filtering, drill-down views, PostgreSQL backend.<\/p><div style=\"display: flex; justify-content: space-between; align-items: center;\"><div><a style=\"color: #3b6fff; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none; margin-right: 16px;\" href=\"#\">See More \u2192<\/a><a style=\"color: #8892a4; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none;\" href=\"#\">GitHub \u2197<\/a><\/div><p><span style=\"font-family: JetBrains Mono,monospace; font-size: 0.7rem; color: #8892a4;\">2024<\/span><\/p><\/div><\/div><\/div><div class=\"mg-project-card\" style=\"margin-bottom: 24px;\"><p><img decoding=\"async\" class=\" wp-image-205 aligncenter\" src=\"https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/AdminHome-1-300x163.png\" alt=\"\" width=\"399\" height=\"216\" srcset=\"https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/AdminHome-1-300x163.png 300w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/AdminHome-1-1024x557.png 1024w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/AdminHome-1-768x417.png 768w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/AdminHome-1.png 1435w\" sizes=\"(max-width: 399px) 100vw, 399px\" \/><\/p><p>\u00a0 \u00a0 \u00a0 \u00a0 React, Node.js, APIs, HTML, CSS<\/p><p><span style=\"color: #f0f4ff; font-family: 'Space Grotesk', sans-serif; font-size: 1.1rem; font-weight: bold;\">\u00a0 \u00a0 \u00a0 \u00a0AD-Dash \u2014 Admin Dashboard<\/span><\/p><p><span style=\"color: #8892a4; font-size: 0.87rem;\">An enterprise-level dashboard which monitors statistics through APIs. Use case: for CDO and Data Analysts who are want to measure cost-effectiveness when making decisions for the company.<\/span><\/p><div style=\"padding: 22px 24px 24px;\"><div style=\"display: flex; justify-content: space-between; align-items: center;\"><div><a style=\"color: #3b6fff; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none; margin-right: 16px;\" href=\"#\">See More \u2192<\/a><a style=\"color: #8892a4; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none;\" href=\"#\">GitHub \u2197<\/a><\/div><p><span style=\"font-family: JetBrains Mono,monospace; font-size: 0.7rem; color: #8892a4;\">2024<\/span><\/p><\/div><\/div><\/div><div class=\"mg-project-card\" style=\"margin-bottom: 24px;\"><p><img decoding=\"async\" class=\" wp-image-196 aligncenter\" src=\"https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/FightingGame-2-300x149.png\" alt=\"\" width=\"463\" height=\"230\" srcset=\"https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/FightingGame-2-300x149.png 300w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/FightingGame-2-768x382.png 768w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/FightingGame-2.png 996w\" sizes=\"(max-width: 463px) 100vw, 463px\" \/><\/p><div style=\"padding: 22px 24px 24px;\"><div style=\"margin-bottom: 12px;\"><span class=\"mg-tag\">Python, Itch.io<\/span><\/div><h3 style=\"color: #f0f4ff; font-family: Space Grotesk,sans-serif; font-weight: bold; font-size: 1.1rem; margin: 0 0 9px;\">Virtual Fighter \u2014 Arcade Fighting Game<\/h3><p style=\"color: #8892a4; font-size: 0.87rem; line-height: 1.65; margin: 0 0 20px;\">An arcade fighting made with pycharm and pygame using sprites with custom animations from itch.io. Two player fighting game with responsive health bars, the player with the most health wins.<\/p><div style=\"display: flex; justify-content: space-between; align-items: center;\"><div><a style=\"color: #3b6fff; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none; margin-right: 16px;\" href=\"#\">See More \u2192<\/a><a style=\"color: #8892a4; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none;\" href=\"#\">GitHub \u2197<\/a><\/div><p><span style=\"font-family: JetBrains Mono,monospace; font-size: 0.7rem; color: #8892a4;\">2023<\/span><\/p><\/div><\/div><\/div><div class=\"mg-project-card\" style=\"margin-bottom: 24px;\"><p><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-192 aligncenter\" src=\"https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/GameStoreHome-300x204.png\" alt=\"\" width=\"325\" height=\"221\" srcset=\"https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/GameStoreHome-300x204.png 300w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/GameStoreHome-1024x696.png 1024w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/GameStoreHome-768x522.png 768w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/GameStoreHome.png 1088w\" sizes=\"(max-width: 325px) 100vw, 325px\" \/><\/p><div style=\"padding: 22px 24px 24px;\"><div style=\"margin-bottom: 12px;\"><span class=\"mg-tag\">React, Node.js, HTML, CSS, MySQL<\/span><\/div><h3 style=\"color: #f0f4ff; font-family: Space Grotesk,sans-serif; font-weight: bold; font-size: 1.1rem; margin: 0 0 9px;\">GameHunt \u2014 Video Game Ecommerce<\/h3><p style=\"color: #8892a4; font-size: 0.87rem; line-height: 1.65; margin: 0 0 20px;\">A React based web application that incorporates dynamic styling through its use of the react framework and JavaScript capabilities. Cart functionality working carousel with trailers of the games included.<\/p><div style=\"display: flex; justify-content: space-between; align-items: center;\"><div><a style=\"color: #3b6fff; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none; margin-right: 16px;\" href=\"#\">See More \u2192<\/a><a style=\"color: #8892a4; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none;\" href=\"#\">GitHub \u2197<\/a><\/div><p><span style=\"font-family: JetBrains Mono,monospace; font-size: 0.7rem; color: #8892a4;\">2023<\/span><\/p><\/div><\/div><\/div><div class=\"mg-project-card\" style=\"margin-bottom: 24px;\"><p><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-188 aligncenter\" src=\"https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/SportableHome-300x169.png\" alt=\"\" width=\"300\" height=\"169\" srcset=\"https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/SportableHome-300x169.png 300w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/SportableHome-1024x578.png 1024w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/SportableHome-768x434.png 768w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/SportableHome.png 1440w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/p><div style=\"padding: 22px 24px 24px;\"><div style=\"margin-bottom: 12px;\">PHP, JS, HTML, CSS, MAMP, MySQL<\/div><h3 style=\"color: #f0f4ff; font-family: Space Grotesk,sans-serif; font-weight: bold; font-size: 1.1rem; margin: 0 0 9px;\">Sportable \u2014 Sports Management<\/h3><p style=\"color: #8892a4; font-size: 0.87rem; line-height: 1.65; margin: 0 0 20px;\">A sports management application that allows users to track team information, meeting data, game schedules, pay for invoices and keep up with practice sessions.<\/p><div style=\"display: flex; justify-content: space-between; align-items: center;\"><div><a style=\"color: #3b6fff; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none; margin-right: 16px;\" href=\"#\">See More \u2192<\/a><a style=\"color: #8892a4; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none;\" href=\"#\">GitHub \u2197<\/a><\/div><p><span style=\"font-family: JetBrains Mono,monospace; font-size: 0.7rem; color: #8892a4;\">2024<\/span><\/p><\/div><\/div><\/div><div class=\"mg-project-card\" style=\"margin-bottom: 24px;\"><div style=\"padding: 22px 24px 24px;\"><div style=\"margin-bottom: 12px;\"><p><span class=\"mg-tag\"><span class=\"mg-tag\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-176 aligncenter\" src=\"https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/VTravelHome-300x162.png\" alt=\"\" width=\"373\" height=\"201\" srcset=\"https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/VTravelHome-300x162.png 300w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/VTravelHome-1024x552.png 1024w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/VTravelHome-768x414.png 768w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/VTravelHome.png 1440w\" sizes=\"(max-width: 373px) 100vw, 373px\" \/><\/span><\/span><\/p><div>PHP, JS, HTML, CSS, MAMP, MySQL<\/div><\/div><h3 style=\"color: #f0f4ff; font-family: Space Grotesk,sans-serif; font-weight: bold; font-size: 1.1rem; margin: 0 0 9px;\">Vtravel \u2014 Vacation Scheduler<\/h3><p style=\"color: #8892a4; font-size: 0.87rem; line-height: 1.65; margin: 0 0 20px;\">A web application that uses PHP for transactions. The application is designed using JavaScript, HTML, and CSS. MySQL stores the travel information, location, and events available and MAMP is for hosting the website locally.<\/p><div style=\"display: flex; justify-content: space-between; align-items: center;\"><div><a style=\"color: #3b6fff; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none; margin-right: 16px;\" href=\"#\">See More \u2192<\/a><a style=\"color: #8892a4; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none;\" href=\"#\">GitHub \u2197<\/a><\/div><p><span style=\"font-family: JetBrains Mono,monospace; font-size: 0.7rem; color: #8892a4;\">2023<\/span><\/p><\/div><\/div><\/div><div class=\"mg-project-card\" style=\"margin-bottom: 24px;\"><p><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-172 aligncenter\" src=\"https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/WebstoreCatalog-300x163.png\" alt=\"\" width=\"352\" height=\"191\" srcset=\"https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/WebstoreCatalog-300x163.png 300w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/WebstoreCatalog-1024x555.png 1024w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/WebstoreCatalog-768x416.png 768w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/WebstoreCatalog.png 1440w\" sizes=\"(max-width: 352px) 100vw, 352px\" \/><\/p><div style=\"padding: 22px 24px 24px;\"><div style=\"margin-bottom: 12px;\">PHP, HTML, CSS, MAMP, MySQL<\/div><h3 style=\"color: #f0f4ff; font-family: Space Grotesk,sans-serif; font-weight: bold; font-size: 1.1rem; margin: 0 0 9px;\">Webstore \u2014 Gaming Ecommerce Website<\/h3><p style=\"color: #8892a4; font-size: 0.87rem; line-height: 1.65; margin: 0 0 20px;\">A web application made using PHP, HTML, and CSS hosted on MAMP, inventory was held on the MySQL database with the purpose of purchasing video games. My first ecommerce website.<\/p><div style=\"display: flex; justify-content: space-between; align-items: center;\"><div><a style=\"color: #3b6fff; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none; margin-right: 16px;\" href=\"#\">See More \u2192<\/a><a style=\"color: #8892a4; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none;\" href=\"#\">GitHub \u2197<\/a><\/div><p><span style=\"font-family: JetBrains Mono,monospace; font-size: 0.7rem; color: #8892a4;\">2023<\/span><\/p><\/div><\/div><\/div><\/div><\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-tab-title elementor-tab-mobile-title\" aria-selected=\"false\" data-tab=\"2\" role=\"tab\" tabindex=\"-1\" aria-controls=\"elementor-tab-content-3302\" aria-expanded=\"false\">Web Apps<\/div>\n\t\t\t\t\t<div id=\"elementor-tab-content-3302\" class=\"elementor-tab-content elementor-clearfix\" data-tab=\"2\" role=\"tabpanel\" aria-labelledby=\"elementor-tab-title-3302\" tabindex=\"0\" hidden=\"hidden\"><div style=\"display: grid; grid-template-columns: repeat(auto-fill,minmax(310px,1fr)); gap: 24px;\"><div class=\"mg-project-card\" style=\"margin-bottom: 24px;\"><div style=\"padding: 22px 24px 24px;\"><div style=\"margin-bottom: 12px;\"><p><span class=\"mg-tag\"><span class=\"mg-tag\"><img fetchpriority=\"high\" decoding=\"async\" class=\" wp-image-127 alignnone\" src=\"https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/SeniorProjectHome-300x161.png\" alt=\"\" width=\"310\" height=\"167\" srcset=\"https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/SeniorProjectHome-300x161.png 300w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/SeniorProjectHome-1024x549.png 1024w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/SeniorProjectHome-768x412.png 768w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/SeniorProjectHome.png 1440w\" sizes=\"(max-width: 310px) 100vw, 310px\" \/><\/span><\/span><\/p><div style=\"margin-bottom: 12px;\"><span class=\"mg-tag\">PHP,JS,HTML,CSS,<\/span><span class=\"mg-tag\">MySQL, MAMP<\/span><\/div><h3 style=\"color: #f0f4ff; font-family: Space Grotesk,sans-serif; font-weight: bold; font-size: 1.1rem; margin: 0 0 9px;\">BlueHat Data Extraction \u2014 Penetration Testing Hack\u00a0<\/h3><p style=\"color: #8892a4; font-size: 0.87rem; line-height: 1.65; margin: 0 0 20px;\">A web application that shows users what information was taken from them in a demo hack environment using Kali Linux to assist and inform users of protective measures to be taken.<\/p><\/div><div style=\"display: flex; justify-content: space-between; align-items: center;\"><div><a style=\"color: #3b6fff; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none; margin-right: 16px;\" href=\"#\">See More \u2192<\/a><a style=\"color: #8892a4; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none;\" href=\"#\">GitHub \u2197<\/a><\/div><p><span style=\"font-family: JetBrains Mono,monospace; font-size: 0.7rem; color: #8892a4;\">2024<\/span><\/p><\/div><p><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-192 aligncenter\" src=\"https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/GameStoreHome-300x204.png\" alt=\"\" width=\"325\" height=\"221\" srcset=\"https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/GameStoreHome-300x204.png 300w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/GameStoreHome-1024x696.png 1024w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/GameStoreHome-768x522.png 768w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/GameStoreHome.png 1088w\" sizes=\"(max-width: 325px) 100vw, 325px\" \/><\/p><div style=\"margin-bottom: 12px;\"><span class=\"mg-tag\">React, Node.js, HTML, CSS, MySQL<\/span><\/div><h3 style=\"color: #f0f4ff; font-family: Space Grotesk,sans-serif; font-weight: bold; font-size: 1.1rem; margin: 0 0 9px;\">GameHunt \u2014 Video Game Ecommerce<\/h3><p style=\"color: #8892a4; font-size: 0.87rem; line-height: 1.65; margin: 0 0 20px;\">A React based web application that incorporates dynamic styling through its use of the react framework and JavaScript capabilities. Cart functionality working carousel with trailers of the games included.<\/p><div><a style=\"color: #3b6fff; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none; margin-right: 16px;\" href=\"#\">See More \u2192<\/a><a style=\"color: #8892a4; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none;\" href=\"#\">GitHub \u2197\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <\/a><span style=\"font-family: JetBrains Mono,monospace; font-size: 0.7rem; color: #8892a4;\">2024<\/span><\/div><\/div><\/div><div class=\"mg-project-card\" style=\"margin-bottom: 24px;\"><p><img decoding=\"async\" style=\"width: 100%; height: 210px; object-fit: cover; display: block;\" src=\"https:\/\/images.unsplash.com\/photo-1551288049-bebda4e38f71?w=700&amp;q=80\" alt=\"PulseBoard real-time dashboard\" \/><\/p><div style=\"padding: 22px 24px 24px;\"><div style=\"margin-bottom: 12px;\"><span class=\"mg-tag\">TypeScript<\/span><span class=\"mg-tag\">WebSockets<\/span><span class=\"mg-tag\">D3.js<\/span><span class=\"mg-tag\">PostgreSQL<\/span><\/div><h3 style=\"color: #f0f4ff; font-family: Space Grotesk,sans-serif; font-weight: bold; font-size: 1.1rem; margin: 0 0 9px;\">PulseBoard \u2014 Real-Time Dashboard<\/h3><p style=\"color: #8892a4; font-size: 0.87rem; line-height: 1.65; margin: 0 0 20px;\">A live KPI monitoring dashboard using WebSockets for real-time updates. D3.js charting, date-range filtering, drill-down views, PostgreSQL backend.<\/p><div style=\"display: flex; justify-content: space-between; align-items: center;\"><div><a style=\"color: #3b6fff; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none; margin-right: 16px;\" href=\"#\">See More \u2192<\/a><a style=\"color: #8892a4; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none;\" href=\"#\">GitHub \u2197<\/a><\/div><p><span style=\"font-family: JetBrains Mono,monospace; font-size: 0.7rem; color: #8892a4;\">2024<\/span><\/p><\/div><div style=\"display: flex; justify-content: space-between; align-items: center;\"><p><img decoding=\"async\" src=\"https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/SportableHome-300x169.png\" \/><\/p><\/div><div style=\"margin-bottom: 12px;\">PHP, JS, HTML, CSS, MAMP, MySQL<\/div><h3 style=\"color: #f0f4ff; font-family: Space Grotesk,sans-serif; font-weight: bold; font-size: 1.1rem; margin: 0 0 9px;\">Sportable \u2014 Sports Management<\/h3><p style=\"color: #8892a4; font-size: 0.87rem; line-height: 1.65; margin: 0 0 20px;\">A sports management application that allows users to track team information, meeting data, game schedules, pay for invoices and keep up with practice sessions.<\/p><div style=\"display: flex; justify-content: space-between; align-items: center;\"><div><a style=\"color: #3b6fff; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none; margin-right: 16px;\" href=\"#\">See More \u2192<\/a><a style=\"color: #8892a4; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none;\" href=\"#\">GitHub \u2197<\/a><\/div><p><span style=\"font-family: JetBrains Mono,monospace; font-size: 0.7rem; color: #8892a4;\">2024<\/span><\/p><\/div><\/div><\/div><div class=\"mg-project-card\" style=\"margin-bottom: 24px;\"><p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/AdminHome-1-300x163.png\" width=\"427\" height=\"232\" \/><\/p><p>\u00a0 \u00a0 React, Node.js, APIs, HTML, CSS<\/p><p><span style=\"color: #f0f4ff; font-family: 'Space Grotesk', sans-serif; font-size: 1.1rem; font-weight: bold;\">\u00a0 \u00a0AD-Dash \u2014 Admin Dashboard<\/span><\/p><p><span style=\"color: #8892a4; font-size: 0.87rem;\">An enterprise-level dashboard which monitors statistics through APIs. Use case: for CDO and Data Analysts who are want to measure cost-effectiveness when making decisions for the company.<\/span><\/p><div style=\"padding: 22px 24px 24px;\"><div style=\"display: flex; justify-content: space-between; align-items: center;\"><div><a style=\"color: #3b6fff; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none; margin-right: 16px;\" href=\"#\">See More \u2192<\/a><a style=\"color: #8892a4; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none;\" href=\"#\">GitHub \u2197\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <\/a><span style=\"font-family: JetBrains Mono,monospace; font-size: 0.7rem; color: #8892a4;\">2024<\/span><\/div><\/div><\/div><p><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-176 alignnone\" src=\"https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/VTravelHome-300x162.png\" alt=\"\" width=\"300\" height=\"162\" srcset=\"https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/VTravelHome-300x162.png 300w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/VTravelHome-1024x552.png 1024w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/VTravelHome-768x414.png 768w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/VTravelHome.png 1440w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/p><div style=\"padding: 22px 24px 24px;\"><div style=\"margin-bottom: 12px;\"><div style=\"margin-bottom: 12px;\"><div>PHP, JS, HTML, CSS, MAMP, MySQL<\/div><\/div><h3 style=\"color: #f0f4ff; font-family: Space Grotesk,sans-serif; font-weight: bold; font-size: 1.1rem; margin: 0 0 9px;\">Vtravel \u2014 Vacation Scheduler<\/h3><p style=\"color: #8892a4; font-size: 0.87rem; line-height: 1.65; margin: 0 0 20px;\">A web application that uses PHP for transactions. The application is designed using JavaScript, HTML, and CSS. MySQL stores the travel information, location, and events available and MAMP is for hosting the website locally.<\/p><\/div><div style=\"display: flex; justify-content: space-between; align-items: center;\"><div><a style=\"color: #3b6fff; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none; margin-right: 16px;\" href=\"#\">See More \u2192<\/a><a style=\"color: #8892a4; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none;\" href=\"#\">GitHub \u2197<\/a><\/div><div>\u00a0<\/div><p><span style=\"font-family: JetBrains Mono,monospace; font-size: 0.7rem; color: #8892a4;\">2023<\/span><\/p><\/div><div class=\"mg-project-card\" style=\"margin-bottom: 24px;\"><p><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-172 alignnone\" src=\"https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/WebstoreCatalog-300x163.png\" alt=\"\" width=\"352\" height=\"191\" srcset=\"https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/WebstoreCatalog-300x163.png 300w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/WebstoreCatalog-1024x555.png 1024w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/WebstoreCatalog-768x416.png 768w, https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/WebstoreCatalog.png 1440w\" sizes=\"(max-width: 352px) 100vw, 352px\" \/><\/p><div style=\"padding: 22px 24px 24px;\"><div style=\"margin-bottom: 12px;\">PHP, HTML, CSS, MAMP, MySQL<\/div><h3 style=\"color: #f0f4ff; font-family: Space Grotesk,sans-serif; font-weight: bold; font-size: 1.1rem; margin: 0 0 9px;\">Webstore \u2014 Gaming Ecommerce Website<\/h3><p style=\"color: #8892a4; font-size: 0.87rem; line-height: 1.65; margin: 0 0 20px;\">A web application made using PHP, HTML, and CSS hosted on MAMP, inventory was held on the MySQL database with the purpose of purchasing video games. My first ecommerce website.<\/p><div style=\"display: flex; justify-content: space-between; align-items: center;\"><div><a style=\"color: #3b6fff; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none; margin-right: 16px;\" href=\"#\">See More \u2192<\/a><a style=\"color: #8892a4; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none;\" href=\"#\">GitHub \u2197<\/a><\/div><p><span style=\"font-family: JetBrains Mono,monospace; font-size: 0.7rem; color: #8892a4;\">2023<\/span><\/p><\/div><\/div><\/div><\/div><\/div><\/div><\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-tab-title elementor-tab-mobile-title\" aria-selected=\"false\" data-tab=\"3\" role=\"tab\" tabindex=\"-1\" aria-controls=\"elementor-tab-content-3303\" aria-expanded=\"false\">Backend<\/div>\n\t\t\t\t\t<div id=\"elementor-tab-content-3303\" class=\"elementor-tab-content elementor-clearfix\" data-tab=\"3\" role=\"tabpanel\" aria-labelledby=\"elementor-tab-title-3303\" tabindex=\"0\" hidden=\"hidden\"><div style=\"display: grid; grid-template-columns: repeat(auto-fill,minmax(310px,1fr)); gap: 24px;\"><div class=\"mg-project-card\" style=\"margin-bottom: 24px;\"><p><img decoding=\"async\" style=\"width: 100%; height: 210px; object-fit: cover; display: block;\" src=\"https:\/\/images.unsplash.com\/photo-1558494949-ef010cbdcc31?w=700&amp;q=80\" alt=\"AuthForge authentication API\" \/><\/p><div style=\"padding: 22px 24px 24px;\"><div style=\"margin-bottom: 12px;\"><span class=\"mg-tag\">Node.js<\/span><span class=\"mg-tag\">Express<\/span><span class=\"mg-tag\">JWT<\/span><span class=\"mg-tag\">Redis<\/span><\/div><h3 style=\"color: #f0f4ff; font-family: Space Grotesk,sans-serif; font-weight: bold; font-size: 1.1rem; margin: 0 0 9px;\">AuthForge \u2014 Authentication API<\/h3><p style=\"color: #8892a4; font-size: 0.87rem; line-height: 1.65; margin: 0 0 20px;\">A production-grade auth microservice: JWT refresh tokens, OAuth2 login via Google\/GitHub, Redis-backed rate limiting, role-based access control, Swagger docs.<\/p><div style=\"display: flex; justify-content: space-between; align-items: center;\"><div><a style=\"color: #3b6fff; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none; margin-right: 16px;\" href=\"#\">See More \u2192<\/a><a style=\"color: #8892a4; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none;\" href=\"#\">GitHub \u2197<\/a><\/div><p><span style=\"font-family: JetBrains Mono,monospace; font-size: 0.7rem; color: #8892a4;\">2023<\/span><\/p><\/div><\/div><\/div><div class=\"mg-project-card\" style=\"margin-bottom: 24px;\"><p><img decoding=\"async\" style=\"width: 100%; height: 210px; object-fit: cover; display: block;\" src=\"https:\/\/images.unsplash.com\/photo-1544197150-b99a580bb7a8?w=700&amp;q=80\" alt=\"CloudVault file storage API\" \/><\/p><div style=\"padding: 22px 24px 24px;\"><div style=\"margin-bottom: 12px;\"><span class=\"mg-tag\">Node.js<\/span><span class=\"mg-tag\">AWS S3<\/span><span class=\"mg-tag\">MySQL<\/span><\/div><h3 style=\"color: #f0f4ff; font-family: Space Grotesk,sans-serif; font-weight: bold; font-size: 1.1rem; margin: 0 0 9px;\">CloudVault \u2014 File Storage API<\/h3><p style=\"color: #8892a4; font-size: 0.87rem; line-height: 1.65; margin: 0 0 20px;\">A scalable file upload\/retrieval API with AWS S3 integration, file type validation, access-controlled share links, usage quotas, and MySQL metadata store.<\/p><div style=\"display: flex; justify-content: space-between; align-items: center;\"><div><a style=\"color: #3b6fff; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none; margin-right: 16px;\" href=\"#\">See More \u2192<\/a><a style=\"color: #8892a4; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none;\" href=\"#\">GitHub \u2197<\/a><\/div><p><span style=\"font-family: JetBrains Mono,monospace; font-size: 0.7rem; color: #8892a4;\">2023<\/span><\/p><\/div><\/div><\/div><\/div><\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-tab-title elementor-tab-mobile-title\" aria-selected=\"false\" data-tab=\"4\" role=\"tab\" tabindex=\"-1\" aria-controls=\"elementor-tab-content-3304\" aria-expanded=\"false\">Python<\/div>\n\t\t\t\t\t<div id=\"elementor-tab-content-3304\" class=\"elementor-tab-content elementor-clearfix\" data-tab=\"4\" role=\"tabpanel\" aria-labelledby=\"elementor-tab-title-3304\" tabindex=\"0\" hidden=\"hidden\"><div style=\"display: grid; grid-template-columns: repeat(auto-fill,minmax(310px,1fr)); gap: 24px;\"><div class=\"mg-project-card\" style=\"margin-bottom: 24px;\"><p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/msgportfolio.com\/wp-content\/uploads\/2026\/06\/FightingGame-2-300x149.png\" width=\"372\" height=\"185\" \/><\/p><p>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 Python, Itch.io<\/p><div style=\"padding: 22px 24px 24px;\"><div style=\"margin-bottom: 12px;\"><h3 style=\"color: #f0f4ff; font-family: Space Grotesk,sans-serif; font-weight: bold; font-size: 1.1rem; margin: 0 0 9px;\">Virtual Fighter \u2014 Arcade Fighting Game<\/h3><p style=\"color: #8892a4; font-size: 0.87rem; line-height: 1.65; margin: 0 0 20px;\">An arcade fighting made with pycharm and pygame using sprites with custom animations from itch.io. Two player fighting game with responsive health bars, the player with the most health wins.<\/p><div style=\"display: flex; justify-content: space-between; align-items: center;\"><div><a style=\"color: #3b6fff; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none; margin-right: 16px;\" href=\"#\">See More \u2192<\/a><a style=\"color: #8892a4; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none;\" href=\"#\">GitHub \u2197<\/a><\/div><p><span style=\"font-family: JetBrains Mono,monospace; font-size: 0.7rem; color: #8892a4;\">2023<\/span><\/p><\/div><\/div><\/div><\/div><div class=\"mg-project-card\" style=\"margin-bottom: 24px;\"><p><img decoding=\"async\" style=\"width: 100%; height: 210px; object-fit: cover; display: block;\" src=\"https:\/\/images.unsplash.com\/photo-1579389083078-4e7018379f7e?w=700&amp;q=80\" alt=\"FinTrack Python finance CLI\" \/><\/p><div style=\"padding: 22px 24px 24px;\"><div style=\"margin-bottom: 12px;\"><span class=\"mg-tag\">Python<\/span><span class=\"mg-tag\">Pandas<\/span><span class=\"mg-tag\">Matplotlib<\/span><span class=\"mg-tag\">CLI<\/span><\/div><h3 style=\"color: #f0f4ff; font-family: Space Grotesk,sans-serif; font-weight: bold; font-size: 1.1rem; margin: 0 0 9px;\">FinTrack \u2014 Personal Finance CLI<\/h3><p style=\"color: #8892a4; font-size: 0.87rem; line-height: 1.65; margin: 0 0 20px;\">A command-line personal finance tracker that imports bank CSV exports, auto-categorizes transactions, generates monthly reports, and renders spending charts.<\/p><div style=\"display: flex; justify-content: space-between; align-items: center;\"><div><a style=\"color: #3b6fff; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none; margin-right: 16px;\" href=\"#\">See More \u2192<\/a><a style=\"color: #8892a4; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none;\" href=\"#\">GitHub \u2197<\/a><\/div><p><span style=\"font-family: JetBrains Mono,monospace; font-size: 0.7rem; color: #8892a4;\">2023<\/span><\/p><\/div><\/div><\/div><\/div><\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-tab-title elementor-tab-mobile-title\" aria-selected=\"false\" data-tab=\"5\" role=\"tab\" tabindex=\"-1\" aria-controls=\"elementor-tab-content-3305\" aria-expanded=\"false\">ML \/ Data<\/div>\n\t\t\t\t\t<div id=\"elementor-tab-content-3305\" class=\"elementor-tab-content elementor-clearfix\" data-tab=\"5\" role=\"tabpanel\" aria-labelledby=\"elementor-tab-title-3305\" tabindex=\"0\" hidden=\"hidden\"><div style=\"display: grid; grid-template-columns: repeat(auto-fill,minmax(310px,1fr)); gap: 24px;\"><div class=\"mg-project-card\" style=\"margin-bottom: 24px;\"><p><img decoding=\"async\" style=\"width: 100%; height: 210px; object-fit: cover; display: block;\" src=\"https:\/\/images.unsplash.com\/photo-1555949963-ff9fe0c870eb?w=700&amp;q=80\" alt=\"DataStream AI analytics pipeline\" \/><\/p><div style=\"padding: 22px 24px 24px;\"><div style=\"margin-bottom: 12px;\"><span class=\"mg-tag\">Python<\/span><span class=\"mg-tag\">FastAPI<\/span><span class=\"mg-tag\">scikit-learn<\/span><span class=\"mg-tag\">PostgreSQL<\/span><\/div><h3 style=\"color: #f0f4ff; font-family: Space Grotesk,sans-serif; font-weight: bold; font-size: 1.1rem; margin: 0 0 9px;\">DataStream \u2014 AI Analytics Pipeline<\/h3><p style=\"color: #8892a4; font-size: 0.87rem; line-height: 1.65; margin: 0 0 20px;\">An intelligent data processing pipeline that ingests CSV or JSON data, runs ML classification models, and exposes insights via a FastAPI REST interface.<\/p><div style=\"display: flex; justify-content: space-between; align-items: center;\"><div><a style=\"color: #3b6fff; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none; margin-right: 16px;\" href=\"#\">See More \u2192<\/a><a style=\"color: #8892a4; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none;\" href=\"#\">GitHub \u2197<\/a><\/div><p><span style=\"font-family: JetBrains Mono,monospace; font-size: 0.7rem; color: #8892a4;\">2024<\/span><\/p><\/div><\/div><\/div><div class=\"mg-project-card\" style=\"margin-bottom: 24px;\"><p><img decoding=\"async\" style=\"width: 100%; height: 210px; object-fit: cover; display: block;\" src=\"https:\/\/images.unsplash.com\/photo-1504868584819-f8e8b4b6d7e3?w=700&amp;q=80\" alt=\"SentimentLens NLP BERT analysis\" \/><\/p><div style=\"padding: 22px 24px 24px;\"><div style=\"margin-bottom: 12px;\"><span class=\"mg-tag\">Python<\/span><span class=\"mg-tag\">NLP<\/span><span class=\"mg-tag\">BERT<\/span><span class=\"mg-tag\">Flask<\/span><\/div><h3 style=\"color: #f0f4ff; font-family: Space Grotesk,sans-serif; font-weight: bold; font-size: 1.1rem; margin: 0 0 9px;\">SentimentLens \u2014 NLP Analyzer<\/h3><p style=\"color: #8892a4; font-size: 0.87rem; line-height: 1.65; margin: 0 0 20px;\">A sentiment analysis tool using a fine-tuned BERT model to classify text as positive, neutral, or negative. Includes a Flask web UI and batch CSV mode.<\/p><div style=\"display: flex; justify-content: space-between; align-items: center;\"><div><a style=\"color: #3b6fff; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none; margin-right: 16px;\" href=\"#\">See More \u2192<\/a><a style=\"color: #8892a4; font-family: Space Grotesk,sans-serif; font-weight: 600; font-size: 0.85rem; text-decoration: none;\" href=\"#\">GitHub \u2197<\/a><\/div><p><span style=\"font-family: JetBrains Mono,monospace; font-size: 0.7rem; color: #8892a4;\">2024<\/span><\/p><\/div><\/div><\/div><\/div><\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-1886e55 e-flex e-con-boxed e-con e-parent\" data-id=\"1886e55\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-ae1e174 mg-cta-block e-con-full e-flex e-con e-child\" data-id=\"ae1e174\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-040fc77 mg-eyebrow elementor-widget elementor-widget-heading\" data-id=\"040fc77\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\">\/\/ want_to_see_more<\/div>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-146fec6 elementor-widget elementor-widget-heading\" data-id=\"146fec6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Want the Full GitHub?<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-63a1969 elementor-widget elementor-widget-text-editor\" data-id=\"63a1969\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p style=\"color:#8892A4;max-width:480px;text-align:center;margin:0 auto;\">All projects include source code, README documentation, and commit history \u2014 so you can see exactly how I work and think.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-dbb71fd e-con-full e-flex e-con e-child\" data-id=\"dbb71fd\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-4216010 mg-btn-cyan elementor-align-center elementor-widget elementor-widget-button\" data-id=\"4216010\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/www.linkedin.com\/in\/michael-gordon-0a4868259\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">View LinkedIn Profile \u2192<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-dcace57 mg-btn-outline elementor-align-center elementor-widget elementor-widget-button\" data-id=\"dcace57\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"\/?page_id=13\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Get In Touch<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>\/\/ project_portfolio Every Project Has a Story Explore the full range of what I&#8217;ve built \u2014 each one designed to demonstrate real skills, real decisions, and real results worth talking about. All Projects Web Apps Backend Python ML \/ Data All Projects PHP,JS,HTML,CSS,MySQL, MAMP BlueHat Data Extraction \u2014 Penetration Testing Hack\u00a0 A web application that [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":4,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"footnotes":""},"class_list":["post-12","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/msgportfolio.com\/index.php?rest_route=\/wp\/v2\/pages\/12","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/msgportfolio.com\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/msgportfolio.com\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/msgportfolio.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/msgportfolio.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=12"}],"version-history":[{"count":48,"href":"https:\/\/msgportfolio.com\/index.php?rest_route=\/wp\/v2\/pages\/12\/revisions"}],"predecessor-version":[{"id":221,"href":"https:\/\/msgportfolio.com\/index.php?rest_route=\/wp\/v2\/pages\/12\/revisions\/221"}],"wp:attachment":[{"href":"https:\/\/msgportfolio.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=12"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}