Monthly-App-Challenge-2022

Retos mensuales de la comunidad MoureDev para crear pequeñas aplicaciones en base a requisitos para añadir a tu portafolio.

APACHE-2.0 License

Stars
880

Retos de programacin mensuales 2022

Proyecto de retos de creacin mensual de aplicaciones de la comunidad MoureDev en base a requisitos.

Todos nuestros retos en retosdeprogramacion.com/mensuales2022

Tambin existen repositorios en los que se publicarn semanalmente pequeos retos de cdigo para mejorar nuestra lgica de programacin.

  • Cada mes se presentar un nuevo reto en directo en Twitch y se publicar en retosdeprogramacion.com y GitHub.
  • Lo resolvers tu propio repositorio de GitHub.
  • Una vez lo resuelvas, debers hacer una PULL REQUEST a este repositorio indicando la url de tu repositorio de resolucin.
  • Pasado el mes del reto, haremos el directo en Twitch revisando los proyectos presentados por la comunidad.
  • Tod@s los que resuelvan un reto, participarn en el sorteo de 100 cada mes en material formativo a tu eleccin.

Vdeo explicacin retos

El proyecto

La idea principal es utilizar este proyecto para publicar retos de creacin de pequeas Apps y soluciones en diferentes tecnologas (principalmente iOS y Android, aunque si quieres puedes hacerlo via mediante web). Es una manera para intentar "forzarnos" a practicar desarrollo de aplicaciones en base a requisitos y de forma colaborativa dentro de la comunidad.

Listado de retos

Enero: 03/01/22

CONECTA 4: Crea el juego conecta cuatro. Tienes un ejemplo parecido aqu.

Requisitos:

  • Tablero de 7x6 (7 en el eje "x" y 6 en el "y").
  • Fichas Rojas y Amarillas. La primera partida la comienza siempre la Roja (la segunda la Amarilla, la tercera la Roja...).
  • No hay que implementar una funcionalidad que te permita jugar contra la App. Se asume que jugarn dos personas reales alternndose.
  • Al seleccionar la columna se coloca la ficha en la parte inferior.
  • Guardar el nmero partidas ganadas de cada equipo mientras la App no se finaliza.
  • Dos botones para reiniciar la partida en marcha y para resetear el contador de victorias y derrotas.
  • Puedes aadirle todas las funcionalidades extra que consideres.

Soluciones: ENLACES A LOS REPOSITORIOS

Febrero: 03/02/22

LA ENCICLOPEDIA STAR WARS: Crea una app que sirva para listar los personajes de Star Wars y que te permita buscarlos por nombre.

Requisitos:

  • Usa el API https://swapi.dev/
  • El diseo es de libre eleccin.
  • Debe mostrar un listado y un detalle de cada personaje.
  • El listado tendr que estar paginado.
  • El listado poseer un filtro de bsqueda.
  • Al seleccionar un personaje del listado, el detalle mostrar los datos que consideres oportunos.
  • OPCIONAL: Detalle de pelculas, vehculos, naves, especies...
  • OPCIONAL: Foto de cada personaje.

Soluciones: ENLACES A LOS REPOSITORIOS

Marzo: 03/03/22

CUESTIONARIO CONTRARRELOJ: Crea una "Quiz app" contrareloj con ranking.

