<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Constanza Diaz</title>
    <description>The latest articles on DEV Community by Constanza Diaz (@constanza_diaz_dev).</description>
    <link>https://dev.to/constanza_diaz_dev</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3538347%2Ff355ba65-0762-4616-aa4e-1800706b4f12.png</url>
      <title>DEV Community: Constanza Diaz</title>
      <link>https://dev.to/constanza_diaz_dev</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/constanza_diaz_dev"/>
    <language>en</language>
    <item>
      <title>From Prompt to Practical: Evolving HandyFEM’s User Flow with Claude.ai + Mermaid.live</title>
      <dc:creator>Constanza Diaz</dc:creator>
      <pubDate>Wed, 15 Oct 2025 12:14:42 +0000</pubDate>
      <link>https://dev.to/constanza_diaz_dev/from-prompt-to-practical-evolving-handyfems-user-flow-with-claudeai-mermaidlive-fj7</link>
      <guid>https://dev.to/constanza_diaz_dev/from-prompt-to-practical-evolving-handyfems-user-flow-with-claudeai-mermaidlive-fj7</guid>
      <description>&lt;p&gt;In my previous post about HandyFEM user flow I used Figma and ChatGPT to create a user flow for may app. This time I asked claude.ai, and I've got a much more complete version. &lt;br&gt;
First of all I explained Claude all about my app, and I tried creating a prompt to create my chart in RapidChart, because I saw a post about it, but unfortunately it didn't work as expected, the chart was never built, and I tried several times, I even tried to make a smaller one, but nothing was built at all. &lt;/p&gt;

&lt;p&gt;So I asked claude.ai for alternatives to RapidChart, and I decided to give a try to Mermaid.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foou5l60tdd23dltt69k1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foou5l60tdd23dltt69k1.png" alt="First attempt of Mermaid code made by Claude.ai" width="800" height="393"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It gave me a good enough result, already more complete than what I've done before, but with less visual references... so I copy/pasted my previous diagram and suggested to integrate both ideas.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsy9p8v1zmnp2tb2i9v52.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsy9p8v1zmnp2tb2i9v52.png" alt="Asking Claude to integrate both charts" width="729" height="740"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;new diagram:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Color-coded:&lt;/strong&gt;&lt;br&gt;
Yellow = Buttons&lt;br&gt;
Light blue = Forms&lt;br&gt;
Teal = Screens&lt;br&gt;
Purple = Decision points&lt;br&gt;
Blue = Professional UI&lt;br&gt;
Green = Client UI&lt;br&gt;
Red = Admin UI&lt;br&gt;
Gray = System processes&lt;/p&gt;

&lt;p&gt;The diagram shows the actual interface elements and navigation flow, making it practical for your developers to reference when building the app!&lt;/p&gt;

&lt;p&gt;(Disclaimer: I had to iterate a few times in Claude, to get the correct flow, as the admin flow was incomplete).&lt;/p&gt;

&lt;p&gt;The following image is just an unreadable screenshot for a reference, it was too large to attach in real size:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;UI/Navigation flow and User journey flow:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fep0us9lzjb1xoao6nqi2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fep0us9lzjb1xoao6nqi2.png" alt="Final UI/Navigation flow diagram (unreadable)" width="664" height="920"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.mermaidchart.com/app/projects/75e90edc-ad33-442c-a2c1-e97de4c73342/diagrams/66e54f91-963a-4145-b23b-2f6d9ab2f876/share/invite/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJkb2N1bWVudElEIjoiNjZlNTRmOTEtOTYzYS00MTQ1LWIyM2ItMmY2ZDlhYjJmODc2IiwiYWNjZXNzIjoiQ29tbWVudCIsImlhdCI6MTc2MDQ3NTI5OH0.Unm61oiCBHYJt1VUdePIxYAaHUlOri0mOFTKa-utKSM" rel="noopener noreferrer"&gt;View fullsize&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>ux</category>
      <category>ai</category>
      <category>productivity</category>
      <category>tooling</category>
    </item>
    <item>
      <title>From Prompt to Practical: Evolving HandyFEM’s User Flow with Claude.ai + Mermaid.live</title>
      <dc:creator>Constanza Diaz</dc:creator>
      <pubDate>Tue, 14 Oct 2025 21:43:23 +0000</pubDate>
      <link>https://dev.to/constanza_diaz_dev/from-prompt-to-practical-evolving-handyfems-user-flow-with-claudeai-mermaidlive-kg2</link>
      <guid>https://dev.to/constanza_diaz_dev/from-prompt-to-practical-evolving-handyfems-user-flow-with-claudeai-mermaidlive-kg2</guid>
      <description>&lt;p&gt;I’m building &lt;strong&gt;HandyFEM&lt;/strong&gt;, a directory + marketplace connecting women professionals in construction and repairs with clients. In my &lt;a href="https://dev.to/constanza_diaz_dev/building-a-full-stack-web-app-from-scratch-first-steps-gi8"&gt;previous post&lt;/a&gt;, I sketched an initial user flow using Figma and ChatGPT. This time I pushed further: I briefed &lt;strong&gt;Claude&lt;/strong&gt; with the full app context and iterated toward a &lt;strong&gt;color-coded, developer-ready UI/navigation diagram&lt;/strong&gt; using &lt;strong&gt;Mermaid&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;This post documents what I tried, what failed, and what finally worked—so you can reproduce the setup without losing hours to tooling dead ends.&lt;/p&gt;




