#1890 Homepage redesign
Closed: MIGRATED a year ago by nikromen. Opened 2 years ago by frostyx.

I think it's a good time to rework and improve the homepage.

Showing a list of the newest projects in Copr made a lot of sense in
its beginnings when new projects appeared far less
frequently. But now, I would say nobody cares about what new
projects appeared. There are many options how to utilize the
homepage space better.

I would go for some combination of the following options:

  • A big search box with instructions how to search by things like
    build ID, package names, project names, owner names, etc. Imagine
    something like GitHub issues searching. We would have to improve our
    searching capabilities first but it would be a killer feature
    anyway. I believe we have some RFE for it already.
  • Some cool heading with how many projects/users/whatever we have, I
    found this on packages.gentoo.org: "Welcome to the Home
    of 19,498 Gentoo Packages". Simple, and IMHO looks very nice.
  • Links to the most important sections of the documentation. I imagine
    something like a group of a few horizontal boxes, each one with some
    icon, very short text, and link to the documentation.
  • A list of the most popular projects. This might go either
    way. Hopefuly it will make people upvote and downvote projects more
    and we will get some cool projects on the homepage, or it will go
    embarrassingly wrong and we will have projects with one or two
    upvotes there.
  • For logged users, a list of their pinned projects (and if they don't
    have anything pinned, then a list of their most recent projects). I
    believe this is what users go at least half of the times when they
    open Copr.
  • A slideshow (bootstrap has a clean-looking widget for it) showing
    whatever we think would be attractive for the users. Maybe a
    simplified version of our screenshot tutorial, maybe simple CLI
    usage, maybe some feature preview with one feature per slide (CLI,
    forking, possible build methods, webhooks, ...)
  • Anything else?

I haven't decided yet what combination of those I would like to
have. It would be best to make some mock-ups and iterate on them. But
if you dislike some of the suggestions already, let me know so we can
leave them out of consideration.


I have some mockups for you. Please note that all texts I used are
just placeholders and spacing is a bit off. I just wanted to show you
some ideas.

Let me know your favorites, so we can narrow the options down and improve the proposals.

I like option 1, but I'd probably vote to drop the "Recent projects" part entirely.

Plus I'd like to have the "popular" projects somewhere (though I don't think it should be placed on the main page).

I really like those tutorial cards (or the slideshow) and would love to see packit in the list as well :)

I like option 1, but there are two search boxes, let's drop the one under the log out button.
Overall, I find our site so narrow, what about stretching it and have pinned projects and recent projects side by side? I would also remove recent projects and replace them with favorite projects.

From these options, I like 1 most.

I think we need to design a front page for logged and not-logged users separately. E.g., Recent projects and recent builds for the logged users have sense. But for not-logged users, none of them has sense now.

For me, the most important things is that the page (both of them) should load as fast as possible - I am willing to a lot of compromises to achive that. The front page for not-logged users should be pregenerated.

Task queue probably does not have sense nowdays too. It was put there in early days to quickly see if something was stuck somewhere. Now, copr is more robust and it does not need to be there. The graph itself is likely enough.

but there are two search boxes, let's drop the one under the log out button.

That would mean the top bar would look differently on the first page and any other.
I, personally, would not mind having two search boxed on the front page. Especially when the bottom one will have a more verbose placeholder.

I like the hints on Gentoo page (You can search by...)

asked in #fedora-buildsys to write this up & add as a comment ...

re: pinning

current pinning implementation

(a) is limited to four slots
(b) provides only one 'level', or 'category' of pin
(c) only works for projects that are published to the 'home page'

cref: https://pagure.io/copr/copr/blob/281798717b19ff2163ebf1bc0770a50e9bc9782c/f/frontend/coprs_frontend/coprs/logic/complex_logic.py#_298

lots of people use COPRs as a staging ground for eventual promote-to-fed-pkgs packaging development.
some consider pinning a tool to 'boast' about their ... packages.

those are neither my usage, nor my interest.

I use COPRs to build/maintain what FedPkg'ing doesn't &/or never will, where my primary development/support interest is to the ~1K+ users in my 'space'.
COPR supports that task in making Fedora more easily usable/maintainable here. To that end, tools that make 'me' more efficient at supporting 'them' are useful.

pinning is helpful to organize my COPRs so as not to have to slog through pages of COPR projects that I'm not currently focused on.

i'd like to see options to:

-- define multiple pin categories/tags
-- assign projects to multiple categories/tages
-- pin non-home-page-published projects in MY workspace
-- defined/select pin display ordering in MY workspace

Part of this is implemented as f673c2c

Metadata Update from @nikromen:
- Issue close_status updated to: MIGRATED
- Issue status updated to: Closed (was: Open)

a year ago

Login to comment on this ticket.

Metadata