Code Monkey home page Code Monkey logo

pepy's Introduction

pepy-logo

PePy

๐Ÿ“œ About

pepy.tech is a site which aims to show statistics about Python packages.

This is the repository for the backend service, if you want to check the frontend check this repo https://github.com/psincraian/pepy-front

๐Ÿ’– Sponsors

We can keep alive the website thanks to you and also thanks to the following sponsors.

DigitalOcean Referral Badge

Samuel Colvin

โš’๏ธ Start contributing

I wanted to make the setup of the environment as easy as possible. To start the environment you need the following prerequisites:

Prerequisites

  • bash (+4.3)
  • docker (+17.05)
  • docker-compose (+1.16.1)
  • docker-py (+2.2.1)
  • ansible (+2.3)

Start environment

You only (fingers crossed) need to execute the following to start the environment:

make start-containers

Architecture and patterns

Principally I used some DDD concepts (like value objects, entities, and so on) and also CQS whose objective is to separate commands from queries.

The structure of the code is the following:

  • pepy/application: here is where all the commands and the queries are located.
  • pepy/domain: domain objects like entities, exceptions, and value objects.
  • pepy/infrastructure: infrastructure components like the implementation of the repository class like DB or BigQuery, the Flask web application, the container, and so on.
    • pepy/infrastructure/cli: the command line programs.
    • pepy/infrastructure/container: config files and the dependency injection manager.
    • pepy/infrastructure/api: the api endpoints controller.

FAQ

Where the downloads come from?

The data is retrieved from the official BigQuery repository: https://packaging.python.org/guides/analyzing-pypi-package-downloads/

When the data is updated?

There is a cron that runs every day at 5 pm UTC that retrieves all the new downloads from the previous day.

๐Ÿšฉ License

The code is available under the MIT license.

pepy's People

Contributors

psincraian avatar dependabot[bot] avatar dependabot-preview[bot] avatar dependabot-support avatar hugovk avatar github-actions[bot] avatar gitbib avatar miweiss avatar nidhaloff avatar oliver-zehentleitner avatar peterdemin avatar mightbesimon avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.