Team Ai
Datasetpublic

GD-ML/AndroidCode

sourceHugging Facemitupdated 6mo agoView on Hugging Face
1likes3.4kdownloads
11133_0.html366 linesDownload Raw Back to 11133
1<!DOCTYPE html>2<html lang="en">3<head>4<meta charset="UTF-8">5<meta name="viewport" content="width=1080, initial-scale=1.0">6<title>Map Navigation UI Mock</title>7<style>8  body { margin: 0; padding: 0; background: transparent; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; }9  #render-target {10    width: 1080px;11    height: 2400px;12    position: relative;13    overflow: hidden;14    background: #dfe3e8;15    border-radius: 32px;16    box-shadow: 0 18px 60px rgba(0,0,0,0.25);17  }18 19  /* Map background placeholder */20  .map-placeholder {21    position: absolute;22    left: 0; top: 0;23    width: 100%; height: 100%;24    background: #E0E0E0;25    border: 1px solid #BDBDBD;26    color: #757575;27    display: flex;28    align-items: center;29    justify-content: center;30    font-size: 28px;31    letter-spacing: 0.5px;32  }33 34  /* Status bar */35  .status-bar {36    position: absolute;37    top: 36px; left: 36px; right: 36px;38    height: 56px;39    display: flex;40    align-items: center;41    color: #333;42    font-size: 30px;43  }44  .status-left { display: flex; align-items: center; gap: 18px; }45  .status-right { margin-left: auto; display: flex; align-items: center; gap: 26px; }46  .sb-icon {47    width: 34px; height: 34px; border-radius: 8px;48    background: rgba(255,255,255,0.85);49    box-shadow: 0 2px 6px rgba(0,0,0,0.15);50    display: grid; place-items: center;51  }52  .sb-icon svg { width: 22px; height: 22px; }53 54  /* Top info pill */55  .top-pill {56    position: absolute;57    top: 180px; left: 120px; right: 120px;58    height: 120px;59    background: #fff;60    border-radius: 60px;61    box-shadow: 0 10px 24px rgba(0,0,0,0.18);62    display: flex;63    align-items: center;64    padding: 0 40px;65    gap: 26px;66  }67  .top-pill .weather {68    width: 56px; height: 56px; border-radius: 28px;69    background: #FFF7D6;70    display: grid; place-items: center;71  }72  .top-pill .main-time {73    font-weight: 800;74    font-size: 44px;75    color: #222;76  }77  .top-pill .sep {78    font-weight: 800;79    font-size: 44px;80    color: #8a8a8a;81  }82  .top-pill .arrival {83    font-weight: 800;84    font-size: 44px;85    color: #222;86  }87  .top-pill .share {88    margin-left: auto;89    width: 64px; height: 64px; border-radius: 32px;90    background: #f6f2ff;91    display: grid; place-items: center;92  }93  .top-pill .share svg { width: 34px; height: 34px; fill: #6F46CF; }94 95  /* Floating circular buttons */96  .fab {97    position: absolute;98    width: 120px; height: 120px; border-radius: 60px;99    background: #fff;100    box-shadow: 0 8px 20px rgba(0,0,0,0.2);101    display: grid; place-items: center;102  }103  .fab svg { width: 54px; height: 54px; }104  .fab.back { left: 40px; top: 300px; }105  .fab.report { left: 40px; top: 520px; }106  .fab.cancel { right: 40px; top: 300px; }107  .fab.mute { right: 40px; top: 520px; }108  .fab.cancel svg { stroke: #E53935; }109  .fab-blue {110    position: absolute;111    width: 132px; height: 132px; border-radius: 66px;112    background: #3D6FD9;113    box-shadow: 0 12px 24px rgba(0,0,0,0.28);114    display: grid; place-items: center;115    right: 40px;116  }117  .fab-blue.path { bottom: 520px; }118  .fab-blue.locate { bottom: 360px; }119  .fab-blue svg { width: 64px; height: 64px; fill: #fff; }120 121  /* Route dotted line */122  .route-dots {123    position: absolute;124    left: 680px; top: 820px;125    width: 8px; height: 900px;126    background:127      radial-gradient(circle, #1E73E6 55%, transparent 60%) 0 0/8px 28px repeat-y;128  }129 130  /* User marker with cone */131  .user-marker {132    position: absolute;133    left: 640px; top: 1050px;134    width: 54px; height: 54px;135    border-radius: 50%;136    background: #1E73E6;137    border: 6px solid #fff;138    box-shadow: 0 6px 18px rgba(0,0,0,0.25);139  }140  .user-marker::before {141    content: "";142    position: absolute;143    left: 50%; transform: translateX(-50%);144    top: -70px;145    width: 0; height: 0;146    border-left: 18px solid transparent;147    border-right: 18px solid transparent;148    border-bottom: 70px solid rgba(40,190,120,0.45); /* green cone */149    filter: blur(1px);150  }151  .user-marker::after {152    content: "";153    position: absolute;154    left: 50%; transform: translateX(-50%);155    top: -46px;156    width: 0; height: 0;157    border-left: 10px solid transparent;158    border-right: 10px solid transparent;159    border-bottom: 46px solid rgba(40,190,120,0.55);160  }161 162  /* Bottom sheet */163  .bottom-sheet {164    position: absolute;165    left: 20px; right: 20px; bottom: 20px;166    height: 700px;167    background: #fff;168    border-radius: 36px;169    box-shadow: 0 -12px 36px rgba(0,0,0,0.22);170    padding: 30px 36px;171  }172  .pager {173    display: flex; justify-content: center; gap: 18px;174    margin-top: 6px;175  }176  .pager .dot {177    width: 18px; height: 18px; border-radius: 50%;178    background: #D0D4DA;179  }180  .pager .dot.active { background: #70767F; }181 182  .title-row {183    margin-top: 26px;184    display: flex; align-items: center;185  }186  .title-row .walk-icon {187    width: 52px; height: 52px; border-radius: 10px;188    background: #E9F1FF;189    display: grid; place-items: center;190    margin-right: 18px;191  }192  .title-row .text {193    font-size: 44px; font-weight: 800; color: #2A2F3A;194    display: flex; align-items: center; gap: 12px;195  }196  .title-row .metro {197    width: 46px; height: 46px; border-radius: 23px;198    background: #E9F1FF; color: #2A61DA;199    display: grid; place-items: center; font-weight: 800;200    font-size: 28px;201  }202  .title-row .eta {203    margin-left: auto;204    display: flex; align-items: center; gap: 12px;205    font-weight: 700; color: #2A61DA;206  }207  .title-row .eta .bubble {208    width: 84px; height: 84px; border-radius: 42px;209    border: 6px solid #BFD0FF;210    display: grid; place-items: center;211    font-size: 32px;212  }213 214  .step {215    margin-top: 36px;216    display: flex; align-items: center;217    gap: 24px;218  }219  .step .lead {220    width: 84px; height: 84px; border-radius: 18px;221    background: #EDF0F5;222    display: grid; place-items: center;223  }224  .step .lead svg { width: 44px; height: 44px; }225  .step .desc {226    font-size: 36px; color: #374151;227  }228  .timeline {229    margin-top: 36px;230    height: 22px; border-radius: 11px;231    background: #EEF1F5;232    position: relative;233  }234  .timeline .handle {235    position: absolute; left: 36%; top: -8px;236    width: 160px; height: 38px; border-radius: 20px;237    background: #C8CDD5;238  }239 240  /* Small Google watermark placeholder */241  .google-watermark {242    position: absolute;243    left: 40px; bottom: 750px;244    font-size: 34px; color: #666;245    background: rgba(255,255,255,0.8);246    padding: 6px 12px; border-radius: 10px;247  }248</style>249</head>250<body>251<div id="render-target">252  <div class="map-placeholder">[IMG: City Map / Streets & Buildings]</div>253 254  <!-- Status bar -->255  <div class="status-bar">256    <div class="status-left">257      <div style="font-weight:700;">6:07</div>258      <div class="sb-icon" title="Do Not Disturb">259        <svg viewBox="0 0 24 24"><circle cx="12" cy="12" r="10" fill="#777"/><rect x="6" y="11" width="12" height="2" fill="#fff"/></svg>260      </div>261      <div class="sb-icon" title="Mail">262        <svg viewBox="0 0 24 24"><rect x="3" y="6" width="18" height="12" rx="3" fill="#777"/><path d="M4 7l8 6 8-6" stroke="#fff" stroke-width="2" fill="none"/></svg>263      </div>264      <div class="sb-icon" title="Bluetooth">265        <svg viewBox="0 0 24 24"><path d="M7 5l10 7-10 7V5z" fill="#777"/></svg>266      </div>267    </div>268    <div class="status-right">269      <div class="sb-icon" title="Location">270        <svg viewBox="0 0 24 24"><path d="M12 2l6 20-6-5-6 5 6-20z" fill="#777"/></svg>271      </div>272      <div class="sb-icon" title="Wi‑Fi">273        <svg viewBox="0 0 24 24"><path d="M2 9c5-4 15-4 20 0M6 13c3-2 9-2 12 0M10 17c2-1 4-1 6 0" stroke="#777" stroke-width="2" fill="none"/></svg>274      </div>275      <div class="sb-icon" title="Battery">276        <svg viewBox="0 0 24 24"><rect x="3" y="7" width="18" height="10" rx="2" fill="#777"/><rect x="5" y="9" width="14" height="6" fill="#fff"/><rect x="21" y="9" width="2" height="6" fill="#777"/></svg>277      </div>278    </div>279  </div>280 281  <!-- Top info pill -->282  <div class="top-pill">283    <div class="weather">284      <svg viewBox="0 0 24 24">285        <circle cx="12" cy="12" r="6" fill="#FFC107"/>286        <path d="M2 12h20" stroke="#FFC107" stroke-width="2"/>287      </svg>288    </div>289    <div class="main-time">118 min</div>290    <div class="sep">/</div>291    <div class="arrival">12:35</div>292    <div class="share">293      <svg viewBox="0 0 24 24"><path d="M16 6a3 3 0 1 0 0 6 3 3 0 0 0 0-6zm-8 4a3 3 0 1 0 0 6 3 3 0 0 0 0-6zm8 4a3 3 0 1 0 0 6 3 3 0 0 0 0-6zM8 13l8-3M8 15l8 3" stroke="#6F46CF" stroke-width="2" fill="none" stroke-linecap="round"/></svg>294    </div>295  </div>296 297  <!-- Floating controls -->298  <div class="fab back" title="Back">299    <svg viewBox="0 0 24 24"><path d="M15 5L7 12l8 7" stroke="#4A4A4A" stroke-width="3" fill="none" stroke-linecap="round" stroke-linejoin="round"/></svg>300  </div>301  <div class="fab report" title="Report">302    <svg viewBox="0 0 24 24"><path d="M4 20l0-8 8-6 8 6v8H4z" fill="#2E6BD9"/><text x="12" y="16" text-anchor="middle" font-size="12" fill="#fff" font-family="Arial" font-weight="700">!</text></svg>303  </div>304  <div class="fab cancel" title="Exit">305    <svg viewBox="0 0 24 24"><path d="M5 5l14 14M19 5L5 19" stroke-width="3" fill="none"/></svg>306  </div>307  <div class="fab mute" title="Mute">308    <svg viewBox="0 0 24 24">309      <path d="M4 9v6h4l6 4V5L8 9H4z" fill="#4A4A4A"/>310      <path d="M16 8l5 8" stroke="#E53935" stroke-width="3"/>311    </svg>312  </div>313 314  <!-- Route and marker -->315  <div class="route-dots"></div>316  <div class="user-marker" title="Current location"></div>317 318  <!-- Blue action buttons -->319  <div class="fab-blue path" title="Route options">320    <svg viewBox="0 0 24 24"><path d="M3 17c4-8 10-8 18-2" stroke="#fff" stroke-width="2" fill="none" stroke-linecap="round"/></svg>321  </div>322  <div class="fab-blue locate" title="Center on me">323    <svg viewBox="0 0 24 24"><circle cx="12" cy="12" r="8" fill="none" stroke="#fff" stroke-width="2"/><circle cx="12" cy="12" r="2" fill="#fff"/></svg>324  </div>325 326  <div class="google-watermark">Google</div>327 328  <!-- Bottom sheet -->329  <div class="bottom-sheet">330    <div class="pager">331      <div class="dot active"></div>332      <div class="dot"></div>333      <div class="dot"></div>334      <div class="dot"></div>335      <div class="dot"></div>336    </div>337 338    <div class="title-row">339      <div class="walk-icon">340        <svg viewBox="0 0 24 24"><path d="M12 4a2 2 0 1 1 0 4 2 2 0 0 1 0-4zm-3 7l3 2 2 6M9 11l-4 6" stroke="#2A61DA" stroke-width="2" fill="none" stroke-linecap="round"/></svg>341      </div>342      <div class="text">343        <span>Walk to</span>344        <div class="metro">🚆</div>345        <span>Orléans</span>346      </div>347      <div class="eta">348        <div class="bubble">6</div>349        <span style="font-size:32px;">min</span>350      </div>351    </div>352 353    <div class="step">354      <div class="lead">355        <svg viewBox="0 0 24 24"><path d="M4 12h12M12 5l7 7-7 7" stroke="#6B7280" stroke-width="2" fill="none" stroke-linecap="round"/></svg>356      </div>357      <div class="desc"><strong>Walk North</strong> on <strong>Rue de la République</strong></div>358    </div>359 360    <div class="timeline">361      <div class="handle"></div>362    </div>363  </div>364</div>365</body>366</html>
GD-ML/AndroidCode · Team Ai