Aplicación móvil multiplataforma


$500.00

Front-end Tipo de aplicación: Multi-plataforma Android & IoS (1 sola aplicación) Lenguaje: Dart/Flutter y se escucha propuesta multiplataforma Código limpio y comentado: Nada de copiar y pegar funcionalidades, obligatorio utilizar patrones de diseño software. Diseño responsive: Se debe poder adaptar a los distintos tamaños de pantalla móvil. Requisitos de seguridad: No se pueden usar librerías desactualizadas, con vulnerabilidades críticas o altas conocidas. Antes de usar cualquier librería o servicio de terceros se debe comentar conmigo para evaluarla y aceptar su uso. Número de páginas o ventanas: Ver diseño. Yo proporciono: El diseño. Repositorio donde se trabajará. No se puede mantener el código fuera de este. El programador proporcionará: Aplicación funcional y lista para ser usada. Listado de librerías de terceros usadas en el readme del proyecto. Back-end Tipo de aplicación: API Restful Lenguaje: Elegido por el programador pero bien justificada la elección en base a criterios técnicos, viabilidad futura y mantenimiento. Código limpio y comentado: Nada de copiar y pegar funcionalidades. Obligatorio utilizar patrones de diseño software como singleton, DAO, factoría, etc. Según el caso a aplicar. Requisitos de seguridad: No se pueden usar librerías desactualizadas, con vulnerabilidades críticas o altas conocidas. Que sean estándar en la industria y lleven tiempo en el mercado. Antes de usar cualquier librería o servicio de terceros se debe comentar conmigo para evaluarla y aceptar su uso. Sanitización de entradas (sql-injection, xss y similares) encriptación/hasheado de datos sensibles (contraseñas, documentos de identificación, etc.) Cualquier otro patrón de desarrollo seguro que se considere. Contenerización de la aplicación (kubernetes/docker). Yo proporciono: Plantilla de API en caso de .Net Core 7. Modelos básicos creados adaptados a EntityFramework y funcionalidades requeridas, se puede ir adaptando para añadir funcionalidades y requerimientos que en principio no estaban planteadas. Repositorio donde se trabajará. No se puede mantener el código fuera de este. Entorno docker de desarrollo. El programador proporcionará: Aplicación funcional y lista para ser usada. Listado de librerías de terceros usadas en el readme del proyecto. BBDD Tipo: Relacional Motor de BBDD: MySQL CEPH: para almacenamiento de objetos (imágenes) Proporciono diagrama de clases inicial, se puede modificar para añadir funcionalidades que no estaba contempladas al inicio Requisitos funcionales importante: paso todo el listado de requisitos pero en esta primera fase no se va a implementar ningún tipo de requisito de pago, ni de publicidad en la app, etc. VAMOS A partir con lo básico para testear. Confirmame que has leído esto en la propuesto o haré un descarte automático. requisitos de idioma: se dará preferencia a gente que hable español. presupuesto para esta fase es el de la oferta y si todo va bien, se seguirá con el resto de requisitos tras haber probado que la app funcione bien. Debe tener: Integración con inicio de sesión de Google, Apple y Facebook y mediante correo electrónico y contraseña (En futuro se añadirá Passkey, entre otros). Funcionalidad de recuperar contraseña. Doble factor de autenticación con OTP. Soporte multilenguaje: Español, inglés, italiano, portugués y francés. Inicialmente solo se lanzará para España. Creación de perfiles: Entrenador, deportista, clubes (puedes tener n perfiles de cada uno según el plan de facturación). Solamente un perfil de profesor por deporte. Verificación de email. Badge en perfil que aparezca email verificado. Funcionalidades como profesor: Crear espacios de clases para el deporte del que son profesor. Aceptar reservas de jugadores para la clase. Cancelar reservar de jugadores para la clase con un listado de motivos. Reservar instalaciones de clubes. Retirar el dinero. Valorar instalaciones y jugadores Funcionalidades como club: Registrar instalaciones: Pistas de fútbol, padel, etc. Registrar servicios en el club: Aseos, vestuarios, cafetería, restaurante. Crear espacios de clases para un deporte (idem profesor). Aceptar reservas de jugadores para la clase (idem profesor). Cancelar reservar de jugadores para la clase con un listado de motivos (idem profesor). Crear espacios de reserva de horas para pistas e instalaciones que se crean por duración. Es decir, crear espacios desde la hora hh:mm hasta la hora hh:mm en intervalos de x minutos. Marcar espacios como reservados, es decir, si alguien les reserva por teléfono, que puedan marcar ese slot de tiempo como reservado. Configurar recordatorios de reserva de pista para que avise al usuario que ha reservado la pista que tiene una reserva en la fecha y hora, ubicación, etc. Funcionalidad de retirar dinero (idem profesor). Funcionalidades como jugador: Reservar clases de profesores/clubes. Reservar instalaciones de clubes. Valorar clubes y profesores. Cancelar reservas de clase. Si se hace 24 horas antes del inicio de la clase se le cobrará un 50% de la clase y se le abonará al profesor ese 50%. Las comisiones y pagos fijos no se devuelven. Marcar profesor como favorito. Marcar club como favorito. Datos a pedir por perfil de usuario: Datos generales: Ver diagrama de clases Datos a pedir por cada club: Ver diagrama de clases Datos a pedir por cada perfil de entrenador: Ver diagrama de clases Datos a pedir por cada perfil de jugador: Ver diagrama de clases Datos a pedir para crear clases como entrenador: Ver diagrama de clases, y añadir clubes cercanos a tu Código Postal para reservar instalaciones. Datos a pedir para crear instalaciones: Ver diagrama de clases Datos a pedir para crear servicios: Ver diagrama de clases Valoraciones: Una vez ha finalizado una clase, se puede valorar al alumno como profesor y al profesor como alumno. Una vez finalizada la reserva, se puede valorar la instalación. Chat entre usuarios. Se puede crear un chat cuando vayas a reservar la clase o la instalación. Cada chat se guarda en el usuario y todos los chats son accesibles desde la pestaña de chat, pero se marcará desde que perfil lo has creado. El chat no puede enviar números de teléfono ni emails, enlaces ni contenido multimedia. Solamente texto y emoticonos. Calendario. Tendrás un calendario con opciones de filtro por perfil de profesor y perfil de alumno donde veas tus clases reservadas y las reservas que te hayan hecho como profesor. Recordatorios: Recordatorios de clases y reservas de instalaciones 24 horas antes de la reserva o a configurable por el usuario. Facturación: Se debe cobrar el coste de la reserva que van a hacer más un coste fijo de gestión (1€ y un x% del coste de la reserva según plan de facturación) y se aplican al perfil del usuario. Además, los clubes/profesores pueden ofrecer mensualidades. Planes de pago: Premium: 20€/mes - comisiones de 0,5% + clubes/perfil de profesor ilimitados + clases ilimitadas al mes como profesor/club. Gold: 10€/mes - comisiones de 1,25% + clubes/perfil de profesor máximo 8 + 40 clases al mes como profesor/club (entre todos los perfiles) Silver: 5€/mes - comisiones de 2% + clubes/perfil de profesor máximo 4 + 30 clases al mes como profesor/club (entre todos los perfiles) Standard: 0€/mes - comisiones 3% + clubes/perfil de profesor máximo 2 + 20 clases al mes como profesor/club (entre todos los perfiles) Cupones promocionales de descuento de x% durante x meses(solamente puedo crearlos yo directamente desde la bbdd o una llamada rest con el usuario administrador), pero no desde la aplicación. Funcionalidad de cambiar de plan y cancelar reserva (aplica a la siguiente facturación, no modifica la última factura emitida). Pagos/checkout: Tarjeta bancaria con stripe. Páginas para política de privacidad y aviso legal. Para perfiles de profesor y club. Funcionalidad de emitir facturas para los usuarios (que incluyan los impuestos según el país, aunque inicialmente solo España - 21% IVA). Notificaciones: Reservas, cancelaciones, pagos, opiniones recibidas (visualización y notificación en planes de pago), mensajes, etc. Debería tener: Capacidad de crear códigos promocionales en clubes y profesores para ofrecer descuentos según distintos criterios (funcionalidad de plan de pago o pago separado). Capacidad de promocionar clubes o profesores en las búsquedas (funcionalidad de plan de pago o pago separado). Podría tener: Panel de administrador para ver usuarios, reservas, clases creadas, etc. (Funcionalidad de plan de pago o pago separado). Me gustaría que tuviera: Animaciones. No debe tener: Tablas de MySQL sin claves foráneas correspondientes en las relaciones. Imágenes directamente almacenadas en MySQL. Funciones replicadas por el código o malas praxis de programación. Entradas de datos no sanitizadas. Datos sensibles sin encriptar. No se pueden superar los límites de tu plan de usuario. NOTE: Si falta alguna funcionalidad, pregunta sin reparo. CAMBIOS: Si se requiere cambiar algo o se necesita confirmación, preguntar si reparo.Category: Design & MultimediaSubcategory: OtherProject size: MediumIs this a project or a position?: ProjectRequired availability: As needed

Keyword: Docker

Price: $500.0

Secondary Price: $1000.0

MySQL Dart Flutter

 

Desenvolvimento de Plataforma de Automação para Atendimento via Wha...

Resumo do Projeto Buscando um desenvolvedor para criar uma plataforma SaaS de automação de atendimento via WhatsApp , voltada para profissionais da área da saúde, beleza e bem-estar. O objetivo é desenvolver um sistema simples, intuitivo e altamente funcional , que supe...

View Job
Programador Laravel, typescript, docker y mysql para el backend. So...

Estamos contratando un programador con. Experiencia. Para trabajo fijo part time. Estará a cargo de mejoras y mantenimiento de nuevo software que lanzamos al mercado.Category: Design & MultimediaSubcategory: OtherIs this a project or a position?: ProjectRequired ava...

View Job
Especialista em Nuvem Privada – Integração Aws e Servidor Local

Estamos buscando um profissional experiente para implementar uma infraestrutura de nuvem privada que integre AWS com nosso servidor local. O objetivo é criar um ambiente híbrido seguro, escalável e otimizado para desempenho.

View Job