&lt;h2&gt;
  
  
  Goal
&lt;/h2&gt;

&lt;p&gt;Create a &lt;strong&gt;single source of truth&lt;/strong&gt; for HandyFEM’s navigation and user journeys—clear enough for stakeholders, and concrete enough for developers to implement screens, forms, and decisions.&lt;/p&gt;




&lt;h2&gt;
  
  
  Attempt 1: RapidChart (didn’t pan out)
&lt;/h2&gt;

&lt;p&gt;I first tried to auto-generate the diagram via &lt;strong&gt;RapidChart&lt;/strong&gt; prompts. Multiple attempts—including smaller subsets—didn’t render a chart at all. Interesting idea, but in my case it wasn’t reliable enough to ship.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Tooling takeaway:&lt;/em&gt; if your diagram generator is brittle, switch to a text-based standard you can version-control.&lt;/p&gt;




&lt;h2&gt;
  
  
  Pivot: Mermaid for reproducible, versioned diagrams
&lt;/h2&gt;

&lt;p&gt;Claude suggested alternatives, and I decided to give &lt;strong&gt;Mermaid&lt;/strong&gt; a try. It immediately produced a &lt;strong&gt;decent first draft&lt;/strong&gt;—already more complete than my earlier diagram, even if it lacked some visual cues.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foou5l60tdd23dltt69k1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foou5l60tdd23dltt69k1.png" alt="First attempt of Mermaid code made by Claude.ai" width="800" height="393"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;To enrich it, I &lt;strong&gt;pasted my previous flow&lt;/strong&gt; and asked Claude to &lt;strong&gt;integrate both&lt;/strong&gt;. That gave me structure + detail.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsy9p8v1zmnp2tb2i9v52.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsy9p8v1zmnp2tb2i9v52.png" alt="Asking Claude to integrate both charts" width="729" height="740"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  The final diagram (color-coded for quick scanning)
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Legend:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Yellow&lt;/strong&gt; = Buttons.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Light blue&lt;/strong&gt; = Forms.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Teal&lt;/strong&gt; = Screens.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Purple&lt;/strong&gt; = Decision points.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Blue&lt;/strong&gt; = Professional UI.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Green&lt;/strong&gt; = Client UI.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Red&lt;/strong&gt; = Admin UI.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Gray&lt;/strong&gt; = System processes.
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This mapping keeps discussions concrete. Designers and developers can point to the exact element in the flow and agree on behavior.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Note: I iterated a few times in Claude to complete the &lt;strong&gt;admin&lt;/strong&gt; path.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The image below is a small screenshot just for reference.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;UI/Navigation flow and User journey flow:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fep0us9lzjb1xoao6nqi2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fep0us9lzjb1xoao6nqi2.png" alt="Final UI/Navigation flow diagram (unreadable)" width="664" height="920"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.mermaidchart.com/app/projects/75e90edc-ad33-442c-a2c1-e97de4c73342/diagrams/66e54f91-963a-4145-b23b-2f6d9ab2f876/share/invite/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJkb2N1bWVudElEIjoiNjZlNTRmOTEtOTYzYS00MTQ1LWIyM2ItMmY2ZDlhYjJmODc2IiwiYWNjZXNzIjoiQ29tbWVudCIsImlhdCI6MTc2MDQ3NTI5OH0.Unm61oiCBHYJt1VUdePIxYAaHUlOri0mOFTKa-utKSM" rel="noopener noreferrer"&gt;Full size:&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Minimal, reproducible snippet (Mermaid)
&lt;/h2&gt;