Requisitos:

  • El diseo es de libre eleccin.
  • La temtica de las preguntas del cuestionario ser de libre eleccin. Puede estar bien seguir un mismo tema (por ejemplo, preguntas sobre el universo "Harry Potter").
  • En la pantalla inicial podrs comenzar a jugar o consultar el ranking de puntuaciones.
  • El juego consistir en 10 preguntas aleatorias con 3 respuestas y slo una correcta. Recomendable crear ms de 10 preguntas para que no siempre salgan las mismas. Cada vez que se responde a una pregunta, se pasar a la siguiente.
  • Disponemos de 30 segundos para responder cada pregunta. El contador deber aparecer en la pantalla, y si llega a 0 se tomar como respuesta incorrecta y se pasar a la siguiente pregunta.
  • Al marcar una respuesta o finalizar el tiempo, se mostrar si se ha acertado o no la pregunta, dando feedback sobre cul sera la respuesta correcta y navegando al cabo de un par de segundos a la siguiente pantalla.
  • Sistema de puntuacin:
    • Contador a 0 o respuesta incorrecta = 0 puntos.
    • Contador mayor 0 y respuesta correcta = [segundos restantes] puntos. Ej: Si quedaban 9 segundos para finalizar la cuenta atrs y se acierta la pregunta, se asignan 9 puntos.
  • Una vez finalizada la pregunta nmero 10 se mostrar en una nueva pantalla la puntuacin final y se deber introducir un nombre para guardarla de forma persistente (aunque cerremos la app). Hecho estos se mostrar la pantalla de ranking.
  • La pantalla de ranking muestra ordenados de mayor a menor los 10 mejores resultados y el nombre guardado. Desde esta pantalla siempre se podr navegar a la pantalla inicial.

Soluciones: ENLACES A LOS REPOSITORIOS

Abril: 31/03/22

**En primer lugar, ya que en Abril es mi cumpleaos, me gustara celebrarlo sorteando 100 en material formativo a tu eleccin entre todas las Apps presentadas (y funcionales) durante el transcurso del reto **

POMODORO: Crea un "Pomodoro" configurable que guarde todo tu historial de tareas.

La tcnica "pomodoro" es un mtodo para mejorar la administracin del tiempo dedicado a una actividad e incrementar tu productividad.

NOTA: Si se trata de una App Android o Web, agradecera crear un readme con un enlace de descarga o ejecucin de la app. Gracias!

Requisitos:

  • Poseer un campo de texto para introducir el nombre de la tarea que se est llevando a cabo. Cada vez que se cambia la tarea, el pomodoro comienza de cero. Slo se puede cambiar la tarea si el pomodoro se detiene completamente (en caso contrario no ser editable). El pomodoro no puede iniciarse si no se ha definido una tarea.
  • Deber implementar botones para iniciar el pomodoro, pausarlo, pararlo y pasar al siguiente ciclo del pomodoro.
  • El pomodoro medir intervalos formados por 4 bloques de trabajo de 25 minutos con 5 minutos de descanso entre ellos. Cada tres bloques de descanso de 5 minutos, el cuarto bloque ser de 15 minutos o 30 minutos (tambin configurable y guardando la seleccin de forma persistente).
  • Si la aplicacin est en segundo plano deber seguir funcionando. O por lo menos seguir teniendo en cuenta el estado actual del pomodoro.
  • Cada vez que acaba un bloque (de trabajo o de descanso) se notificar al usuario con una alerta (si est en primer plano e incluso con sonido) o con una notificacin (si est en segundo plano) que ha finalizado ese bloque de tiempo y ha comenzado el siguiente.
  • Se guardar un historial agrupado por da con fecha de inicio y fin del bloque/s de trabajo junto con el texto de la tarea realizada. Tiempo total contando descanso y trabajo. Se guarda cada vez que se detiente el pomodoro. El historial puede estar en una patalla individual. Se mostar primero el registro ms reciente.
  • Esta es un tipo de aplicacin con la que podemos practicar diseos de UI ms elaborados. Intenta hacerla bonita y con animaciones!

Soluciones: ENLACES A LOS REPOSITORIOS

Mayo: 03/05/22

RVIEWER se une a los retos mensuales de la comunidad para dar feedback profesional de cada reto y as mejorar nuestras habilidades.

MEMORY GAME: Crea un "memograma" o "juego de memoria" basado en parejas de cartas.

NOTA: Para la revisin en directo desde Twitch se agradece crear un readme con un enlace de descarga o ejecucin de la app. Gracias!

Quin no ha jugado alguna vez a las parejas de cartas? Desde bien pequeos hasta alguna noche de fiesta, cierto? Bien, para este reto debers elegir tu temtica favorita y recrear el famoso juego. Sorprndenos!

