Forgejo Integrator

unlisted

by RonDev

A lightweight Obsidian plugin to embed and visualize Forgejo/Gitea/Codeberg Issues and Pull Requests as clean, styled tables directly inside your notes.

Updated 16d agoMIT
View on GitHub

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

  1. Download main.js, manifest.json, and styles.css from the latest release.
  2. Create a folder named obsidian-forgejo-plugin inside your vault's plugin folder (<vault>/.obsidian/plugins/).
  3. Copy the downloaded files into <vault>/.obsidian/plugins/obsidian-forgejo-plugin/.
  4. Open Obsidian, go to Settings > Community Plugins, and enable Forgejo Integrator.

⚙️ Configuration

Navigate to Settings > Forgejo Integrator to configure the plugin:

  1. Forgejo Server URL: Base URL of your Forgejo instance (e.g., https://forgejo.yourdomain.com).
  2. API Token: A Personal Access Token with Read access to your repositories and user profile.
  3. Table Theme: Select a theme (dark, light, blue, purple, mono, sepia, nord, dracula, cyberpunk, midnight, slate, teal, amber).
  4. Table Layout: Toggle between vertical and horizontal presentation for single-item blocks.
  5. Enable Caching: Toggle local disk/memory caching to minimize network requests.
  6. Display Language: Select the output language for tables (English/German)
  7. Refresh Interval: Set auto-update frequency (Realtime, 1 min, 5 min, 30 min, 1 hr).
  8. 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-ALL or FRI
  • Open Issues: FIS-OPEN or FRI-OPEN
  • Closed Issues: FIS-CLOSED or FRI-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

CodeblockScopeArgumentDescription
FISSingle IssueIssue URLRenders detailed view of a single issue
FPRSingle PRPR URLRenders detailed view of a single pull request
FIS-ALL / FRIIssuesRepo URLLists all issues in a repository
FIS-OPEN / FRI-OPENIssuesRepo URLLists open issues in a repository
FIS-CLOSED / FRI-CLOSEDIssuesRepo URLLists closed issues in a repository
FPR-ALLPRsRepo URLLists all pull requests in a repository
FPR-OPENPRsRepo URLLists open pull requests in a repository
FPR-CLOSEDPRsRepo URLLists closed pull requests in a repository
FPR-LISTUser PRsUsernameLists all PRs authored by user
FPR-LIST-OPENUser PRsUsernameLists open PRs authored by user
FPR-LIST-CLOSEDUser PRsUsernameLists closed PRs authored by user
FRRepositoryRepo URLDisplays single repo summary & metrics
FR-ALLAll ReposNoneOverview table of all authenticated user repos
FRA-6User HeatmapUsernameDisplays a table of recent activities
FRA-6Repo HeatmapUsername/RepoDisplays a table of recent activities from a repo

☕ Support & Donation

If you find this plugin useful, consider supporting its ongoing development!

Buy me a coffee Buy me a coffee Pizza Power

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.