Skip to content

Oranged9922/personal-blog-project

Repository files navigation

personal-blog-project

The Static Blog Webpage Generator is a tool written in Haskell that allows you to parse markdown files and create a static blog webpage using HTML templates. This tool simplifies the process of generating static webpages from markdown content.

Features

  • Parse Markdown Files: The generator can parse markdown files and extract the content to be used in the generated webpages.
  • HTML Templates: You can define HTML templates to structure the layout and design of your blog webpages.
  • Customization: The generator provides options for customizing the appearance and behavior of the generated webpages.
  • Metadata Extraction: Extract metadata from markdown files to provide additional information for webpage generation (e.g., title, author, date).

Getting Started

Prerequisites

To build and run the Static Webpage Generator, you need to have the following dependencies installed:

Installation

  1. Clone the repository: git clone https://github.com/Oranged9922/personal-blog-project.git
  2. Navigate to the project directory: cd personal-blog-project
  3. TODO

Usage

  • TODO

Configuration

The config.json file contains the following configuration options:

  • TODO

Functional Requirements

  1. Parsing Markdown Files: The generator should be able to parse markdown files and extract the content to be used in the generated webpages.
  2. HTML Template Support: Users should be able to define HTML templates to structure the layout and design of their blog webpages.
  3. Customization Options: The generator should provide options for customizing the appearance and behavior of the generated webpages, such as defining CSS styles or adding custom JavaScript code.
  4. Metadata Extraction: The generator should be able to extract metadata from markdown files, such as title, author, and date, to provide additional information for webpage generation.
  5. Output Generation: The generator should generate static HTML webpages based on the parsed markdown content and HTML templates, saving them to the specified output directory.

Non-Functional Requirements

  1. Performance: The generator should be efficient and able to handle a large number of markdown files without significant slowdowns.
  2. Usability: The tool should be easy to use, with clear instructions and a simple command-line interface.
  3. Error Handling: The generator should handle errors gracefully and provide meaningful error messages to help users troubleshoot issues.
  4. Portability: The tool should be compatible with different operating systems (Windows, macOS, Linux) and should not have any dependencies that limit its usage on specific platforms.
  5. Maintainability: The code should be well-organized, modular, and follow best practices to ensure ease of maintenance and future enhancements.
  6. Extensibility: The tool should be designed in a way that allows for easy extension or modification in the future to support additional features or formats.

Constraints

  • Haskell Programming Language: The generator should be implemented in Haskell, utilizing its features and libraries to accomplish the required functionality.
  • Markdown Standard: The generator should adhere to the standard Markdown syntax and support common Markdown elements and extensions.
  • HTML Compatibility: The generated webpages should be compatible with modern web browsers and adhere to HTML standards.

About

Haskell static webpage generator

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published