Que le pedirias a una web de wallpapers

willy_chaos

En el curro nos ha tocado pelearnos con django y me ha gustado bastante. En casa me he propuesto darle también personalmente un poco a django y se me ha ocurrido hacer como un "buscador" o mas bien "filtrador" de wallpapers.

Información técnica:
Framework Backend: Django3
Framework Frontend: Bootstrap4

Buscador/Filtrador:
Actualmente permite los siguientes parámetros:

  • tags: Permite indicar los tags por los que quieres buscar, internamente ejecuta una OR, vease busca cualquier imagen que tenga almenos uno de los tags.
    Ejemplo:
    tags=league_of_legends+tengen_toppa_gurren_lagann
    Mostraría aquellas imagenes que tuvieran el tag league_of_legends O tengen_toppa_gurren_lagann
  • tagsand: Al contrario que tags, solo mostrará aquellas imagenes que tengan los N parametros como minimo. Pueden tener mas pero han de tener todos los que se indican en el parametro.
    Ejemplo:
    ?tagsand=league_of_legends+luxanna_crownguard
    Mostraría aquellas imagenes que tuvieran el tag league_of_legends Y luxanna_crownguard
  • tags_exclude: Si queremos evitar un tag porque no queremos obtener imagenes que contengan ese tag, evitará mostrarlas.
    Ejemplo:
    ?tags_exclude=fiora+annie
    Mostraría todas las imagenes salvo las que tienen el tag fiora o el tag annie.
  • extensions: Si queremos tener solo imágenes jpg y png (evitando gif) podemos indicarle
    Ejemplo:
    ?extensions=png+jpg
  • orientation: Permite indicar si queremos que sean verticales o horizontales
    Ejemplo:
    ?orientation=horizontal
    Muestra aquellas imágenes que dispone de mas píxeles horizontales que verticales (se incluyen dentro aquellas donde los pixeles horizontales sean igual a los verticales)
    horizontal
    vertical
  • width_min: Permite indicar la anchura mínima
  • width_max: Permite indicar la anchura máxima
  • heigth_min: Permite indicar la altura mínima
  • heigth_max: Permite indicar la altura máxima

La idea con el tema de las resoluciones es que luego puedo hacer alias en plan FULLHD que se traduzca en 1920x1080 (+-5%) de variación.

  • rate: Existen bastantes wallpapers en konachan y yande.re subidos de tono, por defecto la web muestra aquellos "safe" aunque alguno esta en el limite , pero se puede activar que muestre safe + cuestionable o incluso todos. Actualmente los rates son iguales a los de konachan y yande.re. Ya veremos si cuando la suba a un vps le dejo el rate 3 o directamente separo la 1 y 2 en un site y en otro pongo la 1 + 2 + 3 como tiene konachan.
    1 = Safe
    2 = Cuestionable
    3 = Explicito
    
NSFW

Frontend:

  • Estructura
  • Buscador con filtro en menu lateral
  • Notificador para avisar / eliminar las duplicadas (dependiendo si eres admin -> realiza la accion directamente, si es usuario -> tengo que hacer la cola de notificaciones)
    NSFW

Para evitar carga y consumo de datos tontamente, en el listado se muestran los thumbnail y ademas se hace uso de lazy load para evitar que si no llegas al final de la página, las fotos que hay sin entrar dentro de la ventana visible del navegador no se carguen.

Backend:

  • El parser detecta aquellas imagenes con mismo hash y marca como duplicadas dejando solo 1 activa :white_check_mark:
  • Cola de notificaciones enviadas por usuarios (por ejemplo de imagen duplicada)

Datos:
Actualmente recopila datos de los siguientes sites

  • Konachan
  • Yande.re
1
DaRkViRuZ

para mi wallhaven es la web perfecta en cuanto a wallpapers, igual te puedes inspirar en algo de ahí

1 2 respuestas
Wasd

Tiene buena pinta.
Como mini-feature pero que considero importante, es que te detecte la resolución y la añada como filtro automaticamente.

1 2 respuestas
eondev

#3 Mejor que el filtro de resolución, la relación de aspecto y como mínimo la resolución de la pantalla

1 1 respuesta
willy_chaos

#2 le daré un vistazo a ver que encuentro que pueda serme util

#3 miro de integrarlo y que sea en la config del usuario si lo quiere activar.

#4 realmente ambas sirven, puesto que con la resolucion tengo la relacion y además te pueden interesar imagenes 16:9 pero que esten entre un width 1280 y 1920 por ejemplo para afinar más la busqueda. me la apunto.

1 respuesta
B

#5 Poder filtrar por imágenes "verticales", "horizontales" y "cuadradas".

¿Por qué "cuadradas"? Porque algunos dispositivos, como los iPad, requieren imágenes cuadradas para recortar lo mínimo posible al cambiar la orientación de la pantalla entre horizontal y vertical. De hecho, los fondos de pantalla que ya vienen en el sistema son cuadrados (cuando se extraen desde el firmware se obtienen imágenes cuadradas).

¿Por qué "verticales" u "horizontales"? Porque si buscas para un móvil, es más importante que sea vertical que el ratio de pantalla. Que te pierdas un trozo de imagen en una imagen vertical es tolerable, pero no así con una imagen horizontal.

También añadiría poder filtrar por formato (PNG, JPEG).

#2 No conocía http://wallhaven.cc y la verdad es que mola muchísimo, gracias.

Por ponerle pegas a http://wallhaven.cc, que lo mismo le ayudan a #1, es que las previsualizaciones en los resultados de búsqueda (y los tops y tal) siempre son en 16:9, así que si estás previsualizndo o buscando imágenes 9:16 (por ejemplo) vas a ver la imagen recortada de una manera que no permite apreciarla. Por lo tanto, lo ideal sería que en dichas previsualizaciones se mostrara la imagen completa, no un recorte.

Otra pega que le pongo a http://wallhaven.cc es que me molaría un botón para elegir filtrar por todos los tipos verticales, todos los tipos horizontales, o todos los tipos cuadrados de una sola vez. ¡Mola mil que puedas elegir varias razones de aspecto simultáneamente!

1 respuesta
willy_chaos

#6 Verticales y horizontales ya esta hecho (realmente acepta las 3 palabras que pongo a continuacion para cada una)

horizontal / landscape / desktop

vertical / portrait / mobile

las cuadradas las apunto para añadirle el filtro este fin de semana

Formato: es lo que pongo como extensions, da igual si lo pones en mayusculas o minusculas, el hace un lowercase para extraer las imagenes que tengan esa extension

1
JuAn4k4

Siempre puedes añadir filtros para dispositivos: iPad/iPhone/etc.

Ultimos, mejor valorados, más descargados...

Por diseñador, por colores, ..

1 1 respuesta
willy_chaos

#8 Es lo que comento de que luego puedo hacer alias, puesto que teniendo las resoluciones y sabiendo las resoluciones de los dispositivos o la relación de aspecto puedo forzar tantos alias como se quiera, ya que al final se traducirán en una división en la resolución.

Me lo apunto

B

Vale, otra pega gorda para http://wallhaven.cc es que si entras con un móvil de pantalla pequeña es un infierno usarla. Es decir, que no tiene un diseño adaptable a cualquier tamaño de pantalla.

1 respuesta
willy_chaos

#10 es una de las primeras cosas que intente que fuera usable dentro de lo que cabe. obviamente la web esta desnuda pero ya he hecho que la grid sea responsive

1

Usuarios habituales