Forgejo Integrator
unlistedby RonDev
A lightweight Obsidian plugin to embed and visualize Forgejo/Gitea/Codeberg Issues and Pull Requests as clean, styled tables directly inside your notes.
Obsidian Forgejo Plugin
Seamlessly integrate and render live data from your Forgejo (or Gitea) instance directly inside your Obsidian notes using custom Markdown code blocks.
Track single issues, pull requests, repository overviews, and filtered lists in real-time with customizable themes and sortable tables.
🌟 Key Features
- Live Data Fetching: Pulls real-time information directly from your self-hosted Forgejo/Gitea REST API.
- Interactive & Sortable Tables: Sort lists dynamically by clicking on column headers (supports numeric, date, and alphabetical sorting).
- Multiple Markdown Code Blocks: Embed individual items, repository lists, user-specific pull requests, or complete account overviews.
- Customizable Themes & Layouts: Choose between 18 color themes (
dark,light,blue,purple,mono,sepia,nord,dracula,cyberpunk,midnight,slate,teal,amber,coffee,synthwave,solarized-dark,rose,emerald) and vertical/horizontal single-item views. - Client-side Caching & Polling: Reduce server load and API limits with built-in caching and configurable auto-refresh intervals.
- Security First: Input sanitization against XSS and token obfuscation in plugin settings.
🚀 Installation
Manual Installation
- Download
main.js,manifest.json, andstyles.cssfrom the latest release. - Create a folder named
obsidian-forgejo-plugininside your vault's plugin folder (<vault>/.obsidian/plugins/). - Copy the downloaded files into
<vault>/.obsidian/plugins/obsidian-forgejo-plugin/. - Open Obsidian, go to Settings > Community Plugins, and enable Forgejo Integrator.
⚙️ Configuration
Navigate to Settings > Forgejo Integrator to configure the plugin:
- Forgejo Server URL: Base URL of your Forgejo instance (e.g.,
https://forgejo.yourdomain.com). - API Token: A Personal Access Token with Read access to your repositories and user profile.
- Table Theme: Select a theme (
dark,light,blue,purple,mono,sepia,nord,dracula,cyberpunk,midnight,slate,teal,amber). - Table Layout: Toggle between
verticalandhorizontalpresentation for single-item blocks. - Enable Caching: Toggle local disk/memory caching to minimize network requests.
- Display Language: Select the output language for tables (English/German)
- Refresh Interval: Set auto-update frequency (Realtime, 1 min, 5 min, 30 min, 1 hr).
- Test Connection: Click the Test Connection button to verify your API credentials.
📝 Usage & Code Block Examples
Simply paste any of the following code blocks into your Obsidian notes:
1. Single Issues & Pull Requests
Render detailed information about a specific issue or pull request.
```FIS
https://forgejo.yourdomain.com/owner/repo/issues/42
```
```FPR
https://forgejo.yourdomain.com/owner/repo/pulls/15
```
2. Repository Issue Lists
Render lists of issues for a specific repository.
- All Issues:
FIS-ALLorFRI - Open Issues:
FIS-OPENorFRI-OPEN - Closed Issues:
FIS-CLOSEDorFRI-CLOSED
```FIS-OPEN
https://forgejo.yourdomain.com/owner/repo
```
3. Repository Pull Request Lists
Render pull requests filtered by status for a specific repository.
- All PRs:
FPR-ALL - Open PRs:
FPR-OPEN - Closed PRs:
FPR-CLOSED
```FPR-OPEN
https://forgejo.yourdomain.com/owner/repo
```
4. User Pull Requests
Display pull requests created by a specific user across all accessible repositories.
- All User PRs:
FPR-LIST - Open User PRs:
FPR-LIST-OPEN - Closed User PRs:
FPR-LIST-CLOSED
```FPR-LIST-OPEN
octocat
```
5. Repository Summaries & Overview
- Single Repository Overview: Displays metrics (issues count, open PRs, license, last push date, latest release tag).
```FR
https://forgejo.yourdomain.com/owner/repo
```
- All User Repositories Overview: Displays a comprehensive overview table of all repositories accessible by the configured API token (no URL required).
```FR-ALL
```
6. User Heatmap
Generates an overview of a user's recent activities. The number following FRA specifies the number of months to display; if no number is specified, the last 6 months are shown.
```FRA-12
owner
```
Generates an overview of the recent activities of a user and a repos. The number after FRA indicates the number of months to be reported; If no number is given, the last 6 months are displayed.
```FRA-12
owner/repo
```
🎨 Codeblock Syntax Quick Reference
| Codeblock | Scope | Argument | Description |
|---|---|---|---|
FIS | Single Issue | Issue URL | Renders detailed view of a single issue |
FPR | Single PR | PR URL | Renders detailed view of a single pull request |
FIS-ALL / FRI | Issues | Repo URL | Lists all issues in a repository |
FIS-OPEN / FRI-OPEN | Issues | Repo URL | Lists open issues in a repository |
FIS-CLOSED / FRI-CLOSED | Issues | Repo URL | Lists closed issues in a repository |
FPR-ALL | PRs | Repo URL | Lists all pull requests in a repository |
FPR-OPEN | PRs | Repo URL | Lists open pull requests in a repository |
FPR-CLOSED | PRs | Repo URL | Lists closed pull requests in a repository |
FPR-LIST | User PRs | Username | Lists all PRs authored by user |
FPR-LIST-OPEN | User PRs | Username | Lists open PRs authored by user |
FPR-LIST-CLOSED | User PRs | Username | Lists closed PRs authored by user |
FR | Repository | Repo URL | Displays single repo summary & metrics |
FR-ALL | All Repos | None | Overview table of all authenticated user repos |
FRA-6 | User Heatmap | Username | Displays a table of recent activities |
FRA-6 | Repo Heatmap | Username/Repo | Displays a table of recent activities from a repo |
☕ Support & Donation
If you find this plugin useful, consider supporting its ongoing development!
For plugin developers
Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.