&lt;p&gt;Here’s a simplified fragment that captures the pattern I used—screens, forms, decisions, and role-scoped branches. You can drop this into any Mermaid-enabled markdown and expand it for your app.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;flowchart TD
  %% Legend-inspired classes
  classDef screen fill:#0fb,stroke:#066;       %% Teal
  classDef form fill:#b3e5fc,stroke:#0288d1;   %% Light blue
  classDef decision fill:#b39ddb,stroke:#512da8; %% Purple
  classDef button fill:#ffeb3b,stroke:#f57f17; %% Yellow
  classDef pro fill:#90caf9,stroke:#1565c0;    %% Blue (Professional UI)
  classDef cli fill:#a5d6a7,stroke:#2e7d32;    %% Green (Client UI)
  classDef admin fill:#ef9a9a,stroke:#c62828;  %% Red (Admin UI)
  classDef system fill:#bdbdbd,stroke:#616161; %% Gray (System)

  %% Entry
  A[Landing Screen]:::screen --&amp;gt; B{Choose role}:::decision

  %% Client path
  B --&amp;gt;|Client| C[Client Dashboard]:::screen
  C --&amp;gt; D[Search Professionals Form]:::form
  D --&amp;gt; E[Results Screen]:::screen
  E --&amp;gt; F[Request Quote Button]:::button
  F --&amp;gt; G[Request Form]:::form
  G --&amp;gt; H[System: Notify matched pros]:::system

  %% Professional path
  B --&amp;gt;|Professional| P[Pro Dashboard]:::screen
  P --&amp;gt; Q[Complete Profile Form]:::form
  Q --&amp;gt; R[Verify Identity Button]:::button
  R --&amp;gt; S[System: KYC check]:::system
  S --&amp;gt; T{Approved?}:::decision
  T --&amp;gt;|Yes| U[Receive job requests]:::screen
  T --&amp;gt;|No| V[Manual review]:::admin

  %% Admin path
  B --&amp;gt;|Admin| A1[Admin Panel]:::admin
  A1 --&amp;gt; A2[Moderate Listings]:::admin
  A1 --&amp;gt; A3[Resolve Disputes]:::admin
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6ty3xym6gtfyopxhyiwu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6ty3xym6gtfyopxhyiwu.png" alt="simplified chart" width="800" height="698"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why this helps:&lt;/strong&gt;  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Text-as-diagram&lt;/strong&gt; means you can version the flow in Git, review it in pull requests, and co-edit with your team.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Color classes&lt;/strong&gt; encode semantics you can reuse across large diagrams.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Branching by role&lt;/strong&gt; makes gaps obvious and audit-able.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Practical notes
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Prompt shape matters.&lt;/strong&gt; My best results came from supplying Claude with the &lt;strong&gt;app glossary, roles, and UI primitives&lt;/strong&gt; (screen, form, decision, button, system).
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Iterate role by role.&lt;/strong&gt; I filled Client and Professional paths first, then Admin.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Keep it modular.&lt;/strong&gt; Break huge flows into &lt;strong&gt;linked sub-diagrams&lt;/strong&gt; per feature if your tool or host chokes on size.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Treat it like code.&lt;/strong&gt; Store the &lt;code&gt;.md&lt;/code&gt; or &lt;code&gt;.mmd&lt;/code&gt; in your repo and make changes via PRs.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  What I’ll do next
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Split the mega-diagram into feature-level Mermaid files.
&lt;/li&gt;
&lt;li&gt;Connect each node to &lt;strong&gt;issue links&lt;/strong&gt; or &lt;strong&gt;Figma frames&lt;/strong&gt; for implementation hand-off.
&lt;/li&gt;
&lt;li&gt;Add &lt;strong&gt;acceptance criteria&lt;/strong&gt; to decisions and forms to reduce ambiguity during dev.&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;If you’re mapping a complex app, pairing a capable LLM with Mermaid gives you speed, structure, and a durable artifact your team can actually build from.&lt;/p&gt;

</description>
      <category>ux</category>
      <category>tooling</category>
      <category>productivity</category>
      <category>ai</category>
    </item>
    <item>
      <title>Lovable vs V0 - Vibe coding a Single Landing page</title>
      <dc:creator>Constanza Diaz</dc:creator>
      <pubDate>Thu, 02 Oct 2025 15:47:55 +0000</pubDate>
      <link>https://dev.to/constanza_diaz_dev/lovable-vs-v0-vibe-coding-a-single-landing-page-3dp6</link>
      <guid>https://dev.to/constanza_diaz_dev/lovable-vs-v0-vibe-coding-a-single-landing-page-3dp6</guid>
      <description>&lt;p&gt;Today I am testing Lovable and V0 to create the website for Oriana Di Guida, a Image consultant for men.&lt;/p&gt;

