{"id":28098586,"url":"https://github.com/peterbenoit/markdownstyle","last_synced_at":"2025-05-13T17:58:26.858Z","repository":{"id":291183446,"uuid":"976862939","full_name":"peterbenoit/MarkdownStyle","owner":"peterbenoit","description":null,"archived":false,"fork":false,"pushed_at":"2025-05-02T23:07:52.000Z","size":1412,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-02T23:28:03.884Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"CSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/peterbenoit.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-05-02T22:27:50.000Z","updated_at":"2025-05-02T23:07:55.000Z","dependencies_parsed_at":"2025-05-02T23:28:08.272Z","dependency_job_id":"54c517ed-4738-4089-b355-57acbde94cc6","html_url":"https://github.com/peterbenoit/MarkdownStyle","commit_stats":null,"previous_names":["peterbenoit/markdownstyle"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/peterbenoit%2FMarkdownStyle","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/peterbenoit%2FMarkdownStyle/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/peterbenoit%2FMarkdownStyle/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/peterbenoit%2FMarkdownStyle/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/peterbenoit","download_url":"https://codeload.github.com/peterbenoit/MarkdownStyle/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253999770,"owners_count":21997327,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-05-13T17:58:17.373Z","updated_at":"2025-05-13T17:58:26.849Z","avatar_url":"https://github.com/peterbenoit.png","language":"CSS","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MarkdownStyle\n\nA browser-based Markdown formatter with multiple theme options to demonstrate how the same Markdown content can be rendered with different visual styles.\n\n## Overview\n\nMarkdownStyle is a lightweight web application that converts Markdown files to styled HTML. It features multiple themes (Basic, Modern, and Scientific) and provides enhanced rendering for various Markdown elements.\n\n## Features\n\n-   **Multiple Themes**: Choose from different CSS themes to render your Markdown content:\n\n    -   **Basic**: A simple, clean style similar to GitHub's Markdown rendering\n    -   **Modern**: A dark theme with modern UI elements and animations\n    -   **Scientific**: A theme optimized for academic and scientific documents\n\n-   **Comprehensive Markdown Support**:\n\n    -   Headings (H1-H6)\n    -   Text formatting (bold, italic, strikethrough)\n    -   Lists (ordered, unordered, nested)\n    -   Code blocks with syntax highlighting via Prism.js\n    -   Tables\n    -   Blockquotes\n    -   Horizontal rules\n    -   Links and images with figure/caption support\n    -   Task lists with interactive checkboxes\n    -   Footnotes with proper formatting\n    -   Mathematical equations via MathJax\n\n-   **Enhanced Rendering**:\n    -   Figure/caption pairs for images\n    -   Interactive task lists\n    -   Styled footnotes and citations\n    -   Mathematical formula rendering\n    -   Responsive design for various screen sizes\n\n## Project Structure\n\n```\nMarkdownStyle/\n├── index.html              # Main HTML file\n├── README.md               # This documentation\n├── *.md                    # Sample Markdown files\n│\n├── js/\n│   ├── app.js              # Main application logic\n│   ├── markdown.js         # Markdown enhancement functions\n│   ├── marked.min.js       # Markdown parsing library\n│   └── prism.js            # Syntax highlighting library\n│\n└── styles/\n    ├── basic.css           # Basic theme (formerly custom.css)\n    ├── modern.css          # Modern dark theme\n    ├── scientific.css      # Scientific/academic theme\n    └── prism.css           # Syntax highlighting styles\n```\n\n## Advanced Markdown Extensions\n\nThe project extends standard Markdown with several additional features:\n\n### Figure Captions\n\nTo create an image with a caption, use standard Markdown image syntax followed by italicized text:\n\n```markdown\n![Alt text](image-url.jpg)\n_This text becomes a caption_\n```\n\nThe application will automatically convert this to a proper HTML5 `\u003cfigure\u003e` and `\u003cfigcaption\u003e` structure.\n\n### Task Lists\n\nCreate task lists using the GitHub-style syntax:\n\n```markdown\n-   [ ] Unchecked item\n-   [x] Checked item\n```\n\nThese will be rendered as interactive checkboxes.\n\n### Mathematical Equations\n\nThe scientific theme supports LaTeX mathematical equations using MathJax:\n\n```markdown\nInline equation: $E = mc^2$\n\nBlock equation:\n$$S = \\sum_{i=1}^{n-1} \\sum_{j=i+1}^{n} \\text{sgn}(x_j - x_i)$$\n```\n\n### Scientific Paper Format\n\nThe scientific theme is optimized for academic papers with:\n\n-   The first blockquote is styled as an abstract\n-   Section headers are automatically numbered\n-   Figures and tables get proper captions\n-   References section is styled appropriately\n-   Mathematical equations are rendered with LaTeX\n\n## Technical Implementation\n\n### Libraries Used\n\n-   [marked.js](https://marked.js.org/) - Markdown parsing\n-   [Prism.js](https://prismjs.com/) - Code syntax highlighting\n-   [MathJax](https://www.mathjax.org/) - Mathematical equation rendering\n\n### JavaScript Architecture\n\nThe code is organized with separation of concerns:\n\n-   **app.js**: Handles UI interactions, theme switching, and file loading\n-   **markdown.js**: Processes and enhances the rendered Markdown HTML\n\n### CSS Structure\n\nEach theme is implemented as a separate CSS file with a consistent structure:\n\n-   Variable declarations for colors, fonts, and spacing\n-   Base document styling\n-   Specific styles for each Markdown element\n-   Responsive design adjustments\n\n## Usage\n\n1. Clone this repository\n2. Open `index.html` in a web browser\n3. Use the dropdowns to select different themes and sample files\n4. Create your own Markdown files to see them rendered with different styles\n\n## Browser Compatibility\n\n-   Chrome (latest)\n-   Firefox (latest)\n-   Safari (latest)\n-   Edge (latest)\n\n## License\n\nMIT\n\n## Acknowledgments\n\n-   The project uses [marked.js](https://marked.js.org/) for Markdown parsing\n-   Syntax highlighting via [Prism.js](https://prismjs.com/)\n-   Mathematical formula rendering via [MathJax](https://www.mathjax.org/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpeterbenoit%2Fmarkdownstyle","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpeterbenoit%2Fmarkdownstyle","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpeterbenoit%2Fmarkdownstyle/lists"}