mirror of
https://github.com/go-gitea/gitea.git
synced 2026-03-22 14:34:54 -05:00
Custom tabs for projects in web ui #470
Open
opened 2025-11-02 03:24:37 -06:00 by GiteaMirror
·
18 comments
No Branch/Tag Specified
main
release/v1.25
release/v1.24
release/v1.23
release/v1.22
release/v1.21
release/v1.20
release/v1.19
release/v1.18
release/v1.17
release/v1.16
release/v1.15
release/v1.14
release/v1.13
release/v1.12
release/v1.11
release/v1.10
release/v1.9
release/v1.8
v1.25.3
v1.25.2
v1.25.1
v1.25.0
v1.24.7
v1.25.0-rc0
v1.26.0-dev
v1.24.6
v1.24.5
v1.24.4
v1.24.3
v1.24.2
v1.24.1
v1.24.0
v1.23.8
v1.24.0-rc0
v1.25.0-dev
v1.23.7
v1.23.6
v1.23.5
v1.23.4
v1.23.3
v1.23.2
v1.23.1
v1.23.0
v1.23.0-rc0
v1.24.0-dev
v1.22.6
v1.22.5
v1.22.4
v1.22.3
v1.22.2
v1.22.1
v1.22.0
v1.23.0-dev
v1.22.0-rc1
v1.21.11
v1.22.0-rc0
v1.21.10
v1.21.9
v1.21.8
v1.21.7
v1.21.6
v1.21.5
v1.21.4
v1.21.3
v1.21.2
v1.20.6
v1.21.1
v1.21.0
v1.21.0-rc2
v1.21.0-rc1
v1.20.5
v1.22.0-dev
v1.21.0-rc0
v1.20.4
v1.20.3
v1.20.2
v1.20.1
v1.20.0
v1.19.4
v1.21.0-dev
v1.20.0-rc2
v1.20.0-rc1
v1.20.0-rc0
v1.19.3
v1.19.2
v1.19.1
v1.19.0
v1.19.0-rc1
v1.20.0-dev
v1.19.0-rc0
v1.18.5
v1.18.4
v1.18.3
v1.18.2
v1.18.1
v1.18.0
v1.17.4
v1.18.0-rc1
v1.19.0-dev
v1.18.0-rc0
v1.17.3
v1.17.2
v1.17.1
v1.17.0
v1.17.0-rc2
v1.16.9
v1.17.0-rc1
v1.18.0-dev
v1.16.8
v1.16.7
v1.16.6
v1.16.5
v1.16.4
v1.16.3
v1.16.2
v1.16.1
v1.16.0
v1.15.11
v1.17.0-dev
v1.16.0-rc1
v1.15.10
v1.15.9
v1.15.8
v1.15.7
v1.15.6
v1.15.5
v1.15.4
v1.15.3
v1.15.2
v1.15.1
v1.14.7
v1.15.0
v1.15.0-rc3
v1.14.6
v1.15.0-rc2
v1.14.5
v1.16.0-dev
v1.15.0-rc1
v1.14.4
v1.14.3
v1.14.2
v1.14.1
v1.14.0
v1.13.7
v1.14.0-rc2
v1.13.6
v1.13.5
v1.14.0-rc1
v1.15.0-dev
v1.13.4
v1.13.3
v1.13.2
v1.13.1
v1.13.0
v1.12.6
v1.13.0-rc2
v1.14.0-dev
v1.13.0-rc1
v1.12.5
v1.12.4
v1.12.3
v1.12.2
v1.12.1
v1.11.8
v1.12.0
v1.11.7
v1.12.0-rc2
v1.11.6
v1.12.0-rc1
v1.13.0-dev
v1.11.5
v1.11.4
v1.11.3
v1.10.6
v1.12.0-dev
v1.11.2
v1.10.5
v1.11.1
v1.10.4
v1.11.0
v1.11.0-rc2
v1.10.3
v1.11.0-rc1
v1.10.2
v1.10.1
v1.10.0
v1.9.6
v1.9.5
v1.10.0-rc2
v1.11.0-dev
v1.10.0-rc1
v1.9.4
v1.9.3
v1.9.2
v1.9.1
v1.9.0
v1.9.0-rc2
v1.10.0-dev
v1.9.0-rc1
v1.8.3
v1.8.2
v1.8.1
v1.8.0
v1.8.0-rc3
v1.7.6
v1.8.0-rc2
v1.7.5
v1.8.0-rc1
v1.9.0-dev
v1.7.4
v1.7.3
v1.7.2
v1.7.1
v1.7.0
v1.7.0-rc3
v1.6.4
v1.7.0-rc2
v1.6.3
v1.7.0-rc1
v1.7.0-dev
v1.6.2
v1.6.1
v1.6.0
v1.6.0-rc2
v1.5.3
v1.6.0-rc1
v1.6.0-dev
v1.5.2
v1.5.1
v1.5.0
v1.5.0-rc2
v1.5.0-rc1
v1.5.0-dev
v1.4.3
v1.4.2
v1.4.1
v1.4.0
v1.4.0-rc3
v1.4.0-rc2
v1.3.3
v1.4.0-rc1
v1.3.2
v1.3.1
v1.3.0
v1.3.0-rc2
v1.3.0-rc1
v1.2.3
v1.2.2
v1.2.1
v1.2.0
v1.2.0-rc3
v1.2.0-rc2
v1.1.4
v1.2.0-rc1
v1.1.3
v1.1.2
v1.1.1
v1.1.0
v1.0.2
v1.0.1
v1.0.0
v0.9.99
Labels
Clear labels
$20
$250
$50
$500
backport/done
💎 Bounty
docs-update-needed
good first issue
hacktoberfest
issue/bounty
issue/confirmed
issue/critical
issue/duplicate
issue/needs-feedback
issue/not-a-bug
issue/regression
issue/stale
issue/workaround
lgtm/need 2
modifies/api
modifies/translation
outdated/backport/v1.18
outdated/theme/markdown
outdated/theme/timetracker
performance/bigrepo
performance/cpu
performance/memory
performance/speed
pr/breaking
proposal/accepted
proposal/rejected
pr/wip
pull-request
reviewed/wontfix
💰 Rewarded
skip-changelog
status/blocked
topic/accessibility
topic/api
topic/authentication
topic/build
topic/code-linting
topic/commit-signing
topic/content-rendering
topic/deployment
topic/distribution
topic/federation
topic/gitea-actions
topic/issues
topic/lfs
topic/mobile
topic/moderation
topic/packages
topic/pr
topic/projects
topic/repo
topic/repo-migration
topic/security
topic/theme
topic/ui
topic/ui-interaction
topic/ux
topic/webhooks
topic/wiki
type/bug
type/deprecation
type/docs
type/enhancement
type/feature
type/miscellaneous
type/proposal
type/question
type/refactoring
type/summary
type/testing
type/upstream
Mirrored from GitHub Pull Request
Milestone
No items
No Milestone
Projects
Clear projects
No project
No Assignees
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: github-starred/gitea#470
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @pgaskin on GitHub (Mar 10, 2017).
It would be nice to be able to add custom tabs to the web ui, because then people can link to important places and have it fit in with the rest of the ui. There should be an option to have it be an iframe (for integration), or a standard link.
@lunny commented on GitHub (Mar 10, 2017):
It should be not very difficult to implement I think.
@pgaskin commented on GitHub (Mar 10, 2017):
@lunny Where would the data be stored? I am not familiar with that part of gitea yet,
@Fastidious commented on GitHub (Mar 19, 2017):
Did someone wrote
iframe? Dear lord! So, @geek1011, you are asking that Gitea becomes like WordPress, a bookmark manager, or a Portal, right? While you are at it, may as well add a bulletin board, chats, blogs, etc. 😝 .I give this one a 👎 .
@lunny commented on GitHub (Mar 19, 2017):
I think we need a plugin system. a plugin could setup a tab on the repository and user could chose repository should use which tabs.
Code,Issues,Wikiand etc. could be as basic tabs.@zhv9 commented on GitHub (Oct 14, 2017):
I think you can try this:
https://docs.gitea.io/en-us/customizing-gitea/
@lunny commented on GitHub (Oct 15, 2017):
@zhv9 That's not the same thing.
@lunny commented on GitHub (Oct 15, 2017):
Currently, if a repo is in an organization, you could define which
Unityou want and you also could give it to some team. maybe this is what's you want? @geek1011@Morlinest commented on GitHub (Oct 15, 2017):
@lunny I think he wants to add new tab with custom name (same as code, issues, pr, ...) as bookmark to other page or to be able to load that page to iframe inside that tab. So when you click on tab, it will show you page from from another url (maybe tables, graphs, map, ...).
@bkcsoft commented on GitHub (Oct 15, 2017):
But why? That is literaly what the Wiki is for... 😒
@OmarAssadi commented on GitHub (Oct 19, 2017):
Wouldn't mind having the ability to link to page (e.g., adding a forum tab or something like that to a project). But, personally, I wouldn't want an iframe option.
@daviian commented on GitHub (Oct 20, 2017):
IMHO I am against that feature as @bkcsoft mentioned the existing wiki.
However we should definitely work on a plugin architecture to enable such customization.
@AlbertoGP commented on GitHub (Jan 5, 2018):
Hi, I could use a feature like this or even better the plugin system discussed in other issues (linked below).
This is a long comment, written as I considered a couple of approaches, and ends with a pull request (#3308 Templates for extra links in top navbar and repo tool tabs.) that to me seems to fix both this issue and #2115.
I'm writing a tool as a single-page web application that uses the HTTP API.
I put that page under
custom/public/and then it works as if it was part of Gitea, without having to log-in separately or anything like that.To have it accessible from the main interface, I've copied and modified the templates
base/head.tmplandrepo/header.tmpl.This works great but complicates installation and maintenance: every time I upgrade, I have to check that those template files did not change. If they do, I need to copy and modify the new ones.
Being able to add links to the navigation menus / tabs from the configuration would make such single-page web mini-applications dead simple. The link specification string would need placeholders for parameters such as the current repository full name: that's what I do in
repo/header.tmplfor instance, to have my application fetch the correct repository data.However, it should stop at plain links, not iframes because they bring all kind of problems. For the cases where we want to insert extra content in the interface, a plugin system that allows specifying additional routes to new templates is more useful. If I understand correctly, I can add new
.tmplfiles but they won't be loaded unless I modify the go code at https://github.com/go-gitea/gitea/tree/master/routersI'm looking now at the templates, thinking what a configuration entry might look like, and I just realized that it would have some issues, particularly with i18n.
Could this be done by adding an empty template at the end of the tabs?
I mean something like
{{template "repo/extra_tabs" .}}at https://github.com/go-gitea/gitea/blob/master/templates/repo/header.tmpl#L91 right before{{if .IsRepositoryAdmin}}, and{{template "base/extra_tabs" .}}at https://github.com/go-gitea/gitea/blob/master/templates/base/head.tmpl#L159After a quick test it seems to work wonderfully, so I've made a pull request:
#3308 Templates for extra links in top navbar and repo tool tabs.
This also solves "Custom Routing / new Pages?! #2115", which asked about custom routing but just needed to add links to pages like "imprint" (German "Impressum", noting who is responsible for the site and other legalities) and "privacy policy". Those pages can be put under "custom/public/".
Related issues about the plugin system:
@lunny commented on GitHub (Jan 6, 2018):
@AlbertoGP I would like a new tab type
Linklike others (i.e.Code,Issue) and repository owners could add one or more this tab on the repository. AndExternal Issue TrackerandExternal Wikicould be removed sine they are bothLinktabs.@stale[bot] commented on GitHub (Feb 9, 2019):
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs during the next 2 weeks. Thank you for your contributions.
@warnat commented on GitHub (Sep 14, 2020):
so, this has been implemented here: https://github.com/go-gitea/gitea/pull/3308 ?
ready to close ?
@lunny commented on GitHub (Sep 15, 2020):
@warnat If you mean custom template, it did.
@sebthom commented on GitHub (Jun 2, 2023):
We also link to add custom tabs to repos. Unfortunately the approach using templates does not work for us as they can only be edited by system administrators. We want to allow repo managers to be able to add custom tabs, e.g. linking to external apps/resources etc. So it would be great if the repo settings could be extended so custom links can be registered.
@silkentrance commented on GitHub (Jun 22, 2024):
@sebthom Why do you not just include a README.md and include these links there? Or enable the wiki and provide these links there?