&lt;p&gt;I have to say that I like working on V0 better than Lovable, especially because it allows to edit the code in the browser... but the results were so much better in Lovable for the first attempt this time. This is the result from the prompt that I will provide at the end of this article, although I did make a few little tweaks:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxww6ozkjpvlz6rtoqiym.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxww6ozkjpvlz6rtoqiym.png" alt="Lovable1" width="800" height="784"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmrhf0mhsd2maoc35hz7j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmrhf0mhsd2maoc35hz7j.png" alt="Lovable2" width="800" height="820"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh895j43e63f0ci87yi1a.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh895j43e63f0ci87yi1a.png" alt="Lovable13" width="800" height="903"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;and this is the first attempt of  V0, you will see that the design is so much simpler and didn't mathe the colors I wanted:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F97ltiyge04i4gqijxgwu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F97ltiyge04i4gqijxgwu.png" alt=" " width="800" height="981"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxtjwniklqo0n12mkbesu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxtjwniklqo0n12mkbesu.png" alt=" " width="800" height="855"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F16jeqfdeq9mhy0m5lqr8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F16jeqfdeq9mhy0m5lqr8.png" alt=" " width="800" height="951"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;On the other hand, now V0 has a new feature for creating Design Systems, so I created my own DS with my desired colors, for light and dark mode:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbyggw8033kl6oafsikom.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbyggw8033kl6oafsikom.png" alt=" " width="800" height="380"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcstc55e21pzen6cd6i41.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcstc55e21pzen6cd6i41.png" alt=" " width="800" height="396"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And now... after applying a customized DS/theme... The page looks much more professional and elegant than Lovable. Although I am having troubles to update the fonts, which I still don't love.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fd93i6vdlq8py3883b6y2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fd93i6vdlq8py3883b6y2.png" alt=" " width="800" height="954"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1366dozxyyxh38rmvvu8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1366dozxyyxh38rmvvu8.png" alt=" " width="800" height="787"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fusug8lsbczlq9lpe1xwd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fusug8lsbczlq9lpe1xwd.png" alt=" " width="800" height="894"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>vibecoding</category>
      <category>lovable</category>
      <category>v0</category>
    </item>
    <item>
      <title>Building a Full Stack Web App from scratch: First Steps</title>
      <dc:creator>Constanza Diaz</dc:creator>
      <pubDate>Mon, 29 Sep 2025 22:23:35 +0000</pubDate>
      <link>https://dev.to/constanza_diaz_dev/building-a-full-stack-web-app-from-scratch-first-steps-gi8</link>
      <guid>https://dev.to/constanza_diaz_dev/building-a-full-stack-web-app-from-scratch-first-steps-gi8</guid>
      <description>&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;I am Constanza Díaz, Web developer, industrial designer, UX/UI enthusiast, aspiring entrepreneur, and self-taught digital product creator — currently building my own web application and documenting the process.&lt;/p&gt;

&lt;p&gt;I've been working as a front end developer for the last 6 years and now I'm planning to develop my own web application named &lt;strong&gt;HandyFEM&lt;/strong&gt;, a digital platform designed to connect women professionals in skilled trades with clients.  &lt;/p&gt;

&lt;p&gt;I am doing this as a way to learn by doing, as &lt;strong&gt;artificial intelligence&lt;/strong&gt; is evolving so quickly and becoming a &lt;strong&gt;must&lt;/strong&gt; for every developer and digital product creator and owner. At the same time, I will build my own personal project, which I am developing as a business project at &lt;strong&gt;Innoemprèn Sostenible&lt;/strong&gt;, a program for entrepreneurs at &lt;strong&gt;Tecnocampus University in Barcelona, Spain&lt;/strong&gt;.  &lt;/p&gt;

&lt;p&gt;Building this app will be a good way to create a very complete application where multiple features can be added — this is a very big challenge as a &lt;em&gt;designer-developer-entrepreneur&lt;/em&gt; and a true &lt;em&gt;one-woman band&lt;/em&gt;, but also a great way to show all my multiple skills in one place :D.  &lt;/p&gt;

&lt;p&gt;After a few attempts of "vibe coding" without a plan using Vercel v0 and Lovable, I realized my app is too ambitious to be done in only one prompt :D. So I decided to create a professional approach and document it, so that I can learn everything during the process and get feedback from other devs and designers.  &lt;/p&gt;

&lt;p&gt;I'm documenting every step — from mapping the app structure to experimenting with AI-driven prototyping.  &lt;/p&gt;

