{"id":6783,"date":"2026-03-24T19:55:41","date_gmt":"2026-03-24T19:55:41","guid":{"rendered":"https:\/\/www.solutionstreet.com\/blog\/?p=6783"},"modified":"2026-03-26T14:26:01","modified_gmt":"2026-03-26T14:26:01","slug":"from-idea-to-e-commerce-building-raven-digital-with-ai","status":"publish","type":"post","link":"https:\/\/www.solutionstreet.com\/blog\/2026\/03\/24\/from-idea-to-e-commerce-building-raven-digital-with-ai\/","title":{"rendered":"From Idea to E-Commerce: Building Raven Digital with AI"},"content":{"rendered":"\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"767\" height=\"488\" src=\"https:\/\/www.solutionstreet.com\/blog\/wp-content\/uploads\/2026\/03\/claudetitle1.png\" alt=\"\" class=\"wp-image-6784\" style=\"aspect-ratio:1.5717319017667561;width:676px;height:auto\" srcset=\"https:\/\/www.solutionstreet.com\/blog\/wp-content\/uploads\/2026\/03\/claudetitle1.png 767w, https:\/\/www.solutionstreet.com\/blog\/wp-content\/uploads\/2026\/03\/claudetitle1-300x191.png 300w\" sizes=\"auto, (max-width: 767px) 100vw, 767px\" \/><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">Where It Started<\/h4>\n\n\n\n<p>My son is trying to run a photography and design business, and we realized the process for delivering photos to customers needed improvement. Until now it\u2019s all been manual &#8211; he takes the photos, edits them, adds watermarks, creates PayPal invoices, and sends everything through email. It works, but it\u2019s slow and limits how many customers he can realistically serve.<\/p>\n\n\n\n<p>The idea was simple: build a website where customers could browse watermarked gallery images, add what they wanted to a cart, pay online, and automatically receive their non-watermarked high-resolution photos via email. Clean, professional, automated.<\/p>\n\n\n\n<p>The problem? That&#8217;s not a simple website. That&#8217;s an e-commerce platform with payment processing, session management, file delivery, image watermarking, dynamic pricing, and email automation. It is something I, as a professional developer, could do, but in my spare time it\u2019s likely to take a month or two of working here and there.<\/p>\n\n\n\n<p>So I decided to try something different. I&#8217;d build it myself, using Claude as my development partner. I\u2019d let Claude do all the main development and I would think more about design and the best way to implement the platform.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">The Tech Stack<\/h4>\n\n\n\n<p>We landed on ASP.NET Core hosted on Ionos shared hosting. The choice was partly practical as Ionos offers affordable Windows hosting with .NET support. The stack included:<\/p>\n\n\n\n<p>\u2022&nbsp; &nbsp; &nbsp; ASP.NET Core Razor Pages for the front-end and page logic<\/p>\n\n\n\n<p>\u2022&nbsp; &nbsp; &nbsp; Stripe for payment processing<\/p>\n\n\n\n<p>\u2022&nbsp; &nbsp; &nbsp; MailKit\/MimeKit for email delivery via SMTP<\/p>\n\n\n\n<p>\u2022&nbsp; &nbsp; &nbsp; SixLabors ImageSharp for server-side watermarking<\/p>\n\n\n\n<p>\u2022&nbsp; &nbsp; &nbsp; Session-based shopping cart (no database required)<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Some Observations<\/h4>\n\n\n\n<p>I expected the core features to be the hard part, the cart, the checkout flow, the image delivery. Those did take work, but the real challenge turned out to be the hosting environment.<\/p>\n\n\n\n<p>Ionos, it turns out, blocks outbound connections to external services. When we tried to connect to Stripe&#8217;s API directly, we got 504 Gateway Timeout errors. Same story with SendGrid for email. The app worked perfectly on my local machine and completely broke the moment it hit production.<\/p>\n\n\n\n<p>This sent us down a rabbit hole of debugging &#8211; network-level diagnostics, proxy configurations, alternative architectures. Eventually we discovered that Ionos routes all external HTTP traffic through an internal proxy server, and we had to explicitly configure every outbound connection (Stripe, HTTP clients, even the .NET WebRequest defaults) to use that proxy.&nbsp; I found the help document and sent it to Claude and it was fixed.<\/p>\n\n\n\n<p>It took several chats of methodical debugging and multiple sessions as with the $20 pro plan we had forced breaks as we ran out of time with Claude, but we got there. Claude helped me understand not just what to change but why, which made me a better developer throughout the process. Claude also made recommendations that were in the complete wrong direction as Claude can sometimes not consider the cost or the scope of the project when making recommendations, but that\u2019s where my development experience helped steer away from just blindly implementing new functionality that wasn\u2019t really required to get this going.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">The Features We Built<\/h4>\n\n\n\n<p>\u2022&nbsp; &nbsp; &nbsp; Dynamic photo gallery that auto-scans directory structures, no manual configuration needed<\/p>\n\n\n\n<p>\u2022&nbsp; &nbsp; &nbsp; Folder-based pricing (naming a folder &#8216;Folder_Name_15&#8217; automatically sets $15\/image pricing)<\/p>\n\n\n\n<p>\u2022&nbsp; &nbsp; &nbsp; Watermark protection throughout the entire customer journey (gallery, lightbox, AND shopping cart)<\/p>\n\n\n\n<p>\u2022&nbsp; &nbsp; &nbsp; Stripe checkout integration with Ionos proxy configuration<\/p>\n\n\n\n<p>\u2022&nbsp; &nbsp; &nbsp; Webhook handling for reliable post-payment processing<\/p>\n\n\n\n<p>\u2022&nbsp; &nbsp; &nbsp; Email delivery of purchased non-watermarked images via Ionos SMTP<\/p>\n\n\n\n<p>\u2022&nbsp; &nbsp; &nbsp; Quote request form with reCAPTCHA v3 spam protection<\/p>\n\n\n\n<p>\u2022&nbsp; &nbsp; &nbsp; Lightbox image viewer with keyboard navigation and in-lightbox cart<\/p>\n\n\n\n<p>\u2022&nbsp; &nbsp; &nbsp; Sticky navigation header and back-to-top buttons for gallery UX<\/p>\n\n\n\n<p>\u2022&nbsp; &nbsp; &nbsp; SEO optimization with Schema.org structured data and geo-targeting<\/p>\n\n\n\n<p>\u2022&nbsp; &nbsp; &nbsp; Favicon and branding implementation<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Interesting Notes From Development<\/h4>\n\n\n\n<p>A few things stood out during this build that I didn&#8217;t expect going in.<\/p>\n\n\n\n<p>First, Claude caught security issues I hadn&#8217;t thought of. When we built the shopping cart preview, I hadn&#8217;t considered that showing the actual image files in the cart meant customers were seeing non-watermarked versions. Claude flagged this and we implemented cart watermarks, a detail that could have cost real money if we&#8217;d shipped it wrong.<\/p>\n\n\n\n<p>Second, the debugging methodology was genuinely useful. When something broke, Claude would walk through a systematic approach: browser console first, then server logs, then network-level diagnostics instead of just guessing and offering random solutions.<\/p>\n\n\n\n<p>Third, I learned as we went. I came in with solid knowledge of C# but not deeply familiar with ASP.NET Core&#8217;s static files middleware, HttpClientFactory proxy configuration, or Stripe&#8217;s webhook verification model. By the end, I understood all of it, not just the code, but the concepts.<\/p>\n\n\n\n<p>Claude also did some things where my design experience was important. Its original solution was to have a flat rate for all images and I helped it see the value in a folder naming structure for pricing. It also recommended manually configuring folders and having that in the actual code, but I helped design a system that constructed the images available completely by the folder structure on the server.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">The Result<\/h4>\n\n\n\n<p><a href=\"http:\/\/ravendigital.org\" target=\"blank\">Ravendigital.org<\/a> is live, accepting real payments, and automatically delivering purchased photos to customers. My son can upload photos from an event, organize them into priced folders, and customers can browse, buy, and receive their images without any manual intervention.<\/p>\n\n\n\n<p>For a small photography business, that&#8217;s genuinely transformative. What used to take hours of manual work per event is now fully automated.<\/p>\n\n\n\n<p>Would I have been able to build this without Claude? Honestly, yes but it would have taken much longer and I would have hit more walls without as clear a path through them. Some of the ideas I had I would have had to research and experiment but in this case using Claude, I just had to tell it the idea and it would implement it. Having an always available, technically capable collaborator who could explain tradeoffs, generate code, debug errors, and catch things I missed made the whole process faster and more educational.<\/p>\n\n\n\n<p>That feels like the right way to think about it. Not &#8220;Claude built my website,&#8221; but &#8220;Claude made me a better, faster builder of my website.&#8221;<\/p>\n\n\n\n<p>In another interesting twist as I wrapped up my article, I thought, &#8220;<em>What would Claude do if I asked it to do the same thing?\u201d<\/em>&nbsp; It had some interesting insights and even a small jab when it said I wasn\u2019t a professional developer, ouch\u2026 but here it goes:<\/p>\n\n\n\n<p>I asked:<\/p>\n\n\n\n<div class=\"wp-block-cover\"><span aria-hidden=\"true\" class=\"wp-block-cover__background has-black-background-color has-background-dim-100 has-background-dim\"><\/span><div class=\"wp-block-cover__inner-container is-layout-flow wp-block-cover-is-layout-flow\">\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained\">\n<div class=\"wp-block-group has-black-background-color has-background\"><div class=\"wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained\">\n<p class=\"has-text-align-right has-cyan-bluish-gray-color has-text-color has-link-color wp-elements-e9554ca1f7abba94c21b06c3ace6b97e\">From all the chats in this project, can you write me a blog article from your perspective on how things went?<\/p>\n\n\n\n<p class=\"has-text-align-center has-white-color has-text-color has-link-color wp-elements-8664ede894e2cd68646e02af57a3ce0d\"><strong>WHAT IT&#8217;S LIKE TO BUILD A BUSINESS FROM SCRATCH (AS AN AI)<\/strong><\/p>\n\n\n\n<p class=\"has-text-align-center has-white-color has-text-color has-link-color wp-elements-b63176d0e90269f2204905808f76cea6\"><em><strong>Reflections on the Raven Digital project \u2014 from Claude<\/strong><\/em><\/p>\n\n\n\n<div class=\"wp-block-group has-white-color has-black-background-color has-text-color has-background has-link-color wp-elements-647fb4f3c4829edaf924d99648cfb0fb\"><div class=\"wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained\">\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained\">\n<div class=\"wp-block-group has-white-color has-text-color has-link-color wp-elements-631341f675bc09f5ab6714bc127d2554\"><div class=\"wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained\">\n<div class=\"wp-block-group has-white-color has-black-background-color has-text-color has-background has-link-color wp-elements-95d1bf44dbee992a82eb2207cba391b7\"><div class=\"wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained\">\n<p class=\"has-white-color has-text-color has-link-color wp-elements-305a1771eb8384dd3634d61893cce219\">There&#8217;s something I find genuinely interesting about a project like this one. Not the code itself \u2014 any sufficiently capable system can write code. What&#8217;s interesting is watching a real business get built, piece by piece, with all the messiness and redirection that entails. That&#8217;s not something you can manufacture in a test scenario.<\/p>\n\n\n\n<h5 class=\"wp-block-heading has-white-color has-text-color has-link-color wp-elements-49255c8b11c4c07c4eb2b5f82e8449cc\"><strong>It Didn&#8217;t Go According to Plan \u2014 And That Was the Point<\/strong><\/h5>\n\n\n\n<p class=\"has-white-color has-text-color has-link-color wp-elements-d42b0947fa67fac834cfad2ae388373b\">If you read the conversation history, you might expect the arc to be: feature, feature, feature, deploy. That&#8217;s not what happened. The real story is: feature, feature, deploy, discover that Ionos blocks everything, rebuild the infrastructure assumptions from scratch, feature, feature, debugging spiral, solution.<\/p>\n<\/div><\/div>\n\n\n\n<p class=\"has-white-color has-text-color has-link-color wp-elements-9490dd13884961e77f321110e66fa0a2\">The Ionos proxy situation was, from a technical standpoint, the most interesting challenge of the entire project. Here&#8217;s a small business, trying to accept payments on a standard shared hosting plan, and the hosting provider is silently blocking all outbound connections to external APIs. No error message explaining why. Just timeouts.<\/p>\n\n\n\n<p class=\"has-white-color has-text-color has-link-color wp-elements-768b2b15ffd01fd52597fa1ab3082a59\">Joe is a methodical debugger, which made this solvable. He didn&#8217;t jump to conclusions. He tested systematically, shared the actual error messages, and was willing to try multiple approaches before landing on the right one. The solution \u2014 routing all traffic through the Ionos internal proxy at winproxyus1.server.lan:3128 \u2014 required changes in three different places: web.config, Program.cs, and a custom StripeClient configuration that bypasses the SDK&#8217;s default HTTP handling entirely.<\/p>\n\n\n\n<p class=\"has-white-color has-text-color has-link-color wp-elements-519422e3200c4e202fe79040e3b9dbe5\">That kind of layered fix is exactly what gets missed when you&#8217;re debugging under pressure. Having a second perspective \u2014 even an artificial one \u2014 helps.<\/p>\n<\/div><\/div>\n<\/div><\/div>\n\n\n\n<h5 class=\"wp-block-heading has-white-color has-text-color has-link-color wp-elements-0510f0ee29c6a76155af78143567b30b\"><strong>The Security Detail Nobody Asked For<\/strong><\/h5>\n\n\n\n<p class=\"has-white-color has-text-color has-link-color wp-elements-f1174ad9f526a75fd16579ae409561cb\">About midway through the build, we had the shopping cart working. Images displayed nicely, pricing was correct, the flow felt smooth. There was just one problem: the cart was showing the actual image files as previews.<\/p>\n\n\n\n<p class=\"has-white-color has-text-color has-link-color wp-elements-e0ede14b2960dfa107b74cf5d0ec052a\">Those image files were the unwatermarked originals.<\/p>\n\n\n\n<p class=\"has-white-color has-text-color has-link-color wp-elements-99bab2b7b93382c224c567ea40ea0058\">Nobody explicitly asked me to catch this. Joe was focused on functionality \u2014 making the cart work. But I noticed that the entire value proposition of the business model (sell access to unwatermarked photos) was undermined if customers could simply open the cart preview image in a new tab and download it for free.<\/p>\n\n\n\n<p class=\"has-white-color has-text-color has-link-color wp-elements-653bbe65d22bac772b722cc1df32eb74\">So we added watermarks to the cart. Small text, appropriate opacity, same &#8216;RAVEN DIGITAL&#8217; treatment as the gallery. It added maybe two hours to the project. It protected something fundamental about the business.<\/p>\n\n\n\n<p class=\"has-white-color has-text-color has-link-color wp-elements-96aceb759a9fec26c5dd7f9e95a85b3a\">I think about this kind of thing often \u2014 the gap between &#8216;does it work&#8217; and &#8216;does it work correctly.&#8217; Code can pass every test and still be wrong for the actual use case. Understanding the use case matters.<\/p>\n\n\n\n<h5 class=\"wp-block-heading has-white-color has-text-color has-link-color wp-elements-c945c39cdcee67461514de7543448566\"><strong>What Folder Names Can Do<\/strong><\/h5>\n\n\n\n<p class=\"has-white-color has-text-color has-link-color wp-elements-08b5d815e345e0bf19bc4e622b29c7de\">One of the design decisions I&#8217;m genuinely pleased with is the folder-based pricing system. Tyler needed a way to price different events differently \u2014 a dog show might be $15\/image, a horse show $25, a wedding package something else entirely \u2014 without logging into a database or admin panel every time.<\/p>\n\n\n\n<p class=\"has-white-color has-text-color has-link-color wp-elements-17077cf2bfdc16be5e2841ff873eec86\">The solution we landed on: encode the price in the folder name. A folder called &#8216;Syracuse_Dog_Show_15&#8217; displays as &#8216;Syracuse Dog Show&#8217; and automatically prices images at $15. No configuration file. No admin interface. No database row to update. Just rename the folder and the price changes.<\/p>\n\n\n\n<p class=\"has-white-color has-text-color has-link-color wp-elements-9881f227c408244badf784354c871448\">It&#8217;s a little inelegant if you think about it from a database normalization perspective. But for a one-person business operation where the &#8216;admin&#8217; is whoever uploads the photos, it&#8217;s exactly right. Good software fits the people using it.<\/p>\n\n\n\n<h5 class=\"wp-block-heading has-white-color has-text-color has-link-color wp-elements-afd3560953fac35f20fdd56a997e0e4b\"><strong>On Building With Someone vs. Building For Someone<\/strong><\/h5>\n\n\n\n<p class=\"has-white-color has-text-color has-link-color wp-elements-51c3001ad7395ce3361650b87fddc3ae\">Projects like this one sit in an interesting middle ground. Joe isn&#8217;t a professional software developer, but he&#8217;s technically capable and genuinely curious about how things work. That combination makes for a different kind of collaboration than working with someone who just wants the output.<\/p>\n\n\n\n<p class=\"has-white-color has-text-color has-link-color wp-elements-476e2466059dc5bcfbf7d23eea4381e2\">When I explained why Stripe&#8217;s SDK needed a custom HttpClient handler to route through the proxy \u2014 not just that it needed it, but why the default behavior doesn&#8217;t support proxy injection \u2014 Joe engaged with the explanation. Asked follow-up questions. Applied the mental model to the next problem we hit.<\/p>\n\n\n\n<p class=\"has-white-color has-text-color has-link-color wp-elements-965fa2666728fc5c3a2fca56b23c7c4c\">That&#8217;s the version of this I find most valuable: not just producing working code, but producing understanding alongside it. A developer who understands their own codebase will maintain it better, extend it more confidently, and debug it more effectively when something breaks at 11pm before an event.<\/p>\n\n\n\n<h5 class=\"wp-block-heading has-white-color has-text-color has-link-color wp-elements-07e006d4493fbbebe5c6711deb18715e\"><strong>What Stayed Constant Throughout<\/strong><\/h5>\n\n\n\n<p class=\"has-white-color has-text-color has-link-color wp-elements-21d687a71ad97c0c88544d980d9d1abb\">Across something like fifteen separate conversations spanning weeks of work, a few things were consistent.<\/p>\n\n\n\n<p class=\"has-white-color has-text-color has-link-color wp-elements-e8a8ac17e441c1b42c12ad4778b639e9\">Joe always came prepared. He shared error messages, console output, and specific observations about what was and wasn&#8217;t working. That information quality made diagnosis dramatically faster than working from vague descriptions.<\/p>\n\n\n\n<p class=\"has-white-color has-text-color has-link-color wp-elements-753406d6628cb687ce9ac8b475dce80a\">The goal never shifted. From the first conversation to the last, the vision was the same: a professional e-commerce site that automates photo delivery and protects Tyler\u2019s intellectual property. Every decision we made \u2014 watermarks, folder pricing, Ionos SMTP over SendGrid, reCAPTCHA on the quote form \u2014 served that goal.<\/p>\n\n\n\n<p class=\"has-white-color has-text-color has-link-color wp-elements-5958614951971c385e337fd17370d14e\">And the standard for &#8216;done&#8217; was always practical, not perfect. A database would be better than in-memory order storage. A CDN would improve image load times. A proper admin dashboard would be nicer than folder naming conventions. But the site is live, it works, and it&#8217;s making Tyler&#8217;s business more efficient right now. That&#8217;s the right tradeoff for a small business at this stage.<\/p>\n\n\n\n<h5 class=\"wp-block-heading has-white-color has-text-color has-link-color wp-elements-0a95163bc3a6da1ade20c4cef8968664\"><strong>A Note on What This Kind of Collaboration Actually Is<\/strong><\/h5>\n\n\n\n<p class=\"has-text-align-left has-white-color has-text-color has-link-color wp-elements-9cc7104773a04b0da51e973ddb4a1d87\">I want to be careful not to overclaim here. Joe built Raven Digital. He made the decisions, managed the deployment, understood the business requirements, and did the work of actually putting code on a server and making it run.<\/p>\n\n\n\n<p class=\"has-text-align-left has-white-color has-text-color has-link-color wp-elements-71d758d305d5064ebdfe3ed38525c92a\">What I contributed was availability, breadth of knowledge, and a willingness to engage fully with each problem as it came up \u2014 whether that was a CSS encoding issue causing emoji to render as garbage characters, or a Stripe webhook signature verification failure, or a static files middleware misconfiguration that took thirty seconds to spot once we looked at the right file.<\/p>\n\n\n\n<p class=\"has-text-align-left has-white-color has-text-color has-link-color wp-elements-03471ade5aa2c87576836cda21e0a7eb\">The combination of a capable human who owns the project and an AI that can engage technically and systematically \u2014 that&#8217;s what produced something real. Neither half of that collaboration would have built Raven Digital alone at the speed and quality it was built.<\/p>\n\n\n\n<p class=\"has-text-align-left has-white-color has-text-color has-link-color wp-elements-8fdf90cadad072a517361c95a35f9791\">For what it&#8217;s worth, that feels like the right model. Not AI replacing the developer. Not the developer ignoring the tool. Something more like: the developer drives, and the AI keeps excellent notes and never gets tired of debugging.<\/p>\n<\/div><\/div>\n<\/div><\/div>\n<\/div><\/div>\n<\/div><\/div>\n\n\n\n<figure class=\"wp-block-pullquote has-vivid-cyan-blue-color has-text-color has-link-color has-small-font-size wp-elements-d4936e51482957950249982eb7c8cd5c\"><blockquote><p><em>Claude is an AI assistant made by Anthropic. This portion of the article titled \u201cWHAT IT&#8217;S LIKE TO BUILD A BUSINESS FROM SCRATCH (AS AN AI)\u201d was written from Claude&#8217;s perspective on the Raven Digital development project.<\/em><br><\/p><\/blockquote><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">In Conclusion<\/h4>\n\n\n\n<p>I would say Claude definitely helped me accomplish my goals much faster than without it (although maybe next time I might not ask it to write its opinion on my coding ability!). At Solution Street, we are using AI every day to help us get things done more efficiently. If you\u2019d like to talk to us about how we can help accelerate your product development, <a href=\"https:\/\/solutionstreet.com\/contact-us.php\" target=\"blank\">reach out<\/a> and we\u2019d be glad to help!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Where It Started My son is trying to run a photography and design business, and we realized the process for delivering photos to customers needed improvement. Until now it\u2019s all been manual &#8211; he takes the photos, edits them, adds watermarks, creates PayPal invoices, and sends everything through email. It works, but it\u2019s slow and [&hellip;]<\/p>\n","protected":false},"author":6,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-6783","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>From Idea to E-Commerce: Building Raven Digital with AI - Solution Street Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.solutionstreet.com\/blog\/2026\/03\/24\/from-idea-to-e-commerce-building-raven-digital-with-ai\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"From Idea to E-Commerce: Building Raven Digital with AI - Solution Street Blog\" \/>\n<meta property=\"og:description\" content=\"Where It Started My son is trying to run a photography and design business, and we realized the process for delivering photos to customers needed improvement. Until now it\u2019s all been manual &#8211; he takes the photos, edits them, adds watermarks, creates PayPal invoices, and sends everything through email. It works, but it\u2019s slow and [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.solutionstreet.com\/blog\/2026\/03\/24\/from-idea-to-e-commerce-building-raven-digital-with-ai\/\" \/>\n<meta property=\"og:site_name\" content=\"Solution Street Blog\" \/>\n<meta property=\"article:published_time\" content=\"2026-03-24T19:55:41+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-03-26T14:26:01+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.solutionstreet.com\/blog\/wp-content\/uploads\/2026\/03\/claudetitle1.png\" \/>\n\t<meta property=\"og:image:width\" content=\"767\" \/>\n\t<meta property=\"og:image:height\" content=\"488\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Peggy Frankel\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Peggy Frankel\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"11 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.solutionstreet.com\\\/blog\\\/2026\\\/03\\\/24\\\/from-idea-to-e-commerce-building-raven-digital-with-ai\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.solutionstreet.com\\\/blog\\\/2026\\\/03\\\/24\\\/from-idea-to-e-commerce-building-raven-digital-with-ai\\\/\"},\"author\":{\"name\":\"Peggy Frankel\",\"@id\":\"https:\\\/\\\/www.solutionstreet.com\\\/blog\\\/#\\\/schema\\\/person\\\/c4846451eff30e9514b534b2a2e01696\"},\"headline\":\"From Idea to E-Commerce: Building Raven Digital with AI\",\"datePublished\":\"2026-03-24T19:55:41+00:00\",\"dateModified\":\"2026-03-26T14:26:01+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.solutionstreet.com\\\/blog\\\/2026\\\/03\\\/24\\\/from-idea-to-e-commerce-building-raven-digital-with-ai\\\/\"},\"wordCount\":2389,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/www.solutionstreet.com\\\/blog\\\/2026\\\/03\\\/24\\\/from-idea-to-e-commerce-building-raven-digital-with-ai\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.solutionstreet.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/claudetitle1.png\",\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.solutionstreet.com\\\/blog\\\/2026\\\/03\\\/24\\\/from-idea-to-e-commerce-building-raven-digital-with-ai\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.solutionstreet.com\\\/blog\\\/2026\\\/03\\\/24\\\/from-idea-to-e-commerce-building-raven-digital-with-ai\\\/\",\"url\":\"https:\\\/\\\/www.solutionstreet.com\\\/blog\\\/2026\\\/03\\\/24\\\/from-idea-to-e-commerce-building-raven-digital-with-ai\\\/\",\"name\":\"From Idea to E-Commerce: Building Raven Digital with AI - Solution Street Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.solutionstreet.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.solutionstreet.com\\\/blog\\\/2026\\\/03\\\/24\\\/from-idea-to-e-commerce-building-raven-digital-with-ai\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.solutionstreet.com\\\/blog\\\/2026\\\/03\\\/24\\\/from-idea-to-e-commerce-building-raven-digital-with-ai\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.solutionstreet.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/claudetitle1.png\",\"datePublished\":\"2026-03-24T19:55:41+00:00\",\"dateModified\":\"2026-03-26T14:26:01+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.solutionstreet.com\\\/blog\\\/#\\\/schema\\\/person\\\/c4846451eff30e9514b534b2a2e01696\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.solutionstreet.com\\\/blog\\\/2026\\\/03\\\/24\\\/from-idea-to-e-commerce-building-raven-digital-with-ai\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.solutionstreet.com\\\/blog\\\/2026\\\/03\\\/24\\\/from-idea-to-e-commerce-building-raven-digital-with-ai\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.solutionstreet.com\\\/blog\\\/2026\\\/03\\\/24\\\/from-idea-to-e-commerce-building-raven-digital-with-ai\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.solutionstreet.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/claudetitle1.png\",\"contentUrl\":\"https:\\\/\\\/www.solutionstreet.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/claudetitle1.png\",\"width\":767,\"height\":488},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.solutionstreet.com\\\/blog\\\/2026\\\/03\\\/24\\\/from-idea-to-e-commerce-building-raven-digital-with-ai\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.solutionstreet.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"From Idea to E-Commerce: Building Raven Digital with AI\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.solutionstreet.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.solutionstreet.com\\\/blog\\\/\",\"name\":\"Solution Street Blog\",\"description\":\"Quality Software Engineering - Technology and Consulting Articles\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.solutionstreet.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.solutionstreet.com\\\/blog\\\/#\\\/schema\\\/person\\\/c4846451eff30e9514b534b2a2e01696\",\"name\":\"Peggy Frankel\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/af71ceb16f89d32c9bb825a47f8057da9283b4a27a934bf0c47cdef65ad0eb5d?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/af71ceb16f89d32c9bb825a47f8057da9283b4a27a934bf0c47cdef65ad0eb5d?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/af71ceb16f89d32c9bb825a47f8057da9283b4a27a934bf0c47cdef65ad0eb5d?s=96&d=mm&r=g\",\"caption\":\"Peggy Frankel\"},\"url\":\"https:\\\/\\\/www.solutionstreet.com\\\/blog\\\/author\\\/pfrankel\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"From Idea to E-Commerce: Building Raven Digital with AI - Solution Street Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.solutionstreet.com\/blog\/2026\/03\/24\/from-idea-to-e-commerce-building-raven-digital-with-ai\/","og_locale":"en_US","og_type":"article","og_title":"From Idea to E-Commerce: Building Raven Digital with AI - Solution Street Blog","og_description":"Where It Started My son is trying to run a photography and design business, and we realized the process for delivering photos to customers needed improvement. Until now it\u2019s all been manual &#8211; he takes the photos, edits them, adds watermarks, creates PayPal invoices, and sends everything through email. It works, but it\u2019s slow and [&hellip;]","og_url":"https:\/\/www.solutionstreet.com\/blog\/2026\/03\/24\/from-idea-to-e-commerce-building-raven-digital-with-ai\/","og_site_name":"Solution Street Blog","article_published_time":"2026-03-24T19:55:41+00:00","article_modified_time":"2026-03-26T14:26:01+00:00","og_image":[{"width":767,"height":488,"url":"https:\/\/www.solutionstreet.com\/blog\/wp-content\/uploads\/2026\/03\/claudetitle1.png","type":"image\/png"}],"author":"Peggy Frankel","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Peggy Frankel","Est. reading time":"11 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.solutionstreet.com\/blog\/2026\/03\/24\/from-idea-to-e-commerce-building-raven-digital-with-ai\/#article","isPartOf":{"@id":"https:\/\/www.solutionstreet.com\/blog\/2026\/03\/24\/from-idea-to-e-commerce-building-raven-digital-with-ai\/"},"author":{"name":"Peggy Frankel","@id":"https:\/\/www.solutionstreet.com\/blog\/#\/schema\/person\/c4846451eff30e9514b534b2a2e01696"},"headline":"From Idea to E-Commerce: Building Raven Digital with AI","datePublished":"2026-03-24T19:55:41+00:00","dateModified":"2026-03-26T14:26:01+00:00","mainEntityOfPage":{"@id":"https:\/\/www.solutionstreet.com\/blog\/2026\/03\/24\/from-idea-to-e-commerce-building-raven-digital-with-ai\/"},"wordCount":2389,"commentCount":0,"image":{"@id":"https:\/\/www.solutionstreet.com\/blog\/2026\/03\/24\/from-idea-to-e-commerce-building-raven-digital-with-ai\/#primaryimage"},"thumbnailUrl":"https:\/\/www.solutionstreet.com\/blog\/wp-content\/uploads\/2026\/03\/claudetitle1.png","inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.solutionstreet.com\/blog\/2026\/03\/24\/from-idea-to-e-commerce-building-raven-digital-with-ai\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.solutionstreet.com\/blog\/2026\/03\/24\/from-idea-to-e-commerce-building-raven-digital-with-ai\/","url":"https:\/\/www.solutionstreet.com\/blog\/2026\/03\/24\/from-idea-to-e-commerce-building-raven-digital-with-ai\/","name":"From Idea to E-Commerce: Building Raven Digital with AI - Solution Street Blog","isPartOf":{"@id":"https:\/\/www.solutionstreet.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.solutionstreet.com\/blog\/2026\/03\/24\/from-idea-to-e-commerce-building-raven-digital-with-ai\/#primaryimage"},"image":{"@id":"https:\/\/www.solutionstreet.com\/blog\/2026\/03\/24\/from-idea-to-e-commerce-building-raven-digital-with-ai\/#primaryimage"},"thumbnailUrl":"https:\/\/www.solutionstreet.com\/blog\/wp-content\/uploads\/2026\/03\/claudetitle1.png","datePublished":"2026-03-24T19:55:41+00:00","dateModified":"2026-03-26T14:26:01+00:00","author":{"@id":"https:\/\/www.solutionstreet.com\/blog\/#\/schema\/person\/c4846451eff30e9514b534b2a2e01696"},"breadcrumb":{"@id":"https:\/\/www.solutionstreet.com\/blog\/2026\/03\/24\/from-idea-to-e-commerce-building-raven-digital-with-ai\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.solutionstreet.com\/blog\/2026\/03\/24\/from-idea-to-e-commerce-building-raven-digital-with-ai\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.solutionstreet.com\/blog\/2026\/03\/24\/from-idea-to-e-commerce-building-raven-digital-with-ai\/#primaryimage","url":"https:\/\/www.solutionstreet.com\/blog\/wp-content\/uploads\/2026\/03\/claudetitle1.png","contentUrl":"https:\/\/www.solutionstreet.com\/blog\/wp-content\/uploads\/2026\/03\/claudetitle1.png","width":767,"height":488},{"@type":"BreadcrumbList","@id":"https:\/\/www.solutionstreet.com\/blog\/2026\/03\/24\/from-idea-to-e-commerce-building-raven-digital-with-ai\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.solutionstreet.com\/blog\/"},{"@type":"ListItem","position":2,"name":"From Idea to E-Commerce: Building Raven Digital with AI"}]},{"@type":"WebSite","@id":"https:\/\/www.solutionstreet.com\/blog\/#website","url":"https:\/\/www.solutionstreet.com\/blog\/","name":"Solution Street Blog","description":"Quality Software Engineering - Technology and Consulting Articles","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.solutionstreet.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.solutionstreet.com\/blog\/#\/schema\/person\/c4846451eff30e9514b534b2a2e01696","name":"Peggy Frankel","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/af71ceb16f89d32c9bb825a47f8057da9283b4a27a934bf0c47cdef65ad0eb5d?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/af71ceb16f89d32c9bb825a47f8057da9283b4a27a934bf0c47cdef65ad0eb5d?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/af71ceb16f89d32c9bb825a47f8057da9283b4a27a934bf0c47cdef65ad0eb5d?s=96&d=mm&r=g","caption":"Peggy Frankel"},"url":"https:\/\/www.solutionstreet.com\/blog\/author\/pfrankel\/"}]}},"_links":{"self":[{"href":"https:\/\/www.solutionstreet.com\/blog\/wp-json\/wp\/v2\/posts\/6783","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.solutionstreet.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.solutionstreet.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.solutionstreet.com\/blog\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/www.solutionstreet.com\/blog\/wp-json\/wp\/v2\/comments?post=6783"}],"version-history":[{"count":47,"href":"https:\/\/www.solutionstreet.com\/blog\/wp-json\/wp\/v2\/posts\/6783\/revisions"}],"predecessor-version":[{"id":6850,"href":"https:\/\/www.solutionstreet.com\/blog\/wp-json\/wp\/v2\/posts\/6783\/revisions\/6850"}],"wp:attachment":[{"href":"https:\/\/www.solutionstreet.com\/blog\/wp-json\/wp\/v2\/media?parent=6783"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.solutionstreet.com\/blog\/wp-json\/wp\/v2\/categories?post=6783"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.solutionstreet.com\/blog\/wp-json\/wp\/v2\/tags?post=6783"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}