2025-08-04 19:24:13 +02:00
# 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
1. Clone the repository:
```
2025-08-04 19:25:49 +02:00
git clone https://retoor.molodetz.nl/retoor/zhurnalweb
cd zhurnalweb
2025-08-04 19:24:13 +02:00
```
2. Install dependencies (ensure Python and FastAPI are installed).
3. Run the application:
```
python main.py
```
## Usage
1. Open `http://localhost:8000` in your browser.
2. Enter a repository URL in the input field.
3. 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