Juguetear es un proyecto solidario, sin fines de lucro, que tiene como objetivo adaptar juguetes para niñes con discapacidades motrices complejas y ofrecerlos en calidad de préstamo, sin costo para las familias..
En el Taller de ayudas técnicas de APRILP se adaptan juguetes a pilas que se consiguen a través de donaciones, para luego prestarlos a las familias de niñes con discapacidades motrices complejas para que puedan jugar con pulsadores o switches de distintos tipos.
La web de Juguetear surge como respuesta a la necesitad de modernizar y mejorar el sistema de préstamos de los jueguetes, hacer visible la obra de quienes trabajan en el taller e incentivar la replicación del proyecto.
Indice de contenidos
Stack
Requerimientos
Instalación del proyecto
Sanity
Storybook
Accesibilidad
Licencias
Alcances
UI/UX
Código de Conducta
Comunidad
Cómo contribuir
Contribuidores
Staff
Links de interés
Stack
Requerimientos
- Tener instalada la última versión de node (incluye
npm
) - Tener un editor de código (Visual Code, Vim, etc)
- Tener una cuenta en GitHub
- Leer y seguir Código de Conducta
- Unirte a FrontendCafé en Discord
Instalación del proyecto
- Lo primero es clonar el repositorio en tu disco local. Podés mirar la siguiente documentación.
- Usando la consola de comandos, accedé a la carpeta del proyecto y ejecutá
yarn install
(esto va a instalar todas las dependencias listadas en el archivopackage.json
). Si te aparece un error que diceyarn: command not found
quiere decir que no tenés instaladoyarn
en tu computadora. Para hacerlo, primero tenés que instalar la última versión de node y luego instalaryarn
vianpm
(node package manager) ejecutandonpm install --global yarn
. Podés leer más en este artículo. - Ejecutá
yarn run dev
en la consola de comandos para iniciar el servidor de desarrollo - Visitá http://localhost:3000 en tu navegador para ver la aplicación
⚠️ Si tenés algun error, podés preguntar en el canal #juguetear dentro del servidor de FrontendCafé en Discord
Sanity
Todo el contenido se va a administrar usando Sanity como Headless CMS.
Ahora, para obtener la información de Sanity, vas a tener que hacer fetch utilizando el método client()
inicializado en lib/client.ts
. Por ejemplo, para traer todos los miembros del proyecto, podés a hacer: const member = await client.fetch(`*[_type == "member"]`);
En el ejemplo de arriba *[_type == "member"]
es el query con el cual filtramos que información queremos traer. Este query esta escrito en GROQ. Sanity nos facilita una cheat sheet con algunos de los queries más comunes.
Si querés saber más sobre el cliente JavaScript de Sanity, podés leer más en la documentación de Sanity. Para hacer las cosas más sencillas, utilizamos el toolkit de Sanity para NextJS en este proyecto.
Dentro de la carpeta studio/schemas
podes encontrar los schemas disponibles. Los schemas describen los tipos de documentos y sus campos (_fields). En los archivos JSON en los que Sanity Studio escribe los datos el tipo de documento aparecen como la propiedad _type
.
Es muy común usar esta propiedad como query para obtener su contenido (por ejemplo *[_type == "animal"]
). Si querés saber más sobre los schemas, podés leer la documentación de Sanity al respecto.
Storybook
Storybook es una librería de código abierto que permite desarrollar y documentar tus componentes en un entorno aislado. Vamos a usarla para crear y testear todos los componentes del proyecto Juguetear. Para poder ver los componentes listos para usar, podes entrar a esta URL (provisoria).
Accesibilidad
Quienes administramos este repositorio nos comprometemos a hacer todo lo posible por garantizar la accesibilidad digital para personas con discapacidades. Estamos continuamente mejorando la experiencia del usuario y aplicando los estándares de accesibilidad pertinentes.
Las Pautas de Accesibilidad para el Contenido Web (WCAG) definen los requisitos para que les diseñadores y desarrolladores mejoren la accesibilidad para las personas con discapacidades. Éste define tres niveles de conformidad: Nivel A, Nivel AA y Nivel AAA.
Parte importante de los requerimientos a la hora de contribuir con este proyecto es cumplir al menos con los requisitos WCAG 2.1 nivel AA.
Por favor, hacenos saber si encontrás barreras de accesibilidad en la web de Juguetear enviando un mail a juguetear2021@gmail.com o abriendo un issue. Para hacerlo, necesitás leer la documentación sobre cómo contribuir.
Licencias
Este repositorio se publica con licencia GNU General Public License v3.0.
El contenido de la web de Juguetear se publica con licencia Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International.
Alcances
El alcance de este proyecto será desarrollar el Front End de la web de juguetear en base a los diseños de Mariana Lessi y el Back End donde las personas que coordinan el taller podrán administrar el contenido usando el stack definido.
UI/UX
La interfaz del proyecto fue completamente desarrollada por Mariana Lessi. Cualquier duda, feedback o sugerencia podés compartirla en el canal #juguetear del server de FrontendCafé en Discord.
Comunidad
Este proyecto se desarrolla con la participación y el apoyo de FrontendCafé. Es requerido unirte a nuestro server y buscar el canal #juguetear. Ahí vas a poder compartir dudas e ideas del proyecto. El código de conducta de este proyecto es extensible también a tu participación en el server de FrontendCafé en Discord.
Cómo contribuir
Actualmente hay varias formas de contribuir al proyecto Juguetear:
- Con materiales
- Replicando el proyecto en tu ciudad
- Aportando a este repositorio
Con materiales:
Si querés donar juguetes a pilas y/o diversos materiales contactarse a través del mail juguetear2021@gmail.com
Replicando el proyecto en tu ciudad:
La naturaleza libre y solidaria de esta idea no se refiere solo a la posibilidad de que las familias de niñes con discapacidades motrices complejas puedan acceder a los juguetes sin ningún costo sino que, además, queremos que se pueda replicar en todos los lugares donde haya instituciones y personas con voluntad para llevarlo adelante. Para saber como replicar el proyecto, por favor lee nuestra documentación.
Aportando a este repositorio:
Usamos github Issues para trackear requests, bugs y features. Para aportar a este repositorio, podés trabajar en algún issue que esté abierto, crear uno con un request o bug o dar code review a otres contribuidores.
Si querés contribuir, tené en cuenta que tenemos ciertos lineamientos. Para conocerlos en detalle, leé la documentación sobre cómo contribuir.
Contribuidores
Made with contrib.rocks.
Staff
Coordinador del taller de ayudas técnicas
Sergio Ruau
Consultor / Asesor
Antonio Sacco
Diseño UX/UI
Mariana Lessi
Desarrollo y administración del repositorio
Verónica García (nykka)