Skip to main content

repocribro

License Build Status Test Coverage Documentation Status PyPi Version Requirements Status

Repocribro is web application allowing users to register their GitHub repository so they can be managed, searched, browsed, tested, etc. (depends on used extensions) with the site. Main idea is to provide simple but powerful modular tool for building groups of GitHub repositories which are developed by different users and organizations.

Cribro means sieve in Italian language (origins in Latin word cribrum). This project provides tool for intelligent sifting repositories, information about them and its contents.

Typical use cases

  • Community - repositories hub of examples / projects related to the community (methodology, standards, …)

  • Courses - gathering and evaluating homeworks

Specification

  • Python-powered web application (Flask + SQLAlchemy)

  • Distributed as python package (will be on PyPi) and via GitHub

  • Ability to extend via python packages (from PyPi)

    • Extend web interface, functionality and/or CLI commands

  • Functionality

    • User login via GitHub account (will create an account in app paired with GitHub account)

    • Each user has own page with details and list of (public) repositories in app

    • User can allow/forbid own GitHub repository within app

    • Each registered repository has own page with details and history, details are gathered via GitHub API and some are stored in DB

    • User can define if the repository page should be public, hidden (secret URL) or private (logged owner and admins)

    • User has privileges (user/admin)

      • User = managing own repositories

      • Admin = managing everything

      • More roles can be created and privileges assigned to roles

    • Search repositories (by name, author, description, language, …)

    • Administration zone

      • User management

      • Repositories management

      • Other settings including extension settings

    • Listening (webhooks) for changes in repository:

      • push

      • release

      • repository

    • REST API for search, repository detail and user detail (public content)

    • All/one repository check can be run as procedure (added to cron or runned at start of the application)

  • Documentation will be provided (Sphinx, readthedocs)

  • Everything what can be will be tested (pytest, Travis CI, coverage)

Ideas for extensions

  • repocribro-file

    • Read file info and store it in database for repository

  • repocribro-test

    • Run test/other script on repository contents and show evaluation on repository page

    • repocribro-test-docker

      • Allow to run tests inside Docker (or other container) with restrictions so hosting system cannot be harmed

  • repocribro-badge

    • Add functionality to generate badge for repository (like shields.io)

  • repocribro-<event>

    • Adding some actions for more webhooks (issues, milestones, statuses, …)

  • repocribro-gitlab, repocribro-bitbucket, …

  • repocribro-<org>

    • Domain/organization-specific functionality

License

This project is licensed under the MIT License - see the LICENSE file for more details.

Metadata

Release files for repocribro 0.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for repocribro 0.1.2
File Size Uploaded Provenance
repocribro-0.1.2.tar.gz 293.8 kB Without provenance Details

Release files / repocribro-0.1.2.tar.gz

Download URL repocribro-0.1.2.tar.gz
Size 293.8 kB
Tags Source
SHA-256 checksum
How to use checksums
826e8c0b2910f59f7f8555742d62532dede460803eca5f4a63707ba422c753c4
BLAKE2b-256 checksum
How to use checksums
fe608eb1a753ae71906d370f40bc4996299854238ee9c6a7233d72cb0dc48ccc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Security for repocribro 0.1.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page