Spaces:
Running
Running
| <html lang="en"> | |
| <head> | |
| <meta charset="utf-8"> | |
| <meta name="viewport" content="width=device-width, initial-scale=1"> | |
| <meta name="description" content="An evidence-backed, human-reviewed contribution assistant for public Hugging Face model cards."> | |
| <title>One Good Commit</title> | |
| <link rel="stylesheet" href="static-styles.css"> | |
| <style> | |
| .model-options{background:#fff;border:1px solid #dfe4da;border-radius:10px;box-shadow:0 10px 26px rgba(35,50,39,.08);margin-top:10px;max-height:360px;overflow:auto} | |
| .model-option{align-items:center;background:#fff;border:0;border-bottom:1px solid #edf0e9;color:#172419;display:grid;gap:4px;grid-template-columns:1fr auto;padding:12px 14px;text-align:left;width:100%} | |
| .model-option:last-child{border-bottom:0}.model-option:hover,.model-option:focus-visible{background:#f4f7f0;outline:2px solid #2d6a4f;outline-offset:-2px} | |
| .model-option strong{display:block;font-size:.93rem;overflow-wrap:anywhere}.model-option span{color:#647067;font-size:.78rem}.model-option .task{background:#f1f0e8;border-radius:999px;color:#536057;font-size:.7rem;padding:4px 7px;white-space:nowrap} | |
| @media(max-width:720px){.model-option{grid-template-columns:1fr}.model-option .task{justify-self:start}} | |
| </style> | |
| </head> | |
| <body> | |
| <main class="shell"> | |
| <header class="hero"> | |
| <p class="eyebrow">MODEL CARD CONTRIBUTION ASSISTANT</p> | |
| <h1>One Good Commit</h1> | |
| <p class="lede">Read a public Hugging Face model card, trace what it documents, and prepare a careful contribution packet for a human to review.</p> | |
| </header> | |
| <section class="input-card" aria-label="Review a public model card"> | |
| <form id="review-form"> | |
| <label for="repo-id">Find a public model</label> | |
| <div class="input-row"> | |
| <input id="repo-id" name="repo-id" autocomplete="off" placeholder="Search a model, organization, or task" role="combobox" aria-autocomplete="list" aria-expanded="false" aria-controls="model-options" required> | |
| <button type="submit">Review card</button> | |
| </div> | |
| </form> | |
| <div id="model-options" class="model-options" role="listbox" aria-label="Live public model matches" hidden></div> | |
| <p id="picker-status" class="example-label">Loading live public models…</p> | |
| <p class="input-note">Start with a name, organization, or task. Select a live public model; exact repository IDs also work if you already have one.</p> | |
| </section> | |
| <section id="notice" class="notice" hidden aria-live="polite"></section> | |
| <section id="results" hidden aria-live="polite"> | |
| <div id="summary"></div> | |
| <div class="tabs" role="tablist" aria-label="Review output"> | |
| <button role="tab" aria-selected="true" aria-controls="evidence-panel" id="evidence-tab" data-tab="evidence-panel">Evidence</button> | |
| <button role="tab" aria-selected="false" aria-controls="worksheet-panel" id="worksheet-tab" data-tab="worksheet-panel">Contribution worksheet</button> | |
| <button role="tab" aria-selected="false" aria-controls="discussion-panel" id="discussion-tab" data-tab="discussion-panel">Discussion draft</button> | |
| </div> | |
| <section id="evidence-panel" role="tabpanel" aria-labelledby="evidence-tab" class="tab-panel"></section> | |
| <section id="worksheet-panel" role="tabpanel" aria-labelledby="worksheet-tab" class="tab-panel" hidden></section> | |
| <section id="discussion-panel" role="tabpanel" aria-labelledby="discussion-tab" class="tab-panel" hidden></section> | |
| <button id="download-review" class="download" type="button">Download complete review</button> | |
| </section> | |
| <footer> | |
| <strong>Method boundary.</strong> This tool checks whether selected documentation signals can be located. It does not establish truth, safety, quality, legal status, or compliance. Every contribution remains a human decision. | |
| </footer> | |
| </main> | |
| <script src="static-app.js"></script> | |
| </body> | |
| </html> | |