Add README section dividers
All checks were successful
Build Windows App / build-windows (push) Successful in 17m24s

This commit is contained in:
MrSphay
2026-05-02 00:33:14 +02:00
parent a5b9fc0cf7
commit 0abe51b982
3 changed files with 37 additions and 40 deletions

View File

@@ -12,7 +12,7 @@
<img alt="Version" src="https://img.shields.io/badge/version-0.1.0-111827"> <img alt="Version" src="https://img.shields.io/badge/version-0.1.0-111827">
</p> </p>
--- <p align="center"><img src="https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/rainbow.png" alt="-----------------------------------------------------" width="100%"></p>
## Table of Contents ## Table of Contents
@@ -29,7 +29,7 @@
- [Security](#security) - [Security](#security)
- [Project Info](#project-info) - [Project Info](#project-info)
--- <p align="center"><img src="https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/rainbow.png" alt="-----------------------------------------------------" width="100%"></p>
## Overview ## Overview
@@ -37,7 +37,7 @@ EnvHelper reads `.env` files or plain text, detects `CHANGE_ME` placeholders, in
The app is local-first. It does not send generated secrets or input files to external services. The app is local-first. It does not send generated secrets or input files to external services.
--- <p align="center"><img src="https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/rainbow.png" alt="-----------------------------------------------------" width="100%"></p>
## Features ## Features
@@ -52,7 +52,7 @@ The app is local-first. It does not send generated secrets or input files to ext
| Languages | German, English, Spanish, French, and Dutch | | Languages | German, English, Spanish, French, and Dutch |
| Build output | Windows setup and portable executables via Gitea Runner | | Build output | Windows setup and portable executables via Gitea Runner |
--- <p align="center"><img src="https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/rainbow.png" alt="-----------------------------------------------------" width="100%"></p>
## Workflow ## Workflow
@@ -71,7 +71,7 @@ POSTGRES_PASSWORD=... -> Infer formats -> POSTGRES_PASSWORD=...
SESSION_SECRET=... Generate local values SESSION_SECRET=... SESSION_SECRET=... Generate local values SESSION_SECRET=...
``` ```
--- <p align="center"><img src="https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/rainbow.png" alt="-----------------------------------------------------" width="100%"></p>
## Example ## Example
@@ -109,7 +109,7 @@ BOOTSTRAP_ADMIN_PASSWORD=Wz4...strongPassword
The actual values are generated randomly on the local machine. The actual values are generated randomly on the local machine.
--- <p align="center"><img src="https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/rainbow.png" alt="-----------------------------------------------------" width="100%"></p>
## Placeholder Detection ## Placeholder Detection
@@ -131,7 +131,7 @@ Supported examples:
Additional heuristics cover common `.env.example` variables for SMTP, S3/MinIO, Redis, RabbitMQ, CORS, log levels, environment flags, and API keys. Additional heuristics cover common `.env.example` variables for SMTP, S3/MinIO, Redis, RabbitMQ, CORS, log levels, environment flags, and API keys.
--- <p align="center"><img src="https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/rainbow.png" alt="-----------------------------------------------------" width="100%"></p>
## Default Values ## Default Values
@@ -148,7 +148,7 @@ Default values are shown in their own section. EnvHelper detects likely defaults
Manual defaults can always be added. They override automatically detected defaults and only affect the output, never the input template. Manual defaults can always be added. They override automatically detected defaults and only affect the output, never the input template.
--- <p align="center"><img src="https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/rainbow.png" alt="-----------------------------------------------------" width="100%"></p>
## Downloads and Artifacts ## Downloads and Artifacts
@@ -161,7 +161,7 @@ EnvHelper-0.1.0-portable-x64.exe
The files are published by the Gitea Runner as an Actions artifact and as a Generic Package. The files are published by the Gitea Runner as an Actions artifact and as a Generic Package.
--- <p align="center"><img src="https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/rainbow.png" alt="-----------------------------------------------------" width="100%"></p>
## Development ## Development
@@ -189,7 +189,7 @@ Build Windows packages:
npm run dist:win npm run dist:win
``` ```
--- <p align="center"><img src="https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/rainbow.png" alt="-----------------------------------------------------" width="100%"></p>
## Windows Build ## Windows Build
@@ -208,7 +208,7 @@ The runner:
5. creates setup and portable executables, 5. creates setup and portable executables,
6. uploads artifacts and packages to Gitea. 6. uploads artifacts and packages to Gitea.
--- <p align="center"><img src="https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/rainbow.png" alt="-----------------------------------------------------" width="100%"></p>
## README Generation ## README Generation
@@ -221,6 +221,8 @@ blueprint.md
blueprint.json blueprint.json
``` ```
Section dividers are configured as the custom `section-line` template in `blueprint.json` and stamped from `blueprint.md`, so generated README updates keep the same rainbow separators.
Regenerate the README with: Regenerate the README with:
```bash ```bash
@@ -229,7 +231,7 @@ npm run readme
The generated output is committed as `README.md` so Gitea can render it directly without any additional tooling. The generated output is committed as `README.md` so Gitea can render it directly without any additional tooling.
--- <p align="center"><img src="https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/rainbow.png" alt="-----------------------------------------------------" width="100%"></p>
## Security ## Security
@@ -248,7 +250,7 @@ WINDOWS_CSC_KEY_PASSWORD
`WINDOWS_CSC_LINK` is the certificate, for example a Base64-encoded `.pfx` file or a reachable certificate URL. `WINDOWS_CSC_KEY_PASSWORD` is the certificate password. `WINDOWS_CSC_LINK` is the certificate, for example a Base64-encoded `.pfx` file or a reachable certificate URL. `WINDOWS_CSC_KEY_PASSWORD` is the certificate password.
--- <p align="center"><img src="https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/rainbow.png" alt="-----------------------------------------------------" width="100%"></p>
## Project Info ## Project Info

View File

@@ -28,6 +28,12 @@
"1": "", "1": "",
"2": "" "2": ""
}, },
"line": "https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/rainbow.png", "line": "rainbow",
"templates": [
{
"name": "section-line",
"template": "<p align=\"center\"><img src=\"https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/rainbow.png\" alt=\"-----------------------------------------------------\" width=\"100%\"></p>"
}
],
"text": "A local Windows desktop app for turning .env templates into deployable configuration files." "text": "A local Windows desktop app for turning .env templates into deployable configuration files."
} }

