Skip to content

nlp4se/MetaAppCollector-Backend

Repository files navigation

MetaAppCollector - Backend

MetaAppCollector és una eina open source per monitoritzar aplicacions mòbils agregant informació pública de diverses fonts com botigues d'apps i xarxes socials.

🧪 Desenvolupada amb Django, Celery, Redis i Docker. Pensada per a desenvolupadors, investigadors i equips de màrqueting que volen entendre millor la visibilitat de les seves apps.

License: MIT


🔧 Funcionalitats principals

  • 🔍 Recuperació de metadades i reviews d'aplicacions mòbils (Google Play, etc.)
  • 📊 Agregació de mètriques d'interacció i visibilitat
  • ⏱️ Polling periòdic configurable per recollida automàtica
  • 🧠 Arquitectura extensible amb adaptadors dinàmics
  • 🐇 Execució asíncrona de tasques amb Celery + Redis

🚀 Posada en marxa amb Docker

Assegura’t de tenir instal·lats:

1. Clona el projecte

git clone https://github.com/el-teu-usuari/metaappcollector-backend.git
cd metaappcollector-backend

2. Configura variables d'entorn

Crea un fitxer .env a l'arrel amb el següent contingut mínim:

DJANGO_SECRET_KEY=your-secret-key
DJANGO_DEBUG=True

3. Executa els serveis

docker compose up --build

Això iniciarà:

  • El servidor Django a http://localhost:8000
  • El worker de Celery
  • El Beat de Celery (scheduler)
  • Redis com a broker

🧪 Prova Celery

Obre una shell dins del contenidor web:

docker compose exec web python manage.py shell

I prova una tasca:

from polling.tasks import prueba_celery
prueba_celery.delay()

Pots veure els resultats al log del worker:

docker compose logs -f celery

🧱 Estructura del projecte

├── polling/             # Lògica de polling i tasques Celery
├── metric/              # Agregació de mètriques
├── review/              # Gestió de reviews
├── source/              # Fonts de dades integrades
├── app/                 # Aplicacions mòbils registrades
├── config/              # Configuració general de Django i Celery
├── docker-compose.yml   # Definició dels serveis

📚 Comandes útils

docker compose exec web python manage.py migrate     # Aplicar migracions
docker compose exec web python manage.py createsuperuser
docker compose exec web python manage.py shell        # Obrir shell

🤝 Contribució

Les contribucions són benvingudes! Si vols col·laborar:

  1. Fes un fork del repositori
  2. Crea una branca nova (git checkout -b feature/nou-adaptador)
  3. Fes els teus canvis i commiteja (git commit -am 'Afegit adaptador per X')
  4. Puja la branca (git push origin feature/nou-adaptador)
  5. Fes una pull request 🙌

Abans d’enviar, assegura’t de seguir l’estil de codi del projecte i escriure tests quan sigui necessari.

✉️ Contacte

Per dubtes tècnics o col·laboració, contacta amb el desenvolupador principal: 📧 anyer.moreno@estudiantat.upc.edu

📄 Llicència

This project is licensed under the terms of the GNU General Public License v3.0 – see the LICENSE file for details.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors