Fitlog es una aplicación de seguimiento de entrenamiento impulsada por GenAI que permite a los usuarios registrar sus rutinas, entrenamientos y series. La aplicación incluye funciones como búsqueda difusa de nombres de rutinas y entrenamientos, impulsada por Fuse.js, e integra Prisma para la gestión de bases de datos. Esta es una aplicación MERN-stack creada con Next.js para renderizado del lado del servidor.
Aquí está el esquema de la base de datos para rastrear rutinas, entrenamientos y series de usuarios:
user_id
, username
y password
.routine_id
, routine_name
y user_id
. Una rutina tiene múltiples entrenamientos.workout_id
, workout_name
, routine_id
y date
. Un entrenamiento tiene múltiples series.set_id
, set_weight
, set_reps
, workout_id
y date
. Clonar el repositorio:
git clone https://github.com/yourusername/fitlog.git
Navegue al directorio del proyecto:
cd fitlog
Instalar dependencias:
npm install
Configure variables de entorno creando un archivo .env. Agregue la URL de su base de datos Prisma, las credenciales del empleado y otras variables de entorno requeridas:
DATABASE_URL= " your_postgres_database_url "
NEXT_PUBLIC_CLERK_FRONTEND_API= " your_clerk_frontend_api "
CLERK_API_KEY= " your_clerk_api_key "
GROQ_API_KEY= " Groq Api Key "
NEXT_PUBLIC_CLERK_AFTER_SIGN_IN_URL=/
NEXT_PUBLIC_CLERK_AFTER_SIGN_UP_URL=/
NEXT_PUBLIC_CLERK_SIGN_IN_URL=/login
NEXT_PUBLIC_CLERK_SIGN_UP_URL=/signup
Aplique las migraciones de Prisma a su base de datos:
npx prisma migrate dev
Ejecute el servidor de desarrollo:
npm run dev
Abra su navegador y vaya a http://localhost:3000 para ver la aplicación en acción.
Licencia
Este proyecto tiene la licencia MIT; consulte el archivo de LICENCIA para obtener más detalles.
Contribuyendo
No dudes en bifurcar el repositorio y enviar solicitudes de extracción. ¡Las contribuciones son bienvenidas!
Mejoras futuras
Advanced Analytics: Integrate charts and analytics for users to visualize their workout progress.
GenAI Improvements: Enhance the AI assistant with personalized workout recommendations.
Mobile App: Plan to extend the web app into a mobile application using React Native.
La forma más sencilla de implementar su aplicación Next.js es utilizar la plataforma Vercel de los creadores de Next.js.
Consulte nuestra documentación de implementación de Next.js para obtener más detalles.