pixelbrackets/open-source-profile

Self-Hosted profile page for your Open Source packages & contributions

Installs: 6

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Forks: 0

Type:project

pkg:composer/pixelbrackets/open-source-profile

1.1.0 2025-11-12 11:01 UTC

This package is auto-updated.

Last update: 2026-01-25 22:52:58 UTC


README

Version Build Status Made With License Contribution

Self-Hosted profile page for your Open Source packages & contributions.

Screenshot

⭐ You like this package? Please star it or send a tweet. ⭐

Vision

The general idea of this project is to have one place with all Open Source packages and contributions of a person.

There are several platforms to host Open Source projects like GitHub, Gitlab, Bitbucket, Sourceforge & Launchpad, and they all have fancy user profile pages. They are isolated however. On BitBucket I can't showcase the one project I maintain on GitLab only. The GitHub activity stream won't show contributions to Launchpad. Let alone projects with self-hosted Git servers.

This creates a vendor lock-in. Which becomes obious when you search for Open Source Software catalogues, contributions, or statistics. Most support GitHub only.

Goals:

  • List of all projects and packages of a person
  • List of contributions of a person (issues, merge requests, commits)
  • List of packages a person likes (starred projects)
  • List of all sponsorings (Open Collective, GitHub Sponsors, Patreon)
  • List contributors and sponsors for packages of a person
  • Highlight packages - Show most important projects at a glance
  • Hide packages - Don't show packages generated automatically by subsplits, forks or mirrors
  • Support for multiple Git hosting services (not just GitHub)
  • Link mirrors - Git supports multiple remotes, no need to limit to one repository host only
  • Reduced UI (no platform specific buttons)

The package follows the KISS principle.

🚧 WIP

The package is only prototype right now, to go through the idea.

Next steps:

  • Add a framework like Slim or Symfony and a template engine
  • Add more metadata to projects and user
  • Add a tool to initiate the project list
  • Fetch contributions
  • Fetch metadata (only overwrite fields like description)
  • Make the output static (to deploy to Static Hosts)

Requirements

  • PHP

Installation

Packagist Entry https://packagist.org/packages/pixelbrackets/open-source-profile/

  • Point your webserver to the web directory
  • Copy data/projects.template.json to data/projects.json and add links to all your repositories
  • Copy data/user.template.json to data/user.json and add your username

Source

https://gitlab.com/pixelbrackets/open-source-profile/

Mirror https://github.com/pixelbrackets/open-source-profile/ (Issues & Pull Requests mirrored to GitLab)

Demo

🚀 https://opensource.pixelbrackets.de/

Usage

The data directory holds all necessary information to generate the view.

Projects:

  • repository-url - Required, string
  • description - Optional, string
  • development-state - Optional, string (defaults to active)
    • active - Ongoing development
    • maintenance - Maintenance mode - no active development but PRs are welcome
    • archived - EOL - Project is discontinued

User:

  • username - Required, string
  • name - Optional, string
  • email - Optional, string
  • bio - Optional, string - Bio/profession/job title (e.g., "Web Developer & Open Source Enthusiast")
  • status - Optional, string - A short status message (e.g., "Building in public", "Available for hire")
  • links - Optional, array of objects - External links to display on profile
    • label - Required, string - Display text for the link
    • url - Required, string - URL to link to

License

GNU General Public License version 2 or later

The GNU General Public License can be found at http://www.gnu.org/copyleft/gpl.html.

Author

Dan Untenzu (mail@pixelbrackets.de / @pixelbrackets)

Changelog

See CHANGELOG.md

Contribution

This script is Open Source, so please use, share, patch, extend or fork it.

Contributions are welcome!

Feedback

Please send some feedback and share how this package has proven useful to you or how you may help to improve it.