En qu consiste el reto?

Los requisitos del juego son bastante sencillos. En primer lugar, tienes que elegir la temtica que quieras, como Pokmon, Star Wars o incluso Peppa Pig.

La dinmica del juego consistir en presentar un tablero con una serie de cartas boca abajo y revelar todas las parejas antes de que se acabe el tiempo. El usuario tocar cada carta para darle la vuelta y, si dos de ellas coinciden al descubrirlas, se pondrn boca arriba. En caso contrario, se volvern a ocultar.

El juego se gana si se descubren todas las parejas dentro del lmite de tiempo.

Te animas a resolver este desafo? Aqu tienes todos los detalles.

Soluciones: ENLACES A LOS REPOSITORIOS

Junio: 31/05/22

RVIEWER apoya los retos mensuales de la comunidad dando feedback profesional de cada reto para as mejorar nuestras habilidades. Tambin, por presentar la prueba durante el mes, entrars en el sorteo de 100 en material formativo.

CLONANDO TWITTER: Replica la UI del feed de Twitter en tu propia app.

NOTA: Para la revisin en directo desde Twitch se agradece crear un readme con un enlace de descarga o ejecucin de la app. Gracias!

El objetivo desde este reto es que seas capaz de replicar la capa visual del feed principal de Tweets en tu propia app. Te animas a clonar la UI de Twitter?

En qu consiste el reto?

Puedes clonar la versin web, iOS o Android de Twitter.

Cuanto ms similar al diseo original, mejor, aunque no es necesario representar todas funcionalidades actuales de Twitter (en las instrucciones completas se indican los requisitos de forma detallada). El objetivo del reto se centra principalmente en tener la capacidad de saber crear UI en base a un diseo ya existente.

Punto extra! Si quieres desafiarte un poco ms, intenta mejorar la aplicacin de Twitter.

Te animas a resolver este desafo? Aqu tienes todos los detalles.

Soluciones: ENLACES A LOS REPOSITORIOS

Julio: 28/06/22

RVIEWER apoya los retos mensuales de la comunidad dando feedback profesional de cada reto para as mejorar nuestras habilidades. Tambin, por presentar la prueba durante el mes, entrars en el sorteo de 100 en material formativo.

LECTOR RSS: Crea un agregador de noticias enfocado en un nico nicho de mercado.

NOTA: Para la revisin en directo desde Twitch se agradece crear un readme con un enlace de descarga, url de la web desplegada o vdeo/capturas con la ejecucin de la app. Gracias!

Eres capaz de construir el mejor agregador de noticias de un sector?

En qu consiste el reto?

T decides el nicho que ms te guste. Por ejemplo tecnologa, desarrollo de software, msica, comida, deporte...

Crears una pantalla principal y otras para detalles, marcadores y configuracin.

Punto extra! Aqu mandas t. Es posible que puedas implementar funcionalidades exclusivas que tengan especial sentido en el nicho que hayas seleccionado... Sorprndenos!

Fecha de entrega estimada: 29/07/22

De esta manera podrs recibir feedback tcnico sobre tu prueba y asistir a su revisin en directo desde Twitch el da de la publicacin del prximo reto mensual.

Te animas a resolver este desafo? Aqu tienes todos los detalles.

Soluciones: ENLACES A LOS REPOSITORIOS

Agosto: 02/08/22

RVIEWER apoya los retos mensuales de la comunidad dando feedback profesional de cada reto para as mejorar nuestras habilidades. Tambin, por presentar la prueba durante el mes, entrars en el sorteo de 100 en material formativo.

FIREBASE CHAT: Crea una aplicacin de chat usando Firebase como tu backend.

NOTA: Para la revisin en directo desde Twitch se agradece crear un readme con un enlace de descarga, url de la web desplegada o vdeo/capturas con la ejecucin de la app. Gracias!

