A Static Site Generator for Markdown powered by Gradle, Pandoc, Spock, Preact and a minimalistic template.
Clone the sources in Debian with Java 18 or newer and install the project dependencies. Information on how to install Java can be found in the official documentation.
git clone https://github.com/marcbperez/markdown-pages
cd markdown-pages
sudo ./gradlew install
For end users, install.sh
downloads a tarball of the release, runs the full
installation process and adds bin/markdown-pages
to the path.
For continuous integration and development use the Gradle wrapper. Without
parameters, it will build the project into the docs
folder and run tests. The
serve
task will use the build folder to start a development server at
http://localhost:8000.
./gradlew
./gradlew serve
For a continuous build use ./gradlew --continuous
. For a full list of tasks,
see ./gradlew tasks --all
. Without the wrapper use Gradle directly. This will
create it in case it is not present. The equivalent commands use gradle
instead of ./gradlew
. Information on how to install Gradle can be found in the
official documentation.
The bin/markdown-pages
script runs a continuous build and serves the results
at the same time using the wrapper. It can replace the commands described above
and works from any directory.
export PATH=$(pwd)/bin:$PATH
mkdir ~/my-site
cd ~/my-site
echo "# Home" > index.md
markdown-pages
Test checks are executed automatically every time the project is built. To run
them manually use the ./gradlew test
command. It will execute all the Spock
tests from the test
folder whose names match test/**/*Spec.groovy
.
The generated site can be deployed to any HTTP server by uploading the docs
folder and using it as the public directory.
The issue tracker intends to manage and compile bugs, enhancements, proposals and tasks. Reading through its material or reporting to its contributors via the platform is strongly recommended.
This project adheres to Semantic Versioning and to certain syntax conventions defined in .editorconfig. To get a list of changes refer to the CHANGELOG. Only branches prefixed by feature-, hotfix-, or release- will be considered:
- Fork the project.
- Create your new branch:
git checkout -b feature-my-feature develop
- Commit your changes:
git commit -am 'Added my new feature.'
- Push the branch:
git push origin feature-my-feature
- Submit a pull request.
Created by Marc B. Perez and maintained by its author and contributors.
This project is licensed under the Apache License Version 2.0.