What is Fedora Hubs?

The goal of the Fedora Hubs project is to provide a consistent contributor experience across all Fedora teams. Hubs serve as an “intranet” for the Fedora Project. The many different projects in Fedora each have different processes and workflows. Hubs will be a single place where contributors can learn about and contribute to these projects in a consistent way.

Hubs is also a social tool for Fedora contributors. It’s designed to help you keep up with everything and everybody across a big open source project in ways that aren’t currently possible. Hubs solves obstacles so new contributors can get in touch with experienced ones.

Do you want to learn more about the history behind Hubs? Fedora Design team lead Máirín Duffy wrote a few blog posts on the progress of Hubs.

Hubs features

Here are some key features in Hubs right now. Development is continuing, so these features will change over time.

Group hubs

The Fedora Project consists of various teams such as Infrastructure, Design, Community Operations, Marketing, Globalization, and more. Group hubs are associated with respective FAS groups.

Screenshot from 2015-12-08 19-23-41
This is a group hub for the Infrastructure team. It lists a feed for the team, as well as their configured widgets. The widgets are listed in the order they were added with their index values. You can see the values in the populate.py file under the infrastructure team.

Using group hubs, anyone can get to know the work of a team and track their progress. Also, it becomes easier to get insights from the other teams on a particular task or project.

User hubs

The user hub page maps to a user’s account in the Fedora Account System (FAS). User hubs are configurable. Again, the hub lists the widgets the user has configured to display on their page.

Screenshot from 2016-03-17 03-28-52

This is the hub for the FAS user devyani7. It lists the widgets configured for this user in the hubs/defaults.py file. Each user can configure their user hub (or profile) as desired to appeal to visitors.

The various sized rectangular cards on a hub page are called widgets. Owners configure a hub page with the widgets they want displayed.

Every user hub page features a Contact-Info widget, for example. This widget lets you know the time zone, contact channels, and other details for the person whose hub you’re viewing. The data is extracted from the FAS information the user has set to be public.

Work-in-progress features

The team is currently working on more features, including:

  • Bookmark: The User hub pages will feature a vertical bookmark bar. Hubs adds the pages the user frequently visits to their bookmarks. We plan to provide the user with the option to re-order the bookmark list as desired. Hubs will offer suggestions based on the frequency of visits to each hub page.
  • Waartaa: Using this widget, a user can chat with developers and not worry about losing logs. We plan to provide an IRC widget that gives users a client in the hub page itself.
  • Badges-Path Widget: Getting a Fedora badge is always a happy occasion, and expresses the experience of the contributor. Here we’ll have a badge contribution pathway to unlock new badges as the user levels up.

Back end infrastructure of Hubs

This diagram explains how Hubs uses messaging on Fedora’s fedmsg bus and other Fedora services to deliver fresh, useful data.

diagram

Want to hack on Hubs?

We designed Hubs to be modular, extensible, and reusable. In the future, we hope other open source projects will participate, build on Hubs, and add their own features. So there’s no better time to hack on Hubs than right now!

We wrote a post featured on the Community blog to provide you with tips to help hack your way into the project. We also covered how to get through some common pitfalls. This post also provides a glossary of Hubs-related terms. It even gives you a walk-through of what to expect once you set up Hubs locally.

Getting Help

Of course we have a number of ways you can reach the Hubs team.

IRC

IRC helps you get to know and interact with the rest of the Fedora Hubs team. It’s a global communication tool where asynchronous chat happens often. You can say hello or just lurk in #fedora-hubs on irc.freenode.net. We have weekly meetings every Tuesday at 14:00 UTC.

Never used IRC before or a little bit intimidated? Check out this IRC Beginner’s Guide here on Fedora Magazine to get started.

Mailing List

If you’ve got questions, want to have a discussion or get feedback, or just catch up with what people are doing on the team, use our mailing list. The mailing list is a subscription-based tool. You have to subscribe to the list if you want to post. You can subscribe to the Fedora Hubs mailing list at this web page.

Use the Sign In button to login with your FAS account. Or you can use any number of third party accounts like Google, Yahoo, Facebook, Twitter, Github, or an OpenID provider. To subscribe to the list, use any email address you prefer. Just drop us an introduction mail on the list, and we’ll reply back.

Hope to see you soon, hacking on Hubs!


Image courtesy of Jody Claborn — originally uploaded to Flickr as Sun Setting at Seattle Airport.