https://github.com/dijith-481/markweavia
A no-nonsense tool that transforms your Markdown into elegant, professional, platform-independent HTML presentations, all with familiar Vim motions.
https://github.com/dijith-481/markweavia
markdown nextjs react slides vim
Last synced: 10 days ago
JSON representation
A no-nonsense tool that transforms your Markdown into elegant, professional, platform-independent HTML presentations, all with familiar Vim motions.
- Host: GitHub
- URL: https://github.com/dijith-481/markweavia
- Owner: dijith-481
- License: gpl-3.0
- Created: 2025-05-18T14:09:10.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2025-10-14T14:56:11.000Z (3 months ago)
- Last Synced: 2025-10-19T01:24:33.675Z (3 months ago)
- Topics: markdown, nextjs, react, slides, vim
- Language: TypeScript
- Homepage: https://markweavia.vercel.app
- Size: 22.7 MB
- Stars: 106
- Watchers: 3
- Forks: 9
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
Markweavia
Markdown, beautifully woven.
A no-nonsense tool for crafting minimalist, professional platform-independant presentations directly from Markdown using familiar Vim motions.
## The Inspiration
- Creating slides should be a straightforward process, especially for content that benefits from a minimalist aesthetic.
- Traditional presentation software often involves excessive mouse dragging and complex component manipulation for what should be simple text and structure.
- Markweavia was born from the desire to simplify this
- enabling the creation of clean, professional slides with the ease of editing a Markdown file,
- enhanced by the efficiency of Vim keybindings.
> Most impactful presentations rely on clear text and an uncluttered background, a philosophy Markweavia aims to embody perfectly.
## Overview
Markweavia is a web-based application that transforms your Markdown text and Katex into elegant HTML slide presentations. It provides a live preview of your current slide, allowing for a seamless WYSIWYG-like experience.
**Key Features:**
- **Markdown-First:** Write slides using simple, intuitive Markdown syntax.
- **Vim Keybindings:** Navigate and edit with the speed and precision of Vim(hjkl go brrrr).
- **Live Slide Preview:** Instantly see how your current Markdown section renders as a slide.
- **Nord-Inspired Themes:** Choose from a selection of clean, minimalist themes, including light and dark(default) Nord variations and monochrome options.
- **Customizable Layout:** Control page numbers, header/footer text and positions, and whether these elements appear on the first slide.
- **Font Scaling:** Adjust the base font size of your slides for optimal readability(default should work for most).
- **Local Storage Persistence:** Your work is automatically saved in your browser.
- **Export Options:**
- Download your presentation as a self-contained HTML file.
- offline first approach with fonts,code syntax hightlighting and katex all included in single html file(~2MB file size).
- partial support for Images (online)
- Download the source Markdown (.md) file.
- **File Upload:** Import existing Markdown files to continue your work or convert them to slides.
- **Predefined Templates:** Quickly start with some predefined templates.
- `yaml` based infile configuration


Presentation Preview
Editor View
## How It Works
1. **Write Markdown:** Use standard Markdown headings (`#`, `##`) to define new slides.
1. **Live Preview:** As you type or navigate with your cursor, the preview pane updates to show a preview of the slide your cursor is currently on.
1. **Customize:** Use the controls or yaml config to select themes, adjust font sizes, manage page numbers, and add custom headers or footers.
1. **Vim Commands:** Utilize built-in Vim commands for saving (`:w`, `:ws`) uploading (`:u`) previewing(`:p`),changing theme(`:t`), toggling page numbers(`:page`), adding headerfooters(`:h`)
1. **Export:** When ready, export your entire presentation as a single HTML file or save your Markdown source.
## Understanding Exported Slides
Markweavia generates a single, self-contained HTML file. This file includes all necessary CSS for styling (based on your chosen theme and customizations) and JavaScript for interactivity. It works offline.
**HTML Structure & Styling:**
- Each Markdown slide (starting with a `#` title or `##` heading ) is rendered into a `