
    ɢiuw                        d dl Z d dlZd dlZd dlmZmZ ddddddd	d
ddddd
ddddd
gddddddddd
ddddd
ddddd
gddd d!d"d#dd$d
d%d&d'g d(d)d*d+d'g d,d)d-d.dd/d
d0d1dd2d
gdd3d4d5d6d7dd8d
d9d:dd;d
d<d=dd>d
d?d@ddAd
gdgZdB ZdCdDdEg dFg dFdGg dHdIdJdKg dLdMdJdNg dFdOdJdPg dFdQdJdRddSdTddUddVd
ddWddXd
ddYddZd
gddd[d\dd]dd^d
dd_dd`d
ddaddbd
gdddcddd"deddfd
d%d&d'g d(d)d*d+d'g d,d)d-dgddhd
d0diddjd
gdd3dkdld6dmddnd
d9doddpd
d<dqddrd
d?dsddtd
gdgdudvidwdxdydzd{d|g dRd}d~ddddg dg ddg ddIdJdg ddMdJdg ddOdJdPg ddQdJdRdddddddd
ddddd
ddddd
gddddddddd
ddddd
ddddd
gddddd"dddd
d%d&d'g d(d)d*d+d'g d,d)d-dddd
d0dddd
gdd3ddd6dddd
d9dddd
d<dddd
d?dsddd
gdgdudiddddd{d|g dRd}d~ddddg dg ddg ddIdJdg ddMdJdg ddOdJdPg ddQdJdRdddddddd
ddddd
ddddd
gddddddddd
ddddd
ddddd
gddddd"dddd
d%d&d'g d(d)d*d+d'g d,d)d-dddd
d0dddd
gdd3ddd6dddd
d9dddd
d<dddd
d?dddd
gdgdudiddddd{d|g dRd}d~ddddg dg ddg ddIdJdg ddMdJdg ddOdJdPg ddQdJdRdddddddd
ddddd
ddddd
gddddddddd
ddddd
ddddd
gddddd"dddd
d%d&d'g d(d)d*d+d'g d,d)d-dddd
d0dddd
gdd3dd d6dddd
d9dddd
d<dddd
d?dsddd
gdgdudidddydzd{d|g dRd}d~dgZd	 Z	d
 Z
ddZy(      N)DEFAULT_SECTIONSCONTENT_DEPTH_PRESETS   zVision & Goalsz>Tell us the big picture. What's the story behind this project?project_storyz-What's the big-picture goal for this website?textareaze.g., I want to create a trusted resource for first-time homebuyers that generates passive income through affiliate partnerships...)keylabeltypeplaceholdersuccess_visionz)What does success look like in 1-5 years?zYe.g., 50K monthly visitors, $5K/mo in affiliate revenue, recognized brand in the space...	one_thingz<If this site could do ONE thing perfectly, what would it be?inputz>e.g., Help people compare options and make confident decisions)step
step_titlestep_descriptionfields   zTarget Audiencez7Describe the most important person this website is for.ideal_audiencez5Who is your ideal visitor? What are their challenges?zYe.g., Busy professionals aged 30-50 who want to invest but feel overwhelmed by options...audience_journeyz+How do they find you? What's their journey?zZe.g., They Google questions, read comparison articles, look for trusted recommendations...primary_actionz/What's the primary action visitors should take?zEe.g., Sign up for newsletter, click affiliate link, book consultation   zBrand & Stylez5Define the personality and visual feel of your brand.brand_personalityz9If your brand were a person, how would you describe them?zYe.g., A knowledgeable friend who explains complex things simply, warm but professional...color_palettezColor Palette Feelselect) zWarm & InvitingzCool & ProfessionalzEarthy & NaturalzBold & VibrantzMonochromatic & MinimalistzDark & Moody)r   r	   r
   optionsvisual_stylezVisual Style)r   zMinimalist & CleanzCorporate & ProfessionalzPlayful & CreativezElegant & LuxuriouszTech & FuturisticzRustic & Handmadecore_valueszCore values & differentiatorz%e.g., Transparency, simplicity, trustdesired_feelingz4How should visitors FEEL when they land on the site?z-e.g., Confident, relieved, inspired, informed   zFeatures & Futurez0What should the site do, and where should it go?key_featuresz Key features or sections needed?zWe.g., Blog, comparison tables, newsletter signup, resource library, booking calendar...sites_lovedzWebsites you love (and why)?zIe.g., NerdWallet - clean comparisons; Wirecutter - trustworthy reviews...future_visionz)Future vision: How will this site evolve?zLe.g., Add premium membership, online courses, expand into adjacent niches...additional_noteszAnything else we should know?z5Any other preferences, must-haves, or things to avoidc            
         t         D  cg c]  } | d   	 }} t         D  cg c]  } | j                  d      s| d    }} ||t        j                  t              t        j                  t
              i ddddddg d	d
dS c c} w c c} w )Nr   enabledbrandelevatedfade-insingle-scrollcolor_scheme
card_style	animationlayout1.0minimalstandardcomprehensive	legendaryversioncompatible_depthssectionsenabled_sectionsdepth_presetsdiscovery_fieldsprompt_overridesvisual_defaultsmeta)r   getcopydeepcopyr   DISCOVERY_FIELDS_DEFAULT)ssection_keysenabled_by_defaults      3/sites/domain-asset-master/app/services/profiles.pybuild_default_profile_configrI   5   s    &67AeH7L7,<Qqi@P!E(QQ .'<= MM*BC#$"%	
 !V
  8Qs   BBBzAffiliate Landing Pagezaffiliate-landingzHigh-conversion single-page site optimized for affiliate revenue. Comparison tables, trust signals, and strong CTAs. Minimal friction, maximum click-through.)
heroproblemsolutionfeatures
comparisonstatstestimonialsfaq	cta_finalfooterzQuick Lander)rJ   rM   rP   rR   rS   gffffff?)r	   r:   content_multiplierzFull Funnel)	rJ   rK   rL   rM   rN   rP   rQ   rR   rS         ?zAuthority Affiliateg?	LEGENDARYg?r1   zAffiliate Strategyz"Define your monetization approach.z(What products/services will you promote?z=e.g., Web hosting services, VPN providers, financial tools...zRevenue goal and timeline?z/e.g., $3K/mo passive income within 12 months...z2What's your unique angle vs other affiliate sites?zDe.g., Hands-on testing of every product, not just regurgitated specszBuyer Profilez$Who's clicking your affiliate links?z Describe the person ready to buyzXe.g., Small business owners comparing SaaS tools, ready to purchase but need guidance...zWhat triggers their search?z\e.g., They just got frustrated with their current tool, or a friend recommended switching...zPrimary conversion actionz>e.g., Click comparison table affiliate link, use discount codezBrand & Trustz&Affiliate sites live and die by trust.z&What voice builds trust in this niche?zEe.g., Honest reviewer who calls out cons too, data-driven, no hype...zTrust signals that matter mostzHe.g., Verified purchases, transparent methodology, no sponsored rankingszHow should visitors feel?z/e.g., Confident they're getting unbiased advicezCompetitor & ContentzKnow the landscape.zMust-have page elements?zJe.g., Comparison tables, pros/cons lists, star ratings, discount badges...zAffiliate sites you admire?zGe.g., Wirecutter - editorial quality; NerdWallet - data presentation...zGrowth path?zTe.g., Expand to adjacent product categories, add email list, create buying guides...zAnything else?z7Specific affiliate programs, FTC compliance notes, etc.global_tonezWrite as an authoritative, honest reviewer. Always mention pros AND cons. Use comparison language. Optimize for buyer-intent keywords.complementaryborderedr)   r*   r+   r0   r6   r9   )nameslugdescriptionconfigzAuthority Knowledge Basezauthority-knowledgezContent-rich authority site with resource library, team profiles, and educational sections. Designed for thought leadership and organic traffic.)rJ   aboutrM   how_it_worksrO   team	resourcesrP   rQ   contactrR   rS   zQuick Authority)rJ   r^   rM   rQ   rS   zKnowledge Hub)	rJ   r^   rM   r_   ra   rP   rQ   rR   rS   zFull AuthorityzExpertise & Missionz.What knowledge are you sharing with the world?zWhat's your area of expertise?zMe.g., 15 years in cybersecurity, specializing in small business protection...z What impact do you want to have?zIe.g., Become the go-to resource for SMB security, 100K monthly readers...z-Your unique insight that nobody else teaches?zHe.g., Practical security that doesn't require a PhD or enterprise budgetzAudience & LearningzWho are your students/readers?zWho needs your knowledge most?z`e.g., Non-technical business owners who know they're vulnerable but don't know where to start...z-How do they currently learn about this topic?zKe.g., YouTube tutorials, Reddit threads, vendor marketing (often biased)...zWhat should they do first?zIe.g., Download the free security checklist, subscribe to weekly briefingszBrand & Voicez!Define your teaching personality.zYour teaching style?zGe.g., Patient mentor who uses real-world analogies, never talks down...z Core principles of your content?z0e.g., Accuracy, accessibility, actionable advicezHow should readers feel?z3e.g., Empowered, informed, capable of taking actionzContent StrategyzPlan your knowledge library.zContent types you'll create?zVe.g., How-to guides, case studies, tool reviews, weekly newsletter, video tutorials...zKnowledge sites you admire?zBe.g., Moz - SEO guides; Krebs on Security - investigative depth...zContent expansion plans?zHe.g., Online courses, certification program, community forum, podcast...z1Credentials, partnerships, content calendar ideaszWrite as a respected educator and thought leader. Demonstrate deep expertise. Use clear explanations with examples. Prioritize accuracy and actionability over marketing hype.r'   r(   zscroll-revealmagazinezSaaS Product Pagezsaas-productzSoftware product landing page with feature highlights, pricing tiers, how-it-works demos, and conversion-optimized layout. Built for signups and trials.)rJ   rK   rL   rM   r_   rO   pricingrN   rP   rQ   rR   rS   zLaunch Page)rJ   rM   rd   rR   rS   zProduct Page)
rJ   rK   rL   rM   r_   rd   rP   rQ   rR   rS   zFull Product SitezProduct & VisionzWhat does your software do?z&Describe your product in one paragraphz]e.g., A project management tool that combines task tracking with AI-powered time estimates...zGrowth targets?z?e.g., 1000 paying users in 6 months, $50K MRR by end of year...z&Your #1 feature that competitors lack?zDe.g., AI that learns your team's velocity and auto-adjusts deadlineszUsers & WorkflowzWho uses your software and how?zPrimary user persona?zRe.g., Engineering managers at 20-100 person startups juggling multiple projects...z&How do they discover tools like yours?zLe.g., G2 reviews, ProductHunt, colleague recommendations, Google searches...zPrimary conversion goal?z>e.g., Start free trial, book a demo, sign up for freemium planzBrand & DesignzYour product's visual identity.zProduct personality?zUe.g., Smart and capable but never complicated, like having a senior PM on the team...zProduct values?z$e.g., Simplicity, reliability, speedzFirst impression goal?z,e.g., This is the tool I've been looking forzPricing & CompetitionzMarket positioning.zTop 5 features to highlight?zVe.g., Real-time collaboration, AI estimates, Gantt charts, integrations, mobile app...z#Competitor sites with great design?zVe.g., Linear - clean minimal; Notion - friendly onboarding; Slack - fun personality...zProduct roadmap highlights?z=e.g., Enterprise tier, API marketplace, white-label option...zPricing model notes?zDe.g., Freemium + Pro ($19/mo) + Enterprise (custom), annual discountzWrite as a modern SaaS company. Be clear, benefit-focused, and conversion-optimized. Show don't tell - reference specific features and outcomes. Use social proof from recognizable company types.glasszstagger-fade	sectionedzLocal Services Businesszlocal-serviceszService-area business site with contact-heavy layout, team profiles, gallery of work, and trust-building sections. Optimized for phone calls and form submissions.)rJ   r^   rM   r_   galleryrO   r`   rP   rQ   rb   rR   rS   zQuick Presence)rJ   r^   rM   rb   rS   zService Page)	rJ   r^   rM   r_   rP   rQ   rb   rR   rS   zFull Business SitezBusiness & ServiceszWhat do you do and where?z'Describe your business and service areazUe.g., Family-owned plumbing company serving the greater Portland area for 25 years...zBusiness goals?zTe.g., 20 new leads per month, expand to 3 more zip codes, hire 2 more technicians...z-Why do customers choose you over competitors?zKe.g., Same-day emergency service, transparent pricing, 5-star Google ratingzCustomers & TrustzWho calls you and why?zYour typical customer?zGe.g., Homeowners 35-65, dual income, value quality over lowest price...zHow do they find you?z>e.g., Google Maps, neighbor referrals, Nextdoor, yard signs...zWhat should they do?z@e.g., Call for free estimate, fill out contact form, book onlinezBrand & Imagez"How your business presents itself.zYour business personality?zfe.g., Reliable neighbor who shows up on time, explains everything clearly, stands behind their work...zBusiness values?z*e.g., Integrity, punctuality, fair pricingzWhat should visitors feel?z1e.g., These are the pros I can trust with my homeDifferentiatorszStand out from the competition.zServices to highlight?zce.g., Emergency 24/7, free estimates, senior discounts, licensed & insured, warranty on all work...zLocal business sites you like?zEe.g., Any local competitor with good Google reviews and clean site...zGrowth plans?zCe.g., Add commercial services, franchise model, training academy...z3Licenses, certifications, awards, years in businesszWrite for a local service business. Be warm, trustworthy, and community-focused. Emphasize reliability, experience, and personal touch. Include local references where possible. Optimize for local SEO.c                 j    t        j                  dd| j                               j                  d      S )Nz
[^a-z0-9]+-)resublowerstrip)rZ   s    rH   slugifyro   3  s&    66-djjl399#>>    c                 l   g }t        | t              sdgS d| vst        | j                  d      t              s|j	                  d       d| vst        | j                  d      t              s|j	                  d       d| v rr| d   }t        |t              s|j	                  d       nK|j                         D ]8  \  }}d|vr|j	                  d| d	       d
|vs$|j	                  d| d       : t        | j                  dg             D ]"  \  }}d|vs|j	                  d|dz    d       $ |S )NzConfig must be a JSON objectr:   z$Config must contain 'sections' arrayr=   z,Config must contain 'discovery_fields' arrayr<   z!'depth_presets' must be an objectzDepth preset 'z' must contain 'sections'rT   z#' must contain 'content_multiplier'r   zDiscovery step r   z must contain 'fields')
isinstancedictrA   listappenditems	enumerate)r]   errorsdpr   presetir   s          rH   validate_profile_configr|   7  s;   Ffd#.//z&**Z2H$'O<='z&**EW:XZ^/_DE& O$"d#MM=>!xxz ]VV+MMN3%7P"QR'v5MMN3%7Z"[\	]
 VZZ(:B?@ I44MMOAaC50FGHI Mrp   c           
         | j                  dt              }|j                  ||j                  d| j                  dg       dd            }|j                  dg       }t        j                  t              }| j                  d|D cg c]  }|d   	 c}      }g }|D ]%  }	|	d   |v s|	d   |v |	d<   |j                  |	       ' ||j                  dd      fS c c}w )	Nr<   r3   r:   rU   )r:   rT   r   r&   rT   )rA   r   rB   rC   r   ru   )
