Giter Club home page Giter Club logo

aaroncferrer / nutri-app Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 20.19 MB

A web app connecting patients and dietitians. Patients can create accounts, book appointments, and receive nutrition guidance. Dietitians manage schedules, conduct video consultations, and access patient records.

Home Page: https://nutri-app-ecru.vercel.app

Ruby 51.40% HTML 1.58% JavaScript 32.52% CSS 14.41% Shell 0.09%
calendly-api google-oauth2 rails7 reactjs rspec ruby ruby-on-rails

nutri-app's Introduction

The Nutri Tech

The Nutri Tech is a web application that provides nutrition and dietetic services. It allows patients to create accounts, book appointments, and receive personalized nutrition guidance from dietitians. Dietitians can manage their schedules, conduct video consultations, and access patient records. The app utilizes Google OAuth2.0 for authentication, the Calendly API for scheduling, and integrates with Google Meet for video consultations. This README provides information on the application, including its features and how to set up the backend and frontend.

Technologies Used


Features

Patient

  • Account Creation: Patients can create accounts manually or via Google OAuth2.0.
  • Email Notification: Patients receive an email to confirm their account creation.
  • Account Login: Patients can log in to access the application.
  • Appointment Booking: Patients can book appointments with dietitians based on available timeslots.
  • Confirmation Email: Patients receive a confirmation email with appointment details and a Google Calendar invite upon successful booking.
  • Upcoming Appointments: Patients can view their upcoming appointments, including date, time, and the dietitian's name.
  • Previous Appointments: Patients can access a list of their previous appointments and view corresponding records.

Dietitian

  • Professional Account Creation: Dietitians can create professional accounts to offer nutrition/dietetic services.
  • Account Login: Dietitians log in to access their appointment schedule and patient records.
  • Schedule Management: Dietitians can manage their schedules using Calendly, ensuring effective time management.
  • Email Notifications: Dietitians receive email notifications when a patient books an appointment.
  • Video Consultations: Dietitians can conduct video consultations with patients using Google Meet.
  • Appointment Records: Dietitians can view all assigned appointments and access records for each to provide personalized support.

Additional Information

  • Authentication: The application uses Google OAuth2.0 for user authentication. To implement this, you can refer to this article.

  • Scheduling: The app integrates with the Calendly API for scheduling and manages appointments.

  • Server Uptime: The application maintains server uptime using cron-jobs.org.

  • Deployment: The backend is deployed on Render, and the frontend is deployed on Vercel.

Testing

  • Tools used for testing include Rspec, FactoryBot, and Faker.

Getting Started

Backend Setup

  1. Clone the backend repository.
  2. Navigate to the project directory: cd nutrition-backend
  3. Install the required dependencies: bundle install
  4. Create and set up the database:
rails db:create
rails db:migrate
  1. Set up your environment variables for Google OAuth2.0 and Calendly: (please refer to your actual env var)
GOOGLE_CLIENT_ID=your-client-id
GOOGLE_CLIENT_SECRET=your-client-secret
CALENDLY_API_KEY=your-api-key
  1. Start the Rails server: rails server

Frontend Setup

  1. Clone the frontend repository.
  2. Navigate to the project directory: cd nutrition-frontend
  3. Install the required dependencies: npm install
  4. Create a .env file for environment variables.
  5. Start the development server: npm run dev

nutri-app's People

Contributors

aaroncferrer avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.