Pescapp es una aplicación web construida con Streamlit que visualiza rutas de pesca en un mapa interactivo. La aplicación se conecta a Firebase para obtener y mostrar los datos de las rutas.
- Python 3.8+
- Streamlit
- Firebase Admin SDK
- Folium (para visualización de mapas)
- Pandas
Antes de ejecutar este proyecto, asegúrate de tener:
- Python 3.8 o superior instalado
- Un proyecto de Firebase configurado con Firestore
- Credenciales de Firebase (clave de cuenta de servicio)
- Clona el repositorio:
git clone https://github.com/yourusername/pescapp-streamlit.git
cd pescapp-streamlit- Crea y activa un entorno virtual:
# En Windows
python -m venv venv
.\venv\Scripts\activate
# En macOS/Linux
python3 -m venv venv
source venv/bin/activate- Instala las dependencias requeridas:
pip install -r requirements.txt- Configura las credenciales de Firebase:
- Crea un archivo
creds.jsonen el directorio raíz - Agrega las credenciales de tu cuenta de servicio de Firebase a este archivo
- Crea un archivo
Para ejecutar la aplicación localmente:
streamlit run app.pyLa aplicación estará disponible en http://localhost:8501
pescapp-streamlit/
├── app.py # Aplicación principal de Streamlit
├── requirements.txt # Dependencias de Python
├── .gitignore # Archivo de Git ignore
├── README.md # Documentación del proyecto
├── assets/ # Recursos estáticos
│ └── Elipse.png # Icono de marcador del mapa
├── utils/ # Funciones de utilidad
│ └── database.py # Operaciones con la base de datos Firebase
├── .streamlit/ # Configuración de Streamlit
│ └── secrets.toml # Configuración de secretos
└── creds.json # Credenciales de Firebase
- Visualización de rutas de pesca en un mapa interactivo
- Selección de diferentes viajes de pesca por fecha
- Visualización de puntos de ruta con marcadores personalizados
- Caminos de rutas mostrados como líneas conectadas
- Integración con Firebase para almacenamiento y recuperación de datos
La aplicación espera las siguientes colecciones en Firestore:
travels: Contiene documentos con información de los viajes- Campos:
travel_id,timestamp
- Campos:
coords: Contiene información de coordenadas para cada viaje- Campos:
travel_id,coords(conlatylon),timestamp
- Campos:
- Haz un fork del repositorio
- Crea tu rama de característica (
git checkout -b feature/AmazingFeature) - Realiza tus cambios (
git commit -m 'Add some AmazingFeature') - Sube la rama (
git push origin feature/AmazingFeature) - Abre un Pull Request
Este proyecto está licenciado bajo la Licencia MIT - consulta el archivo LICENSE para más detalles.
