{"id":26242203,"url":"https://github.com/muke78/frontend-kindergarden","last_synced_at":"2026-04-10T11:01:19.472Z","repository":{"id":283021681,"uuid":"950399548","full_name":"muke78/Frontend-Kindergarden","owner":"muke78","description":"Sistema de gestión diseñado para administrar eficientemente una escuela, permitiendo gestionar datos clave dentro de la plataforma mediante un CRM","archived":false,"fork":false,"pushed_at":"2025-05-15T08:02:03.000Z","size":342,"stargazers_count":3,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-01T08:29:58.315Z","etag":null,"topics":["axios","daisyui","husky","jsonwebtoken","prettier","query-string","react","react-hook-form","react-hot-toast","react-icons","react-oauth-google","react-router-dom","react-spinners","recharts","sweetalert2","tailwindcss","tanstack-react-query","zustand"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/muke78.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-03-18T05:19:05.000Z","updated_at":"2025-06-26T09:21:38.000Z","dependencies_parsed_at":"2025-03-25T11:27:18.979Z","dependency_job_id":"2ae367a3-5792-48df-a85a-f758cc09644c","html_url":"https://github.com/muke78/Frontend-Kindergarden","commit_stats":null,"previous_names":["muke78/frontend-kindergarden"],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/muke78/Frontend-Kindergarden","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/muke78%2FFrontend-Kindergarden","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/muke78%2FFrontend-Kindergarden/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/muke78%2FFrontend-Kindergarden/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/muke78%2FFrontend-Kindergarden/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/muke78","download_url":"https://codeload.github.com/muke78/Frontend-Kindergarden/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/muke78%2FFrontend-Kindergarden/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31639524,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-10T07:40:12.752Z","status":"ssl_error","status_checked_at":"2026-04-10T07:40:11.664Z","response_time":98,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["axios","daisyui","husky","jsonwebtoken","prettier","query-string","react","react-hook-form","react-hot-toast","react-icons","react-oauth-google","react-router-dom","react-spinners","recharts","sweetalert2","tailwindcss","tanstack-react-query","zustand"],"created_at":"2025-03-13T09:49:51.769Z","updated_at":"2026-04-10T11:01:19.465Z","avatar_url":"https://github.com/muke78.png","language":"TypeScript","readme":"# 🏫 AKT - CRM para Administración de Kinder\n\nUn sistema de gestión diseñado para administrar eficientemente una escuela, permitiendo gestionar datos clave dentro de la plataforma mediante un CRM. Incluye distintos módulos y catálogos para un control óptimo de la información almacenada en la base de datos.\n\n## 🚀 Características\n\n- Gestión de estudiantes, maestros, padres y personal administrativo.\n\n- Administración de inscripciones y asignación de clases.\n\n- Manejo de permisos y roles de usuario.\n\n- Reportes y estadísticas visuales.\n\n- Autenticación segura mediante JWT.\n\n- Diseño responsivo y moderno con TailwindCSS y DaisyUI.\n\n## 🛠 Tecnologías Utilizadas\n\nEl proyecto está desarrollado con las siguientes tecnologías y librerías:\n\n### 📌 **Frontend y UI**\n\n- [`react`](https://react.dev/) - Biblioteca para la construcción de interfaces de usuario.\n- [`react-dom`](https://react.dev/) - Renderizado de componentes React en el DOM.\n- [`react-router-dom`](https://reactrouter.com/) - Enrutamiento dinámico en aplicaciones React.\n- [`tailwindcss`](https://tailwindcss.com/) - Framework CSS para estilos rápidos y eficientes.\n- [`daisyui`](https://daisyui.com/) - Extensión de TailwindCSS con componentes personalizables.\n- [`framer-motion`](https://www.framer.com/motion/) - Animaciones fluidas y avanzadas en React.\n- [`animate.css`](https://animate.style/) - Animaciones CSS listas para usar.\n- [`react-icons`](https://react-icons.github.io/react-icons/) - Librería de iconos para mejorar la experiencia visual.\n- [`react-spinners`](https://www.davidhu.io/react-spinners/) - Indicadores de carga animados.\n\n### 🔄 **Estado y Manejo de Datos**\n\n- [`@tanstack/react-query`](https://tanstack.com/query/latest) - Manejo eficiente del estado de datos asíncronos.\n- [`@tanstack/react-table`](https://tanstack.com/table/latest) - Tablas dinámicas y personalizables.\n- [`zustand`](https://zustand-demo.pmnd.rs/) - Gestión de estado global simple y eficiente.\n\n### 🔐 **Autenticación y Seguridad**\n\n- [`@react-oauth/google`](https://github.com/MomenSherif/react-oauth) - Autenticación con Google.\n- [`jwt-decode`](https://github.com/auth0/jwt-decode) - Decodificación de tokens JWT.\n\n### 🔧 **Utilidades y Herramientas**\n\n- [`axios`](https://axios-http.com/) - Cliente HTTP para realizar peticiones a la API.\n- [`query-string`](https://www.npmjs.com/package/query-string) - Manejo y manipulación de query strings en URLs.\n- [`sweetalert2`](https://sweetalert2.github.io/) - Alertas y modales personalizables.\n- [`zod`](https://zod.dev/) - Validación de esquemas de datos.\n- [`motion-number`](https://motion-number.barvian.me/) - Contadores animados numéricos.\n\n### 📊 **Visualización de Datos**\n\n- [`recharts`](https://recharts.org/en-US/) - Librería de gráficos interactivos para React.\n\n### 🛠 **Desarrollo y Configuración**\n\n- [`vite`](https://vitejs.dev/) - Herramienta de construcción rápida para proyectos frontend.\n- [`@vitejs/plugin-react-swc`](https://www.npmjs.com/package/@vitejs/plugin-react-swc) - Optimizaciones de compilación para React.\n- [`prettier`](https://prettier.io/) - Formateador de código para mantener consistencia.\n- [`@trivago/prettier-plugin-sort-imports`](https://github.com/trivago/prettier-plugin-sort-imports) - Plugin para ordenar importaciones en Prettier.\n- [`eslint`](https://eslint.org/) - Linter para mejorar la calidad del código.\n- [`typescript`](https://www.typescriptlang.org/) - Tipado estático para JavaScript.\n- [`husky`](https://typicode.github.io/husky/#/) - Hooks para mejorar la calidad del código en commits.\n\n## 📂 Estructura del Proyecto\n\n```\n/src\n├── /components        # Componentes reutilizables de UI\n│   ├── /ui           # Componentes genéricos como botones, inputs, modales\n│   │   ├── Button.jsx\n│   │   ├── Input.jsx\n│   │   ├── Modal.jsx\n│   │   ├── Card.jsx\n│   │   ├── Table.jsx\n│   │   └── index.js  # Exporta todos los componentes de UI\n│   ├── Navbar.jsx    # Barra de navegación\n│   ├── Sidebar.jsx   # Menú lateral\n│   ├── Footer.jsx    # Pie de página\n│   └── index.js      # Exporta todos los componentes globales\n│\n├── /config           # Configuración global del proyecto\n│   ├── api.js        # Configuración base de Axios (ejemplo: baseURL, interceptores)\n│   ├── constants.js  # Constantes globales (ejemplo: roles de usuario, estados)\n│   ├── env.js        # Carga de variables de entorno\n│   ├── theme.js      # Configuración de tema (si usas Tailwind o DaisyUI)\n│   └── index.js      # Exporta todas las configuraciones\n│\n├── /features         # Módulos específicos de cada funcionalidad\n│   ├── /auth        # Módulo de autenticación (login, registro)\n│   │   ├── Login.jsx\n│   │   ├── Register.jsx\n│   │   ├── authService.js  # Funciones para login y registro\n│   │   ├── authSlice.js    # Estado global con Zustand o Redux\n│   │   ├── hooks.js        # Hooks específicos para auth\n│   │   └── index.js        # Exporta todo el módulo\n│   ├── /students   # Módulo para estudiantes\n│   │   ├── StudentList.jsx\n│   │   ├── StudentForm.jsx\n│   │   ├── studentService.js\n│   │   ├── studentSlice.js\n│   │   ├── hooks.js\n│   │   └── index.js\n│   ├── /teachers   # Módulo para profesores\n│   ├── /parents    # Módulo para padres\n│   ├── /classes    # Módulo para clases\n│   └── ...         # Más módulos según necesidades\n│\n├── /hooks           # Hooks personalizados\n│   ├── useAuth.js   # Hook para manejar autenticación\n│   ├── useFetch.js  # Hook para llamadas a la API con React Query\n│   ├── useModal.js  # Hook para manejar modales\n│   └── index.js     # Exporta todos los hooks\n│\n├── /pages           # Páginas principales de la app (cada ruta principal)\n│   ├── Home.jsx     # Página de inicio\n│   ├── Dashboard.jsx # Panel principal\n│   ├── Login.jsx    # Página de login\n│   ├── Register.jsx # Página de registro\n│   ├── NotFound.jsx # Página 404\n│   └── index.js     # Exporta todas las páginas\n│\n├── /routes          # Configuración de rutas\n│   ├── PrivateRoute.jsx  # Protege rutas privadas con autenticación\n│   ├── AppRouter.jsx     # Define las rutas principales\n│   └── index.js          # Exporta las rutas\n│\n├── /services        # Llamadas a la API con Axios\n│   ├── authService.js    # Servicio para autenticación\n│   ├── studentService.js # Servicio para estudiantes\n│   ├── teacherService.js # Servicio para maestros\n│   ├── classService.js   # Servicio para clases\n│   └── index.js          # Exporta todos los servicios\n│\n├── /store           # Estado global con Zustand\n│   ├── authStore.js     # Manejo de sesión de usuario\n│   ├── studentStore.js  # Manejo de estado de estudiantes\n│   ├── teacherStore.js  # Manejo de estado de maestros\n│   └── index.js         # Exporta todos los stores\n│\n├── /utils           # Funciones auxiliares\n│   ├── formatDate.js  # Función para formatear fechas\n│   ├── validateForm.js # Validaciones de formularios\n│   ├── helpers.js     # Funciones genéricas\n│   └── index.js       # Exporta todas las utilidades\n│\n├── /styles          # Configuración de Tailwind y estilos globales\n│   ├── tailwind.css  # Estilos de Tailwind\n│   ├── global.css    # Estilos personalizados\n│   └── theme.css     # Personalización del tema\n│\n├── main.jsx         # Punto de entrada\n├── app.jsx          # Componente raíz\n```\n\n## 🛠 Instalación y Configuración\n\nSigue estos pasos para ejecutar el proyecto localmente:\n\n### 1️⃣ Clonar el repositorio\n\n```\n git clone https://github.com/muke78/Frontend-Kindergarden.git\n cd Frontend-Kindergarden\n```\n\n### 2️⃣ Instalar dependencias\n\n```\nbun i\n```\n\n### 3️⃣ Configurar variables de entorno\n\nCrea un archivo .env en la raíz del proyecto y configura las variables necesarias:\n\n```\nVITE_API_BASE_URL=https://tu-api.com\nVITE_GOOGLE_CLIENT_ID=tu-google-client-id\n```\n\n### 4️⃣ Ejecutar el proyecto\n\n```\n  bun dev\n```\n\n## 📌 Convenciones de Código\n\nPara mantener un código limpio y estandarizado, seguimos estas prácticas:\n\n- Prettier para formateo automático.\n\n- Husky para ejecutar validaciones antes de los commits.\n\n- Zustand para manejo de estado global.\n\n- React Query para manejar peticiones asíncronas eficientemente.\n\n## 📄 Licencia\n\nEste proyecto está bajo la licencia MIT. Consulta el archivo LICENSE para más detalles.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmuke78%2Ffrontend-kindergarden","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmuke78%2Ffrontend-kindergarden","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmuke78%2Ffrontend-kindergarden/lists"}