Nunca te has preguntado cmo funciona un chat? Pues bien, vamos a crear una aplicacin que utilice varios de los servicios de Firebase para login y base de datos en tiempo real.

En qu consiste el reto?

La aplicacin tendr una pantalla donde tendrs que hacer login con tu cuenta de Google.

Una vez realizado, acceders a una sala de chat donde se visualizarn los mensajes de todos los usuarios y podrs interactuar con ellos.

Punto extra! Eres capaz de enviar notificaciones push a otro dispositivo cada vez que te escriben? E imgenes?

Fecha de entrega estimada: 27/08/22

De esta manera podrs recibir feedback tcnico sobre tu prueba y asistir a su revisin en directo desde Twitch el da de la publicacin del prximo reto mensual.

Te animas a resolver este desafo? Aqu tienes todos los detalles.

Soluciones: ENLACES A LOS REPOSITORIOS

Septiembre: 30/08/22

El 13 de Septiembre celebramos el "Da de la Programacin". Un da para compartir y pasar en comunidad.

**HACKATHON DA DE LA PROGRAMACIN: Este es un mes muy especial, celebramos el "Da de la Programacin"

Fecha de entrega Hackathon: hasta el 11/09/22

Esta es la fecha de entrega lmite para poder participar en la hackathon.

Fecha de entrega reto mensual: 27/09/22

De esta manera podrs recibir feedback tcnico sobre tu prueba y asistir a su revisin en directo desde Twitch el da de la publicacin del prximo reto mensual.

Te animas a resolver este desafo? Aqu tienes todos los detalles.

Soluciones: ENLACES A LOS REPOSITORIOS

Octubre: 29/09/22

RVIEWER apoya los retos mensuales de la comunidad dando feedback profesional de cada reto para as mejorar nuestras habilidades. Tambin, por presentar la prueba durante el mes, entrars en el sorteo de 100 en material formativo.

CONVERSOR DE UNIDADES: Crea una applicacin para encontrar la equivalencia de un valor en diferentes unidades de medida.

NOTA: Para la revisin en directo desde Twitch se agradece crear un readme con un enlace de descarga del ejecutable, url de la web desplegada o vdeo/capturas con la ejecucin de la app. Gracias!

Has probado alguna vez crear tu propio conversor de unidades? S, una app con la que puedas transformar unidades de manera instantnea. Peso, temperatura, tiempo, longitud, potencia, monetarias... Y muchsimas ms!

En qu consiste el reto?

Si tu applicacin es capaz de transformar muchos tipos de unidades, debe poseer una pantalla de seleccin y una de detalle con el conversor.

Si decides que tu aplicacin nicamente soporte una familia de unidades, puede estar todo en una nica pantalla.

Punto extra! Te atreves a utilizar otro tipo de unidades de medicin menos comunes?

Fecha de entrega estimada: 24/08/22

De esta manera podrs recibir feedback tcnico sobre tu prueba y asistir a su revisin en directo desde Twitch el da de la publicacin del prximo reto mensual.

Te animas a resolver este desafo? Aqu tienes todos los detalles.

Soluciones: ENLACES A LOS REPOSITORIOS

Noviembre: 26/10/22

RVIEWER apoya los retos mensuales de la comunidad dando feedback profesional de cada reto para as mejorar nuestras habilidades. Tambin, por presentar la prueba durante el mes, entrars en el sorteo de 100 en material formativo.

BUON APPETITO: Existen ciertos proyectos de software muy habituales. Las tiendas online son uno de ellos. Crea una aplicacin que sea capaz de gestionar el pedido en nuestra pizzera perfecta.

NOTA: Para la revisin en directo desde Twitch se agradece crear un readme con un enlace de descarga del ejecutable, url de la web desplegada o vdeo/capturas con la ejecucin de la app. Gracias!

Pero, por qu es perfecta? Muy fcil, no tienes que registrarte, una pizza puede estar compuesta hasta por 4 tipos, podrs eliminar ingredientes y conoceremos "un truco" para no tener que pagarlas.

En qu consiste el reto?