View File

@@ -2,20 +2,17 @@
{{ template:badges }} {{ template:badges }}
--- {{ template:section-line }}
{{ template:table-of-contents }} {{ template:table-of-contents }}
--- {{ template:section-line }}
## Overview ## Overview
EnvHelper reads `.env` files or plain text, detects `CHANGE_ME` placeholders, infers the required value format, and produces a ready-to-use output file. Identical placeholders are replaced with the same generated value, so related variables such as `DATABASE_URL` and `POSTGRES_PASSWORD` stay in sync. EnvHelper reads `.env` files or plain text, detects `CHANGE_ME` placeholders, infers the required value format, and produces a ready-to-use output file. Identical placeholders are replaced with the same generated value, so related variables such as `DATABASE_URL` and `POSTGRES_PASSWORD` stay in sync.
The app is local-first. It does not send generated secrets or input files to external services. The app is local-first. It does not send generated secrets or input files to external services.
--- {{ template:section-line }}
## Features ## Features
| Area | Description | | Area | Description |
@@ -29,8 +26,7 @@ The app is local-first. It does not send generated secrets or input files to ext
| Languages | German, English, Spanish, French, and Dutch | | Languages | German, English, Spanish, French, and Dutch |
| Build output | Windows setup and portable executables via Gitea Runner | | Build output | Windows setup and portable executables via Gitea Runner |
--- {{ template:section-line }}
## Workflow ## Workflow
```text ```text
@@ -48,8 +44,7 @@ POSTGRES_PASSWORD=... -> Infer formats -> POSTGRES_PASSWORD=...
SESSION_SECRET=... Generate local values SESSION_SECRET=... SESSION_SECRET=... Generate local values SESSION_SECRET=...
``` ```
--- {{ template:section-line }}
## Example ## Example
Input: Input:
@@ -86,8 +81,7 @@ BOOTSTRAP_ADMIN_PASSWORD=Wz4...strongPassword
The actual values are generated randomly on the local machine. The actual values are generated randomly on the local machine.
--- {{ template:section-line }}
## Placeholder Detection ## Placeholder Detection
EnvHelper prioritizes the placeholder text over the surrounding variable name. This prevents cases such as `CHANGE_ME_POSTGRES_PASSWORD` inside `DATABASE_URL` from being misclassified as a URL. EnvHelper prioritizes the placeholder text over the surrounding variable name. This prevents cases such as `CHANGE_ME_POSTGRES_PASSWORD` inside `DATABASE_URL` from being misclassified as a URL.
@@ -108,8 +102,7 @@ Supported examples:
Additional heuristics cover common `.env.example` variables for SMTP, S3/MinIO, Redis, RabbitMQ, CORS, log levels, environment flags, and API keys. Additional heuristics cover common `.env.example` variables for SMTP, S3/MinIO, Redis, RabbitMQ, CORS, log levels, environment flags, and API keys.
--- {{ template:section-line }}
## Default Values ## Default Values
Default values are shown in their own section. EnvHelper detects likely defaults automatically, for example: Default values are shown in their own section. EnvHelper detects likely defaults automatically, for example:
@@ -125,8 +118,7 @@ Default values are shown in their own section. EnvHelper detects likely defaults
Manual defaults can always be added. They override automatically detected defaults and only affect the output, never the input template. Manual defaults can always be added. They override automatically detected defaults and only affect the output, never the input template.
--- {{ template:section-line }}
## Downloads and Artifacts ## Downloads and Artifacts
The Windows build produces two executable artifacts: The Windows build produces two executable artifacts:
@@ -138,8 +130,7 @@ EnvHelper-0.1.0-portable-x64.exe
The files are published by the Gitea Runner as an Actions artifact and as a Generic Package. The files are published by the Gitea Runner as an Actions artifact and as a Generic Package.
--- {{ template:section-line }}
## Development ## Development
Install dependencies: Install dependencies:
@@ -166,8 +157,7 @@ Build Windows packages:
npm run dist:win npm run dist:win
``` ```
--- {{ template:section-line }}
## Windows Build ## Windows Build
The production Windows build runs through Gitea Actions: The production Windows build runs through Gitea Actions:
@@ -185,8 +175,7 @@ The runner:
5. creates setup and portable executables, 5. creates setup and portable executables,
6. uploads artifacts and packages to Gitea. 6. uploads artifacts and packages to Gitea.
--- {{ template:section-line }}
## README Generation ## README Generation
The README structure follows the blueprint-based workflow from [`andreasbm/readme`](https://github.com/andreasbm/readme). The README structure follows the blueprint-based workflow from [`andreasbm/readme`](https://github.com/andreasbm/readme).
@@ -198,6 +187,8 @@ blueprint.md
blueprint.json blueprint.json
``` ```
Section dividers are configured as the custom `section-line` template in `blueprint.json` and stamped from `blueprint.md`, so generated README updates keep the same rainbow separators.
Regenerate the README with: Regenerate the README with:
```bash ```bash
@@ -206,8 +197,7 @@ npm run readme
The generated output is committed as `README.md` so Gitea can render it directly without any additional tooling. The generated output is committed as `README.md` so Gitea can render it directly without any additional tooling.
--- {{ template:section-line }}
## Security ## Security
EnvHelper generates values locally in the renderer using Web Crypto. It is a helper for `.env` templates and is not a replacement for a central secret manager in production infrastructure. EnvHelper generates values locally in the renderer using Web Crypto. It is a helper for `.env` templates and is not a replacement for a central secret manager in production infrastructure.
@@ -225,8 +215,7 @@ WINDOWS_CSC_KEY_PASSWORD
`WINDOWS_CSC_LINK` is the certificate, for example a Base64-encoded `.pfx` file or a reachable certificate URL. `WINDOWS_CSC_KEY_PASSWORD` is the certificate password. `WINDOWS_CSC_LINK` is the certificate, for example a Base64-encoded `.pfx` file or a reachable certificate URL. `WINDOWS_CSC_KEY_PASSWORD` is the certificate password.
--- {{ template:section-line }}
## Project Info ## Project Info
| Field | Value | | Field | Value |