initial commit
This commit is contained in:
76
README.md
Normal file
76
README.md
Normal file
@@ -0,0 +1,76 @@
|
||||
# Markdown Editor with LaTeX Support
|
||||
|
||||
A real-time markdown editor with LaTeX equation rendering in a split-pane web interface.
|
||||
|
||||
## Features
|
||||
|
||||
- **Split-pane interface**: Left pane for editing, right pane for live preview
|
||||
- **Real-time rendering**: See your changes as you type (with 300ms debounce)
|
||||
- **LaTeX support**: Render mathematical equations using MathJax (SVG mode)
|
||||
- Inline equations: `$E = mc^2$` or `\(E = mc^2\)`
|
||||
- Block equations: `$$...$$` or `\[...\]`
|
||||
- **PDF Export**: Export your rendered markdown with properly formatted equations to PDF
|
||||
- **Markdown features**:
|
||||
- Headers, bold, italic, lists
|
||||
- Code blocks with syntax highlighting
|
||||
- Tables, blockquotes, links, images
|
||||
- And more...
|
||||
|
||||
## Installation
|
||||
|
||||
1. Install Python dependencies:
|
||||
```bash
|
||||
pip install -r requirements.txt
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
1. Start the Flask server:
|
||||
```bash
|
||||
python app.py
|
||||
```
|
||||
|
||||
2. Open your browser and navigate to:
|
||||
```
|
||||
http://localhost:8080
|
||||
```
|
||||
|
||||
3. Start typing or pasting markdown in the left pane. The right pane will update automatically with the rendered output.
|
||||
|
||||
## LaTeX Examples
|
||||
|
||||
Inline equation:
|
||||
```
|
||||
The famous equation $E = mc^2$ shows the relationship between energy and mass.
|
||||
```
|
||||
|
||||
Block equation:
|
||||
```
|
||||
$$
|
||||
\int_{-\infty}^{\infty} e^{-x^2} dx = \sqrt{\pi}
|
||||
$$
|
||||
```
|
||||
|
||||
More complex equation:
|
||||
```
|
||||
$$
|
||||
\frac{d}{dx}\left( \int_{0}^{x} f(u)\,du\right)=f(x)
|
||||
$$
|
||||
```
|
||||
|
||||
## PDF Export
|
||||
|
||||
Click the green "Export to PDF" button in the upper right corner of the preview pane to generate a PDF of your rendered markdown. The PDF will include:
|
||||
- All markdown formatting (headers, lists, tables, code blocks, etc.)
|
||||
- LaTeX equations rendered as SVG (both inline and display equations)
|
||||
- Syntax-highlighted code blocks
|
||||
- Professional typography and layout
|
||||
|
||||
## Technology Stack
|
||||
|
||||
- **Backend**: Flask (Python)
|
||||
- **Frontend**: Vanilla JavaScript
|
||||
- **Markdown**: Python-Markdown library
|
||||
- **LaTeX**: MathJax 3 (SVG output mode)
|
||||
- **Syntax Highlighting**: Highlight.js
|
||||
- **PDF Generation**: WeasyPrint
|
||||
Reference in New Issue
Block a user