ISPC-TSDW / Libroteka.app

1 stars 0 forks source link

¡Hola Bienvenido!

Tecnicatura Superior en Desarrollo web y Aplicaciones Digitales

Programación de Aplicaciones Móviles 1

IMPORTANTE

Al usar servicios gratuitos de Cloud Computing (Koyeb y Railway), estas instancias se configuraron para que cuando exista inactividad se SUSPENDEN. Es por ello que si no hay usuarios usando la app, la proxima interaccion (Login, Registro, etc) puede fallar. Basta de intentar nuevamente despues de unos segundos para solucionarlo.

Libroteka.app

Introduccion 📖:

En este proyecto, el objetivo es poder fomentar y desarrollar las habilidades y la experiencia de un desarrollador web, bajo el marco de metodología ágil - Scrum y además poder trabajar como equipo en una aplicación móvil (app mobile). Para lograrlo, estamos diseñando una aplicación en línea que permitirá a los usuarios buscar, filtrar y encontrar libros de su elección a través de búsquedas personalizadas. Este manual tiene como objetivo analizar y documentar las necesidades funcionales del sistema a desarrollar, identificando los requisitos y las necesidades actuales de los usuarios. Estableceremos prioridades para garantizar que el sistema final se ajuste a las necesidades del usuario y cumpla con los estándares deseados.

Objetivo de Libroteka 🎯

Libroteka tiene como propósito ofrecer a los usuarios una experiencia enriquecedora para encontrar libros según sus preferencias de autor, género o título. La aplicación mejora la experiencia de búsqueda y proporciona una plataforma que fomenta la lectura, facilitando la navegación a través de un catálogo de libros actualizado y variado. La idea principal de este proyecto ha sido desarrollar un sistema eficiente, seguro y escalable, con la experiencia del usuario como eje central.

Proposito del Proyecto 📝

1. Facilitar el acceso a la lectura: Permitir que los usuarios accedan a una amplia variedad de títulos y géneros desde cualquier lugar, eliminando la necesidad de desplazarse esencialmente a una librería.

2. Ampliar la selección: Aprovechar el espacio virtual ilimitado para ofrecer una gama más amplia de libros, incluyendo títulos menos conocidos o difíciles de encontrar en tiendas locales, ampliando así las opciones de lectura.

3. Comodidad: Ofrecer la ventaja de acceder al catálogo en línea en cualquier momento y desde cualquier lugar, especialmente beneficio para aquellos con horarios ocupados o acceso limitado a tiendas físicas.

4. Facilitar la búsqueda y descubrimiento: Proporcionar herramientas de búsqueda para ayudar a los usuarios a descubrir nuevos libros basados en sus intereses y preferencias anteriores.

5. Promoción de la lectura: Fomentar la cultura de la lectura y crear una comunidad de lectores a través de un entorno en línea donde se discuten y recomiendan libros.

6. Servicio al cliente: Brindar soporte al cliente, resolver dudas sobre la plataforma y proporcionar información sobre los productos para mejorar la experiencia del usuario.

7. Internacionalización: Llegar a audiencias globales, proporcionando acceso a títulos que de otra manera serían inaccesibles para muchas personas.

Características Principales ✨

  1. Navegación Intuitiva 😎: La aplicación cuenta con una navegación bien definida entre diferentes Activities, permitiendo a los usuarios desplazarse de manera fluida entre pantallas. Implementación de herencia entre pantallas, asegurando que los usuarios puedan regresar fácilmente a la pantalla anterior.

  2. Gestión CRUD 👨🏽‍💻: Los usuarios pueden gestionar su información personal, productos, favoritos, reseñas, entre otros, utilizando un sistema CRUD que está sincronizado con el backend en Django. La persistencia de datos se asegura a través de la integración con las APIs del backend.

  3. Actividad Multimedia 🎞: La aplicación incluye una Activity que presenta recursos multimedia (imágenes), mejorando la interacción del usuario.

  4. Seguridad 🚨 🏴‍☠️: La aplicación implementa un sistema de autenticación basado en JWT (JSON Web Tokens) para asegurar que solo los usuarios autorizados puedan acceder a la plataforma. El uso de JWT se justifica por su seguridad en la transmisión de datos y su compatibilidad con las tecnologías móviles.

DESARROLLADORES :

Tecnologias


Dependencies:

Puntos claves:

Branch Naming Convention
Master "main"
Release "release"
Desarrollo "develop"
Rama Integrantes "iniciales-feature"

BACKEND

GIF - ## Credenciales Django Admin - user: ####### (comunicarse con el admin) - password: ####### (comunicarse con el admin) ## Librerías - Mobile: Java, Android Studio - BackEnd: django, djangorestframework, django-cors-headers, Pillow, jsonfield, mysqlclient ## Correr localmente Clone the project ```bash git clone https://github.com/ISPC-TSDW/Libroteka.app.git ``` Go to the project directory ```bash cd Backend/Libroteka ``` Activate Virtual environment ```bash # Windows users: create your branch, delete the linux folder '.backendLibroteka-env' as it has linux/mac configuration and you must create a virtual environment for Windows to install the requirements, remember not to include '.backendLibroteka-env' in your commits. 1. python -m venv .backendLibroteka-env 2. .backendLibroteka-env\Scripts\activate # Linux users source backendLibroteka-env/bin/activate ``` Install Libraries ```bash pip install -r requirements.txt ``` ## If you made changes to models.py: ```bash python manage.py makemigrations ``` ## Executes the necessary operations to synchronize the models with the database tables, such as creating new tables, modifying columns, deleting tables, etc. ```bash python manage.py migrate ``` Start the server ```bash python manage.py runserver ```