Skip to content

Harshitgupta5290/UI-design-node.js-framework

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

3 Commits
Β 
Β 
Β 
Β 

Repository files navigation

UI Design Node.js Framework

A modern Node.js/Express-based credential and certificate management system with an intuitive web interface for awarding and issuing digital certificates.

License: ISC Node.js Version Express Version


πŸ“‹ About

This project is a comprehensive Credential & Certificate Management Platform built with Node.js and Express. It provides a user-friendly interface for creating, managing, and issuing digital certificates and credentials. The application integrates with the Certifyme API to handle credential generation and verification, making it ideal for organizations, educational institutions, and businesses that need to issue professional certificates and credentials.

Key Capabilities:

  • Create and issue digital certificates
  • Manage awardee information
  • Verify credentials with unique license numbers
  • Send certificates via email
  • Support multiple verification modes (Passport Number, ID, etc.)
  • Beautiful, responsive UI for certificate awarding

✨ Features

  • User-Friendly Form Interface - Collect awardee information through a clean, intuitive form
  • Email Integration - Automatically send certificates to awardees via email
  • API Integration - Seamless integration with Certifyme API for credential management
  • Responsive Design - Works perfectly on desktop, tablet, and mobile devices
  • Multiple Verification Modes - Support for Passport Number, ID verification, and more
  • Secure Credential Handling - JWT-based authentication support
  • Axios HTTP Client - Reliable API communication

πŸ› οΈ Technology Stack

Technology Version Purpose
Node.js 14+ JavaScript runtime
Express.js 4.18.2 Web framework
Axios 1.3.3 HTTP client
Body-parser 1.20.1 Request body parsing
Pug 3.0.2 Template engine
Nodemailer 6.9.1 Email service
JWT 9.0.0 Authentication
Nodemon 2.0.20 Development auto-reload

πŸ“¦ Installation

Prerequisites

  • Node.js (v14 or higher)
  • npm (Node Package Manager)

Setup Steps

  1. Clone the repository

    git clone https://github.com/Harshitgupta5290/UI-design-node.js-framework.git
    cd UI-design-node.js-framework
  2. Navigate to the project directory

    cd "nodejs framework"
  3. Install dependencies

    npm install
  4. Configure credentials

    • Open app.js and update the Certifyme API credentials:
    const username = "your account of certifyme";
    const password = "your password of certifyme";
  5. Start the application

    npm start

    Or with auto-reload during development:

    npm run dev
  6. Access the application

    • Open your browser and navigate to http://localhost:3000

πŸš€ Usage

Starting the Server

# Production mode
npm start

# Development mode (with auto-reload)
nodemon app.js

The server will run on http://localhost:3000 (or the port specified in the PORT environment variable).

Using the Certificate Award Form

  1. Navigate to the Quick Award form at /form
  2. Enter the awardee's name
  3. Enter the awardee's email address
  4. Select template and verification mode
  5. Provide license number and verification code
  6. Submit the form to create and send the certificate

API Endpoints

  • GET / - Serves the main certificate form
  • GET /form - Serves the certificate award form
  • POST /Create_Credential - Creates a new credential
  • POST /formPost - Handles form submissions

πŸ“ Project Structure

UI-design-node.js-framework/
β”‚
β”œβ”€β”€ README.md
β”‚
└── nodejs framework/
    β”œβ”€β”€ app.js                  # Main application server
    β”œβ”€β”€ package.json           # Project dependencies
    β”‚
    └── public/
        β”œβ”€β”€ index.html         # Main HTML page
        β”œβ”€β”€ style.css          # Stylesheet
        └── readme.cd          # Additional documentation

πŸ”§ Configuration

Environment Variables

The application uses the following environment variables:

Variable Default Description
PORT 3000 Server port

Certifyme API Configuration

Update the following in app.js:

const username = "your_certifyme_email";
const password = "your_certifyme_password";

πŸ“§ Email Configuration

The application uses Nodemailer for sending certificates. Configure your email settings in app.js before deploying.


πŸ“ Dependencies

Production Dependencies

  • express - Web framework for Node.js
  • axios - Promise-based HTTP client
  • body-parser - Middleware for parsing request bodies
  • pug - Template engine
  • nodemailer - Email service
  • jsonwebtoken - JWT authentication
  • path - Node.js path utilities
  • router - Express router

Development Dependencies

  • nodemon - Auto-reload during development

🀝 Contributing

Contributions are welcome! Here's how you can help:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/YourFeature)
  3. Commit your changes (git commit -m 'Add YourFeature')
  4. Push to the branch (git push origin feature/YourFeature)
  5. Open a Pull Request

Please ensure your contributions:

  • Follow the existing code style
  • Include appropriate comments
  • Are well-tested
  • Update documentation if needed

πŸ“„ License

This project is licensed under the ISC License - see the LICENSE file for details.


πŸ‘¨β€πŸ’» Author

Harshit Gupta (Certifyme)


πŸ†˜ Support & Issues

If you encounter any issues or have questions:

  1. Check the existing Issues
  2. Create a new issue with detailed information
  3. Include your Node.js version and environment details

πŸ” Security Notice

⚠️ Important: Never commit your Certifyme API credentials to version control. Use environment variables or a .env file (add to .gitignore).


πŸ“š Additional Resources


⭐ If you find this project helpful, please give it a star!

Made with ❀️ by Harshit Gupta

About

Node.js/Express credential & certificate management platform with Certifyme API integration

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors