Skip to content

Doctor appointment booking app built with Next.js and Strapi, featuring real-time data retrieval, secure user authentication with Kinde, and email notifications for booking confirmations. Backend : https://github.com/Shrey-Raj/next-appoint-strapi-backend

Notifications You must be signed in to change notification settings

Shrey-Raj/nextAppoint

Repository files navigation

NextAppoint is a web application that helps users book appointments with the doctor of their choice. It allows users to book and view their upcoming and expired appointments, and enables them to cancel an appointment if needed, acknowledging a successful appointment booking with an email.

Features

  • Book appointments with doctors of your choice
  • Receive confirmatory emails for appointments
  • View upcoming and expired appointments
  • Cancel appointments

Tech Used

  • Next JS
  • React
  • TailwindCSS
  • Strapi
  • Shadcn UI

Sneakpeeks

Screenshot 2 Screenshot 5 Screenshot 3 Screenshot 4 Screenshot 5 Screenshot 1

Getting Started

Prerequisites

  • Node.js
  • npm or yarn
  • Strapi (connect a database, set up Environment variables)

Setting up Strapi with PostgreSQL on Render

To set up your Strapi project and connect it to a PostgreSQL database on Render, follow these steps:

  1. Install Strapi:

    npx create-strapi-app my-project --quickstart
  2. Configure PostgreSQL:

    Update your config/database.js file to use PostgreSQL:

    module.exports = ({ env }) => ({
      defaultConnection: 'default',
      connections: {
        default: {
          connector: 'bookshelf',
          settings: {
            client: 'postgres',
            host: env('DATABASE_HOST', 'your-postgres-host'),
            port: env.int('DATABASE_PORT', 5432),
            database: env('DATABASE_NAME', 'your-database-name'),
            username: env('DATABASE_USERNAME', 'your-database-username'),
            password: env('DATABASE_PASSWORD', 'your-database-password'),
            ssl: env.bool('DATABASE_SSL', false),
          },
          options: {},
        },
      },
    });
  3. Deploy on Render:

    • Sign up on Render and create a new PostgreSQL database.
    • Note down the database connection details.
    • Create a new Web Service on Render and link it to your Strapi project repository.
    • Set the environment variables for your PostgreSQL database in the Render dashboard.
  4. Start Strapi:

    npm run develop
  5. Access Strapi Admin:

    Navigate to http://localhost:1337/admin to access the Strapi admin panel.

Installation

  1. Clone the repo

    git clone https://github.com/Shrey-Raj/nextAppoint.git
    
  2. Navigate to the project directory:

    cd nextAppoint
  3. Install dependencies:

    npm install
  4. Run the development server:

    npm run dev

    The app will be accessible at http://localhost:3000/.

Live Demo

Explore the live version of the NextAppoint App here.

Acknowledgments

Special thanks to the creators and maintainers of the libraries and APIs used in this project.

Happy coding! 🚀

About

Doctor appointment booking app built with Next.js and Strapi, featuring real-time data retrieval, secure user authentication with Kinde, and email notifications for booking confirmations. Backend : https://github.com/Shrey-Raj/next-appoint-strapi-backend

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published