I had the sudden need to send lots of md and html to a service with a 2000 character limit (yes Discord).
So why not just send an image?
- html -> image
- md -> html -> image
One possible solution is to use Puppeteer and its screenshot function but I can't run that on my server since it has low specs. Also I only want part of page because webscraping + extracting only part of the page's source.
So enter this. A super stripped html parser and renderer.
It's in a pretty good spot right now for what I need to I probably won't be updating it much especially after implementing table things and adding documentation. If you come across a problem, feel free to make an issue or even a pr.
Todo:
- Parsing
- Handle empty tags
- Replace entities in content
- Add handling for more tags
- Tables
- Different header tags (h1, h2...)
- Add proper handling for attributes
- Make classes based on behavior and not tag name
- Parse properly i.e. discard invalid tokens
- Handle comments (<!-- ... -->)
- Rendering
- Automatically increase height as needed
- Handle inline content properly
- Make renderer render better
- Remove extra spaces from inline content
- Organization improvements
- Font options
- Other aesthetic options
- Other
- Documentation