Al abrir la aplicacin se nos presentar el listado de pizzas del restaurante.

Podrs consultar el detalle de la pizza para editarla y acceder al carrito de la compra para finalizar el pedido.

Punto extra! Te atreves a solicitar los datos de envo o a aadir algn mtodo de pago?

Fecha de entrega estimada: 27/11/22

De esta manera podrs recibir feedback tcnico sobre tu prueba y asistir a su revisin en directo desde Twitch el da de la publicacin del prximo reto mensual.

Te animas a resolver este desafo? Aqu tienes todos los detalles.

Soluciones: ENLACES A LOS REPOSITORIOS

Diciembre: 30/11/22

LA DEVSTORE: Un lugar para comprar ropa y complementos para developers... Genialidad o locura?

Crea una web o app que funcione como un sitio donde encontrar aquellos productos que crees que todo developer debera conocer. En este Tweet te dejo agunas ideas divertidas aportadas por la comunidad.

NOTA: Para la revisin en directo desde Twitch se agradece crear un readme en tu repositorio con un enlace de descarga del ejecutable, url de la web desplegada o vdeo/capturas con la ejecucin de la app. Gracias!

En qu consiste el reto?

Debers crear una tienda online pero sin tienda... Cmo? Tu web o app puede servir para enlazar a los productos que venden tiendas online reales (Amazon, por ejemplo) y as utilizar enlaces de referidos que te aporten ingresos.

La tienda deber poseer una seccin de productos destacados y diferentes filtros para agrupar por categora. Los productos son de tu total eleccin, y cada uno debe tener foto (o ms de una) y descripcin (e informacin extra si as lo quieres).

Punto extra! Es el ltimo reto del ao... Quieres formar un equipo de hasta 3 personas (tienen que existir commits de 3 personas) para llevar a cabo el reto? Este es el momento.

Entrega la resolucin del reto y participa en el sorteo de 100 en material formativo (300 mximo en caso de un equipo de 3 personas)

Te animas a resolver este desafo? Aqu tienes todos los detalles.

Soluciones: ENLACES A LOS REPOSITORIOS

Aqu finalizan los retos mensuales de 2022.

ACCEDE A LOS NUEVOS RETOS SEMANALES PARA 2023

Cmo puedo participar?

Puedes hacer libremente un fork del proyecto y trabajar con Git para compartir mediante una PULL REQUEST la url de resolucin de cada reto.

LOS RETOS DE MAYO Y NOVIEMBRE LOS PODRS RESOLVER DIRECTAMENTE DESDE RVIEWER.

  • Cada mes se publicar un nuevo reto de cdigo.
  • Los requisitos o enlace al enunciado del reto mensual se publicarn en este mismo README.
  • Se comunicar en el canal #reto-mensual de Discord, en directo desde Twitch y se subir el enunciado al repositorio.
  • Dispondrs de un mes para resolverlo, preguntar tus dudas, debatir y aportar ayuda en el canal #reto-mensual de Discord.
  • Al finalizar el mes del reto se subirn enlaces a repositorios de la comunidad con resolucines en diferentes tecnologas, se comentarn en directo desde Twitch (utilizando resoluciones de entre la gente que haya resuelto el reto) y se aadir el nuevo reto mensual.
  • Comenzar de nuevo el proceso.

Puedes apoyar mi trabajo haciendo " Star" en el repo o nominarme a "GitHub Star". Gracias!

Si quieres unirte a nuestra comunidad de desarrollo, aprender programacin de Apps, mejorar tus habilidades y ayudar a la continuidad del proyecto, puedes encontrarnos en:

https://mouredev.com Hola, mi nombre es Brais Moure.

Freelance full-stack iOS & Android engineer

Soy ingeniero de software desde hace ms de 12 aos. Desde hace 4 aos combino mi trabajo desarrollando Apps con creacin de contenido formativo sobre programacin y tecnologa en diferentes redes sociales como @mouredev.

En mi perfil de GitHub tienes ms informacin