All source listed below is under MIT license if no LICENSE file stating different is available.
Zhurnal - Changelog Generator
Overview
Zhurnal is a web application designed to generate and manage changelogs for Git repositories. It supports both public and self-hosted platforms like Gitea and GitLab, including authenticated repositories using URL credentials.
Features
- Generate changelogs from repository URLs (http://, https://).
- Supports authenticated repositories (e.g.,
https://user:pass@domain/repo
). - Updates existing repositories and tracks new commits.
- Real-time progress updates via WebSocket.
- Download changelogs in JSON or Markdown formats.
- Night/day theme toggle.
- Mobile and desktop compatible (min 320px width).
- Hourly automatic repository updates.
- Log rotation and system log access.
Installation
- Clone the repository:
git clone https://retoor.molodetz.nl/retoor/zhurnalweb cd zhurnalweb
- Install dependencies (ensure Python and FastAPI are installed).
- Run the application:
python main.py
Usage
- Open
http://localhost:8000
in your browser. - Enter a repository URL in the input field.
- View real-time updates and access the generated changelog.
Configuration
- Repositories are stored in
/repos/[hash-of-url]/
. - Database:
zhurnal.db
using AsyncDataSet. - Logs:
logs/app.log
with rotation (app.log.1 to app.log.5).
Development
- Backend:
main.py
(FastAPI, AsyncDataSet). - Frontend:
index.html
(self-contained). - Changelog Template:
changelog.html
.
License
MIT License
.gitignore | |
changelog.html | |
client.py | |
env.py | |
index.html | |
main.py | |
README.md |