Skip to content

DCC-CC4401/2025-2-CC4401-grupo-5

Repository files navigation

Proyecto "Pagina de Busqueda de Panoramas" (PanoramApp)


Información del Preliminar

Curso: Ingeniería de Software (CC4401)
Fecha de Entrega: 25 de noviembre de 2025

Integrantes:

  • Amaranta Godoy Torres
  • Constanza Triviño A.
  • Lucas Poblete
  • Nicolás Espinoza C.
  • Pablo Carrasco P.
  • Jorge Cummins

Cuerpo Docente:

  • Profesora de Cátedra: Jocelyn Simmonds
  • Profesor Auxiliar: Joel Riquelme P.

Misc. Entrega:
Repositorio que contiene el desarrollo del proyecto, en el contexto del proyecto final del curso y de la entrega de la Sprint 2.


Sobre el Proyecto

"PanoramApp" es una aplicación web diseñada para facilitar a los usuarios la búsqueda y creación/publicación de panoramas. En esta aplicación, un usuario registrado puede explorar panoramas compartidos por otros usuarios de la aplicación, haciendo más sencillo descubrir nuevas actividades y experiencias.

Descripción

"PanoramApp" es una plataforma colaborativa donde los usuarios pueden descubrir y compartir actividades recreativas en Santiago de Chile. El sistema permite filtrar panoramas según múltiples criterios como tipo de actividad, presupuesto, horarios, días de la semana y tipo de compañía, facilitando encontrar la actividad perfecta para cada ocasión.

Los usuarios pueden crear sus propios panoramas, valorar actividades mediante likes y explorar una base de datos en constante crecimiento con opciones para todos los gustos y presupuestos.

Tecnologías Utilizadas

Dependiendo del contexto, se utilizaron las siguientes tecnologías:

Backend

  • Lenguaje de programación python, framework Django.
  • Manipulación de datos1: sqlite3 y manipulación usando la librería pandas en python.

Frontend

  • Estético: HTML y CSS.
  • Interactividad: JavaScript (sin framework).

Instalación y Configuración

Requisitos Previos

  1. Python 3.7 o superior.
  2. Gestor de paquetes de python pip.

Instalacion2

  1. Clonear el repositorio y posicionarse en el repositorio:
git clone https://github.com/DCC-CC4401/2025-2-CC4401-grupo-5.git
cd 2025-2-CC4401-grupo-5/
  1. Crear un entorno virtual de python o utilizar uno ya existente a preferencia.

  2. Activar el entorno virtual e instalar dependencias ejecutando:

pip install -r requirements.txt
  1. Migrar/actualizar la base de datos:
python manage.py migrate

Ejecución del Proyecto

La ejecución de este proyecto actualmente solo se realiza de forma nativa; esto es, solo puede accederse desde el dispositivo donde se está ejecutando como localhost. Para ejecutar el proyecto:

  1. Con el entorno virtual activado, ejecutar:
python manage.py runserver
  1. Entrar al link local: http://127.0.0.1:8000/landing

Rutas/Vistas

El proyecto tiene las siguientes rutas y vistas:

  1. /landing: landing()
  2. /tareas: tareas()
  3. /resultados/: resultados_panoramas()
  4. /resultados-filtros: resultados_panoramas_filtrados()
  5. /register: register_user()
  6. /login: login_user()
  7. /logout: logout_user()

Donde se tienen además los siguientes endpoints:

  1. Ruta: /panorama/<id>/detalle/; Método: GET; Descripción: obtiene detalles de un panorama.
  2. Ruta: /panorama/<id>/like/; Método: POST; Descripción: incrementa likes de un panorama.

Estructura del Proyecto3

Se incorpora el siguiente árbol de directorios del proyecto4:

Proyecto/
.
├── app_final.png
├── base_de_datos
│   ├── base_de_datos.py
│   └── panoramas.csv
├── categorias
│   ├── __init__.py
│   ├── admin.py
│   ├── apps.py
│   ├── categorias.json
│   ├── models.py
│   ├── tests.py
│   └── views.py
├── db.sqlite3
├── diagrama_ER.png
├── dummy.py
├── error_sin_template.png
├── manage.py
├── media
│   ├── readme
│   │   └── ingreso_panorama.png
│   └── tareas
│       ├── bici_nocturna.jpg
│       ├── buinzoo.jpg
│       ├── cafe_providencia.webp
│       ├── cata_cervezas.jpg
│       ├── cineplanet.webp
│       ├── escape_room.jpg
│       ├── fantasilandia.webp
│       ├── happyland.jpg
│       ├── japimax.webp
│       ├── mercado_central.jpg
│       ├── mote.jpeg
│       ├── muro_boulder.jpg
│       ├── museo_de_bellas_artes.jpg
│       ├── parque_esculturas.jpeg
│       ├── planetario_usach.jpg
│       ├── pool.webp
│       ├── quebrada_macul.jpg
│       ├── santuario_natural.webp
│       ├── taller_ceramica.jpg
│       ├── teatro_mori.jpg
│       ├── tour_lastarria.jpg
│       └── volleyball_florida.png
├── README.md
├── requirements.txt
├── todoapp
│   ├── __init__.py
│   ├── admin.py
│   ├── apps.py
│   ├── models.py
│   ├── static
│   │   └── todoapp
│   │       ├── dark_mode.js
│   │       ├── pages
│   │       │   ├── landing.css
│   │       │   ├── login.css
│   │       │   ├── menu_index.css
│   │       │   ├── register_user.css
│   │       │   └── resultados.css
│   │       ├── panorama_detalle.js
│   │       └── panorama_likes.js
│   ├── templates
│   │   └── todoapp
│   │       ├── index.html
│   │       ├── landing.html
│   │       ├── login.html
│   │       ├── menu.html
│   │       ├── register_user.html
│   │       └── resultados.html
│   ├── urls.py
│   └── views.py
└── TODOproject
    ├── __init__.py
    ├── asgi.py
    ├── settings.py
    ├── urls.py
    └── wsgi.py

Footnotes

  1. Bases de datos.

  2. Esto considera que el usuario que quiere ejecutar/instalar el programa/página sabe manipular un entorno virtual de Python.

  3. Existen directorios cuyos nombres son variantes de "TODO"; la razón es que se usó la misma plantilla de la primera clase auxiliar. Esto no afecta en nada al funcionamiento del proyecto.

  4. El árbol incluye directorios usados; ignora aquellos generados por Django, como los cpython, además de los entornos virtuales.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •