This project is an internship project developed in Node.js with MySQL as the database. It is designed for handling online appointments.
- User registration and authentication
- Appointment scheduling and management
- Data persistence using MySQL
- Secure communication with JWT-based authentication
- User-friendly API with Swagger documentation
- Node.js (version 14 or later)
- pm or yarn
- MySQL database (version 5.7 or later)
-
clone the repository
git clone https://github.com/deepakabari/HalloDoc-typescript.git
-
Install dependencies:
npm install
-
Create a
.env
file in the project root directory to store database credentials:DATABASE_HOST=your_database_host DATABASE_PORT=your_database_port DATABASE_USERNAME=your_database_username DATABASE_PASSWORD=your_database_password DATABASE_NAME=your_database_name
- Create a MySQL database with the name specified in your
.env
file.
-
Start the development server:
npm start
This will run
nodemon app.ts
in development mode with hot reloading. -
Access the API at
http://localhost:3000
in your browser. -
Swagger documentation is available at
http://localhost:3000/docs
for exploring available API endpoints.
-
Use
ts-node
or your preferred TypeScript compiler for code development. -
The
dev
script inpackage.json
runsts-node-dev app.ts
for hot reloading during development.
-
Build the application for production using the
build
script inpackage.json
:npm run build
-
Configure the deployment environment with the appropriate database credentials and environment variables.
This project is licensed under the MIT License. See the LICENSE file for details.
We welcome contributions from the community. Please submit pull requests following the project's guidelines.