profile_configdepthpresetsrz   enabled_keysall_sectionsrE   profile_sectionsresultsections
             rH   get_sections_for_profiler   O  s      2GHG[[J^EWEWXbdfEg  @C  9D  !E  FF::j"-L==!12L%))*6VAqx6VWF #5>--!(<!?GIMM'"# 6::2C888 7Ws   C
)r4   )rB   jsonrk   app.services.blueprintr   r   rD   rI   STARTER_PROFILESro   r|   r    rp   rH   <module>r      s3     	 J &\#.]gq  CH  I$/Zdn  @[  \*hry  KK  L
		 'U$/fpz  Lg  h&1^hr  D`  a$/`jq  CJ  K
		 %S'2m  xB  Sn  o#.BH  bd  e"^X  [h  i!,JT[  mT  U%0fpw  Ix  y
	 )N"-OYc  uN  O!,JT^  p{  |#.Ycm  M  N&1PZa  sj  k	
	
C, ^0 )# w I !Q%3A|  UX  Y&3  Bi  AD  E+@  O  WZ  "['2  Aq  IL  M	 -AW{ /:dnx  JI  J 0;Wak  }n  o +6jt{  MS  T _Rx 0;]gq  C]  ^ 2=Zdn  @^  _ 0;V`g  yy  z _Rz 3>fpz  LS  T /:NX`  np  q .QY  gt  u -8Xbi  {E  F 1<Wah  zk  l	 -CYn .9S]g  yE  F -8U_i  {D  E /.R\  nD  E 2=MW^  pi  j	7$!L    h! 1@zhq  ~M   N %<qre3
	8t +% j ] !e%6Dr  KN  O&5  Dl  DG  H+;  JN  fi  "j'2  AE  ]`  a	 -B  YI /:Zdn  @O  P 0;]gq  CN  O +6eov  HR  S -BXx 0;[eo  Ac  d 2=l  wA  R_  ` 0;Wah  zE  F _Ru 3>T^h  zC  D /:NX`  np  q .QY  gt  u -8Zdk  }o  p 1<V`g  yn  o	 -?Us .9Wak  }U  V -8U_i  {  @ /:T^h  zD  E 2=MW^  pc  d	7$!L    P! 18z`o  |F   G %<qre3
	8t $ r d !l%2@v  OR  S&4  Cw  OR  S+>  MX  ps  "t'2  AL  dg  h	 -?Ur /:blv  Hg  h 0;LV`  rs  t +6^ho  AG  H -?Uv 0;R\f  xL  M 2=eoy  KY  Z 0;U_f  xx  y -=St 3>T^h  zQ  R /:NX`  np  q .QY  gt  u -8ISZ  lR  S 1<T^e  we  f	 -DZo .9Wak  }U  V -8]gq  C[  \ /:Wak  }|  } 2=S]d  v|  }	7$!L    d! 18w]k  xC   D %<qre3
	8t *  | [ !c%5Cu  NQ  R&4  Ci  AD  E+?  NP  hk  "l'2  AC  [^  _	 -BXs /:cmw  I`  a 0;LV`  rH  I +6eov  HU  V -@Vn 0;S]g  yB  C 2=T^h  zz  { 0;Q[b  tv  w _Rv 3>Zdn  @h  i /:NX`  np  q .QY  gt  u -8JT[  mY  Z 1<Xbi  {n  o	 ->Tu .9Q[e  w\  ] -8Xbl  ~E  F //S]  ot  u 2=MW^  pe  f	7$!L    j! 18z`i  vE   F %<qre3
	8Ye P?09rp   