markdown-query
is a versatile library for querying, updating, and manipulating Markdown content in JavaScript/TypeScript applications. It provides a set of methods to perform common tasks such as retrieving elements by ID, class, or tag, updating content, and more.
- Installation
- Usage
-
API Reference
- getElementById
- getElementByClassName
- getElementsByTag
- getMarkdownLinks
- getMarkdownImages
- getMarkdownCodeBlocks
- getMarkdownList
- getMarkdownHeaders
- getMarkdownCodeBlockByIndex
- getMarkdownImageAlt
- updateElementById
- updateElementByClassName
- updateElementByTag
- updateMarkdownLink
- updateMarkdownImageAlt
- updateMarkdownHeaders
- updateMarkdownList
- deleteElementById
- deleteElementByClassName
- deleteElementByTag
- deleteMarkdownLink
- deleteMarkdownImage
- deleteMarkdownHeaders
- deleteMarkdownCodeBlockByIndex
- deleteMarkdownImageAlt
- Contributing
- License
- Author
- Contact
You can install markdown-query
using npm, yarn, or pnpm. Choose your preferred package manager:
npm install markdown-query
yarn add markdown-query
pnpm add markdown-query
import { MarkdownQuery } from 'markdown-query';
const markdownQuery = new MarkdownQuery();
// Example: Get element content by ID
const markdownContent = `
<div id="example">
This is some content.
</div>
`;
const elementContent = markdownQuery.getElementById(markdownContent, 'example');
console.log(elementContent); // Output: This is some content.
or directly use this like
import { MarkdownQuery } from 'markdown-query';
const markdownContent = `
<div id="example">
This is some content.
</div>
`;
const elementContent = markdownQuery.getElementById(markdownContent, 'example');
console.log(elementContent); // Output: This is some content.
// Update content of an element by ID
const updatedContentById = markdownQuery.updateElementById(markdownContent, 'example', 'Updated content.');
console.log(updatedContentById);
// Update alt text for an image
const imageUrl = 'https://example.com/image.jpg';
const updatedImageAlt = markdownQuery.updateMarkdownImageAlt(markdownContent, imageUrl, 'New Alt Text');
console.log(updatedImageAlt);
// Delete an element by ID
const deletedContentById = markdownQuery.deleteElementById(markdownContent, 'example');
console.log(deletedContentById);
// Delete a link by URL
const linkUrl = 'https://example.com';
const deletedLink = markdownQuery.deleteMarkdownLink(markdownContent, linkUrl);
console.log(deletedLink);
For detailed information on all available methods, parameters, and examples, please refer to the API Reference.
Method | Description |
---|---|
getElementById |
Retrieves content for elements with the specified ID. Returns null if no element is found. |
getElementByClassName |
Retrieves an array of contents for elements with the given class name. |
getElementsByTag |
Retrieves an array of contents for elements with the specified tag name. |
getMarkdownLinks |
Retrieves an array of links (text and URL) from the Markdown content. |
getMarkdownImages |
Retrieves an array of images (alt text and URL) from the Markdown content. |
getMarkdownCodeBlocks |
Retrieves an array of code blocks from the Markdown content. |
getMarkdownList |
Retrieves an array of list items from the Markdown content. |
getMarkdownHeaders |
Retrieves an array of headers from the Markdown content. |
getMarkdownCodeBlockByIndex |
Extracts a specific code block based on the index. Returns null if the index is out of bounds. |
getMarkdownImageAlt |
Retrieves the alt text for an image. Returns null if the image is not found or alt text is not available. |
updateElementById |
Updates the content of an element by ID. Returns the updated Markdown content. |
updateElementByClassName |
Updates the content of elements with the given class name. Returns the updated Markdown content. |
updateElementByTag |
Updates the content of elements with the given tag name. Returns the updated Markdown content. |
updateMarkdownLink |
Updates a link in the Markdown content. Returns the updated Markdown content. |
updateMarkdownImageAlt |
Updates the alt text for an image. Returns the updated Markdown content. |
updateMarkdownHeaders |
Updates the headers in the Markdown content. Returns the updated Markdown content. |
updateMarkdownList |
Updates list items in the Markdown content. Returns the updated Markdown content. |
deleteElementById |
Deletes the element with the specified ID. Returns Markdown content with the element removed. |
deleteElementByClassName |
Deletes elements with the specified class name. Returns Markdown content with the elements removed. |
deleteElementByTag |
Deletes elements with the specified tag name. Returns Markdown content with the elements removed. |
deleteMarkdownLink |
Deletes a link with the specified URL. Returns Markdown content with the link removed. |
deleteMarkdownImage |
Deletes an image with the specified URL. Returns Markdown content with the image removed. |
deleteMarkdownHeaders |
Deletes headers with the specified text. Returns Markdown content with the headers removed. |
deleteMarkdownCodeBlockByIndex |
Deletes a code block at the specified index. Returns Markdown content with the code block removed. |
deleteMarkdownImageAlt |
Deletes the alt text for an image. Returns updated Markdown content. |
We welcome contributions! Before contributing, please read our contribution guidelines and adhere to our Code of Conduct.
This project is licensed under the MIT License - see the LICENSE file for details.
For any inquiries or questions, feel free to reach out at hello@shivkumar.me.