Spaces:
				
			
			
	
			
			
					
		Running
		
	
	
	
			
			
	
	
	
	
		
		
					
		Running
		
	
		thibaud frere
		
	commited on
		
		
					Commit 
							
							·
						
						0951bdd
	
1
								Parent(s):
							
							150ca32
								
update thumb handling
Browse files
    	
        app/scripts/export-pdf.mjs
    CHANGED
    
    | @@ -323,13 +323,13 @@ async function main() { | |
| 323 | 
             
                    const cssHandle = await page.addStyleTag({ content: `
         | 
| 324 | 
             
                      .hero .points { mix-blend-mode: normal !important; }
         | 
| 325 | 
             
                    ` });
         | 
| 326 | 
            -
                    const thumbPath = resolve(cwd, 'dist', 'thumb.jpg');
         | 
| 327 | 
             
                    await page.screenshot({ path: thumbPath, type: 'jpeg', quality: 85, fullPage: false });
         | 
| 328 | 
             
                    // Also emit PNG for compatibility if needed
         | 
| 329 | 
            -
                    const thumbPngPath = resolve(cwd, 'dist', 'thumb.png');
         | 
| 330 | 
             
                    await page.screenshot({ path: thumbPngPath, type: 'png', fullPage: false });
         | 
| 331 | 
            -
                    const publicThumb = resolve(cwd, 'public', 'thumb.jpg');
         | 
| 332 | 
            -
                    const publicThumbPng = resolve(cwd, 'public', 'thumb.png');
         | 
| 333 | 
             
                    try { await fs.copyFile(thumbPath, publicThumb); } catch {}
         | 
| 334 | 
             
                    try { await fs.copyFile(thumbPngPath, publicThumbPng); } catch {}
         | 
| 335 | 
             
                    // Remove temporary style so PDF is unaffected
         | 
|  | |
| 323 | 
             
                    const cssHandle = await page.addStyleTag({ content: `
         | 
| 324 | 
             
                      .hero .points { mix-blend-mode: normal !important; }
         | 
| 325 | 
             
                    ` });
         | 
| 326 | 
            +
                    const thumbPath = resolve(cwd, 'dist', 'thumb.auto.jpg');
         | 
| 327 | 
             
                    await page.screenshot({ path: thumbPath, type: 'jpeg', quality: 85, fullPage: false });
         | 
| 328 | 
             
                    // Also emit PNG for compatibility if needed
         | 
| 329 | 
            +
                    const thumbPngPath = resolve(cwd, 'dist', 'thumb.auto.png');
         | 
| 330 | 
             
                    await page.screenshot({ path: thumbPngPath, type: 'png', fullPage: false });
         | 
| 331 | 
            +
                    const publicThumb = resolve(cwd, 'public', 'thumb.auto.jpg');
         | 
| 332 | 
            +
                    const publicThumbPng = resolve(cwd, 'public', 'thumb.auto.png');
         | 
| 333 | 
             
                    try { await fs.copyFile(thumbPath, publicThumb); } catch {}
         | 
| 334 | 
             
                    try { await fs.copyFile(thumbPngPath, publicThumbPng); } catch {}
         | 
| 335 | 
             
                    // Remove temporary style so PDF is unaffected
         | 
    	
        app/src/content/article.mdx
    CHANGED
    
    | @@ -29,7 +29,7 @@ tags: | |
| 29 | 
             
              - research
         | 
| 30 | 
             
              - vision-language models
         | 
| 31 | 
             
              - dataset
         | 
| 32 | 
            -
            ogImage: "/thumb. | 
| 33 | 
             
            tableOfContentsAutoCollapse: true
         | 
| 34 | 
             
            ---
         | 
| 35 |  | 
|  | |
| 29 | 
             
              - research
         | 
| 30 | 
             
              - vision-language models
         | 
| 31 | 
             
              - dataset
         | 
| 32 | 
            +
            ogImage: "/thumb.png"
         | 
| 33 | 
             
            tableOfContentsAutoCollapse: true
         | 
| 34 | 
             
            ---
         | 
| 35 |  | 
    	
        app/src/content/chapters/getting-started.mdx
    CHANGED
    
    | @@ -30,7 +30,7 @@ npm run build | |
| 30 | 
             
            ```
         | 
| 31 | 
             
            <small className="muted">- Serving the `dist/` directory on any static host is enough to deliver the site.</small>
         | 
| 32 | 
             
            <br/>
         | 
| 33 | 
            -
            <small className="muted">- A [slug-title].pdf and thumb.jpg are also generated at build time. You can find them in the public folder.</small>
         | 
| 34 |  | 
| 35 |  | 
| 36 | 
             
            ### Deploy
         | 
|  | |
| 30 | 
             
            ```
         | 
| 31 | 
             
            <small className="muted">- Serving the `dist/` directory on any static host is enough to deliver the site.</small>
         | 
| 32 | 
             
            <br/>
         | 
| 33 | 
            +
            <small className="muted">- A [slug-title].pdf and thumb.auto.jpg are also generated at build time. You can find them in the public folder.</small>
         | 
| 34 |  | 
| 35 |  | 
| 36 | 
             
            ### Deploy
         | 
    	
        app/src/pages/index.astro
    CHANGED
    
    | @@ -6,7 +6,7 @@ import ThemeToggle from '../components/ThemeToggle.astro'; | |
| 6 | 
             
            import Seo from '../components/Seo.astro';
         | 
| 7 | 
             
            import TableOfContents from '../components/TableOfContents.astro';
         | 
| 8 | 
             
            // Default OG image served from public/
         | 
| 9 | 
            -
            const ogDefaultUrl = '/thumb.jpg';
         | 
| 10 | 
             
            import 'katex/dist/katex.min.css';
         | 
| 11 | 
             
            import '../styles/global.css';
         | 
| 12 | 
             
            const articleFM = (ArticleMod as any).frontmatter ?? {};
         | 
|  | |
| 6 | 
             
            import Seo from '../components/Seo.astro';
         | 
| 7 | 
             
            import TableOfContents from '../components/TableOfContents.astro';
         | 
| 8 | 
             
            // Default OG image served from public/
         | 
| 9 | 
            +
            const ogDefaultUrl = '/thumb.auto.jpg';
         | 
| 10 | 
             
            import 'katex/dist/katex.min.css';
         | 
| 11 | 
             
            import '../styles/global.css';
         | 
| 12 | 
             
            const articleFM = (ArticleMod as any).frontmatter ?? {};
         | 
    	
        app/src/styles/_layout.css
    CHANGED
    
    | @@ -69,9 +69,9 @@ | |
| 69 | 
             
            }
         | 
| 70 |  | 
| 71 | 
             
            .wide {
         | 
| 72 | 
            -
              /* Target up to ~ | 
| 73 | 
            -
              width: min( | 
| 74 | 
            -
              margin-left: 50 | 
| 75 | 
             
              transform: translateX(-50%);
         | 
| 76 | 
             
            }
         | 
| 77 |  | 
|  | |
| 69 | 
             
            }
         | 
| 70 |  | 
| 71 | 
             
            .wide {
         | 
| 72 | 
            +
              /* Target up to ~1100px while staying within viewport minus page gutters */
         | 
| 73 | 
            +
              width: min(1100px, 100vw - 32px);
         | 
| 74 | 
            +
              margin-left: calc(50% + var(--content-padding-x) * 2);
         | 
| 75 | 
             
              transform: translateX(-50%);
         | 
| 76 | 
             
            }
         | 
| 77 |  | 
 
			
