mews.page/site/content/pages/start.md

45 lines
2.2 KiB
Markdown
Raw Normal View History

Title: Getting Started
Slug: quickstart
Description: Check pages on your own machine and create Mews content with Markdown or Pelican.
# Get started
[The Mews](/) · [Directory](/directory) · [Specification](/spec/0.1)
Check this [sample page](https://code.randogoth.com/randogoth/mews.page/src/branch/main/sample/sample.html) with one of every element a mews page can hold and the [validator](/check) that tells you for any address exactly what it breaks and why.
## Validate locally
The same checks run on the command line, which is quicker while you are still fixing things:
<pre>uvx --from git+https://code.randogoth.com/randogoth/mews.page.git#subdirectory=validator \
mewslint https://example.com/</pre>
Without [uv](https://github.com/astral-sh/uv), install it with pip (Python 3.12 or later):
<pre>
pip install "git+https://code.randogoth.com/randogoth/mews.page.git#subdirectory=validator"
mewslint https://example.com/</pre>
It reads local files too, so you can check a page before publishing it.
## Create content
For a simple way to create compatible content there's a [Python script](https://code.randogoth.com/randogoth/mews.page/src/branch/main/quickstart/md2mews.py) that converts from a Markdown file. If you want a real blog engine, here's a [uv](https://github.com/astral-sh/uv) powered quickstart script that writes a project folder, installs the [Pelican](https://getpelican.com/) static site generator together with our [pelican-mews](https://code.randogoth.com/randogoth/mews.page/src/branch/main/pelican-mews) plugin, and leaves you a first post to edit:
<pre>uvx --from git+https://code.randogoth.com/randogoth/mews.page.git#subdirectory=quickstart \
mews-quickstart mysite
cd mysite
uv run pelican content</pre>
Without [uv](https://github.com/astral-sh/uv), the same with pip:
<pre>
pip install "git+https://code.randogoth.com/randogoth/mews.page.git#subdirectory=quickstart"
mews-quickstart --no-install mysite
cd mysite
pip install pelican markdown \
"pelican-mews @ git+https://code.randogoth.com/randogoth/mews.page.git#subdirectory=pelican-mews"
pelican content</pre>
The pages land in `output/` as plain HTML that any web server will serve as valid *mews* pages.