&lt;p&gt;For this project, I will start with &lt;strong&gt;Vercel v0&lt;/strong&gt; as an AI assistant for generating frontend components, with &lt;strong&gt;Supabase&lt;/strong&gt; as the backend layer. This blog series will serve both as a technical journal and a record of decisions that shape the MVP.  &lt;/p&gt;




&lt;h2&gt;
  
  
  Starting with a Map
&lt;/h2&gt;

&lt;p&gt;AI tools like Vercel v0 can generate impressive amounts of code quickly. The risk? Losing track of fundamentals if the product lacks a clear structure.  &lt;/p&gt;

&lt;p&gt;To avoid gaps, I started by outlining the &lt;strong&gt;navigation map of HandyFEM&lt;/strong&gt;: a high-level diagram of screens, user flows, and connections. This ensures that all the important features won’t be overlooked later.  &lt;/p&gt;




&lt;h2&gt;
  
  
  HandyFEM Navigation Map (MVP)
&lt;/h2&gt;

&lt;p&gt;Here’s the first structural map created in FigJam. It defines the scope of the MVP and keeps development aligned:  &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fib4n29kvuqqgrbdww8o7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fib4n29kvuqqgrbdww8o7.png" alt=" " width="800" height="487"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Caption: HandyFEM Navigation Map (MVP) — Yellow: buttons | Green: components (will develop more detail later).&lt;/em&gt;  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Key sections:&lt;/strong&gt;  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Landing Page:&lt;/strong&gt; entry point with signup, login, and directory access.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Auth:&lt;/strong&gt; client and professional signup, plus login.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Role-Based Dashboards:&lt;/strong&gt; tailored panels for clients and professionals.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Public Directory:&lt;/strong&gt; searchable list of professionals with filters.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Professional Profiles:&lt;/strong&gt; detailed pages with contact options.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Messaging System:&lt;/strong&gt; list of conversations and direct chat.
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Lessons from the Process
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Dashboard ≠ Profile&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Dashboards serve as control centers. Profiles are just editable data. Keeping them separate opens room for metrics, history, or verification in the future.  &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Roles must be explicit&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Defining client vs. professional flows early makes the product scalable without major refactors.  &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Planning is leverage&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
One diagram clarified priorities and prevented the common trap of coding first and restructuring later.  &lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;




&lt;h2&gt;
  
  
  What’s Next
&lt;/h2&gt;

&lt;p&gt;The next step is translating this map into &lt;strong&gt;Jira epics and tasks&lt;/strong&gt;, preparing a &lt;strong&gt;Sprint 0&lt;/strong&gt; focused on:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Setting up Supabase tables and relationships.
&lt;/li&gt;
&lt;li&gt;Configuring authentication (email + password).
&lt;/li&gt;
&lt;li&gt;Establishing the initial Next.js + Tailwind architecture.
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This structured approach allows me to integrate AI tools without sacrificing control or long-term scalability.  &lt;/p&gt;




&lt;p&gt;👉 This post opens the series on building HandyFEM from scratch. The upcoming entries will cover Jira planning, Sprint 0 setup, and the integration of Vercel v0 into the workflow. Follow the hashtag &lt;code&gt;#HandyFEMapp&lt;/code&gt; if you don’t want to miss the progress!  &lt;/p&gt;




&lt;p&gt;📎 For those who want to dive deeper or leave comments on my board, the full navigation map is available here: &lt;a href="https://www.figma.com/board/sAuRYzk8GWYP5CHEGNWYNC/Untitled?node-id=1-809&amp;amp;t=SZP2Sh61uLjUQoES-4" rel="noopener noreferrer"&gt;Open FigJam Board&lt;/a&gt;  &lt;/p&gt;

&lt;h2&gt;
  
  
  📚 HandyFEM App Series
&lt;/h2&gt;

&lt;p&gt;🔗 &lt;strong&gt;Previous:&lt;/strong&gt; &lt;em&gt;none (this is the first post)&lt;/em&gt;&lt;br&gt;&lt;br&gt;
🔗 &lt;strong&gt;Next:&lt;/strong&gt; &lt;em&gt;&lt;a href="https://dev.to/constanza_diaz_dev/from-prompt-to-practical-evolving-handyfems-user-flow-with-claudeai-mermaidlive-kg2"&gt;From Prompt to Practical: Evolving HandyFEM’s User Flow with Claude + Mermaid&lt;/a&gt;&lt;/em&gt;  &lt;/p&gt;

</description>
      <category>webdev</category>
      <category>uxdesign</category>
      <category>handyfemapp</category>
      <category>handyfemapp01</category>
    </item>
  </channel>
</rss>
