Skip to content

manishworkss/CodeAlpha-Artificial-IntelligenceChatbot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 

Repository files navigation

AI Chatbot — CodeAlpha Internship Project

📸 Executive Project Showcase Gallery

🌐 Enterprise Web Showcase 💬 Desktop GUI & Live Chat Delivery
Web Showcase Preview Desktop Chat GUI
🧮 Native Calculus & Algebra Solver 💻 Code Assistant & Multi-Language Subsystem
Math Solver Engine Code & Localization

Overview

An advanced, Java-powered AI Chatbot featuring an executive GUI and NLP-driven intelligence. Built as part of the CodeAlpha internship, this project demonstrates intelligent conversation, programming assistance, algebraic calculus solving, and multi-language localization.

Key Features

  • Professional GUI — Modern Swing-based executive interface with animated message display and responsive design
  • Natural Language Understanding — Intent-based routing for greetings, farewells, queries, and system commands
  • Programming Assistance — Real-time Java 21 code generation templates and best-practice explanations
  • Native Math & Calculus Solver — Built-in algebraic linear equation evaluation (2x + 5 = 15) and derivative solver (x^2)
  • Context Awareness — Short-term memory for multi-turn conversations and logical follow-up questions
  • Multi-Language Support — Stateful dynamic localization for English, Hindi, Spanish, and French
  • Zero-Dependency Portability — 100% standalone Java 21 LTS native architecture requiring zero external JARs

Desktop GUI & Conversation Walkthrough

💬 Live Chat Delivery Examples

Here is how IntelliBot Pro parses user input and delivers structured conversation responses:

1. Algebraic Linear Equation Solver

User: solve for x: 2x + 5 = 15
IntelliBot Pro:

🧮 ALGEBRA SOLVER (Linear Equation):
Equation: 2x + 5 = 15
• Step 1: Isolate variable term ➔ 2x = 15 - 5
• Step 2: Divide by coefficient ➔ x = 10 / 2
★★ Answer: x = 5 ★★

2. Real-Time Algorithmic Code Generation

User: write a java program to reverse a string
IntelliBot Pro:

💻 JAVA PROGRAMMING ASSISTANT — STRING REVERSAL:

public class StringReverser {
    public static void main(String[] args) {
        String s = "IntelliBot";
        String rev = new StringBuilder(s).reverse().toString();
        System.out.println(rev);
    }
}

3. Stateful Multi-Language Localization

User: Change language to Hindi
IntelliBot Pro:

भाषा बदलकर हिंदी कर दी गई है! अब आप हिंदी में सवाल पूछ सकते हैं।

Technical Highlights

Tech Stack

  • Language: Java 21 LTS
  • GUI Framework: Java Swing (Desktop GUI) + Enterprise Web Showcase (index.html)
  • NLP & Math Engine: Native rule-based intent classification and algebraic regex evaluation (java.util.regex)
  • Dependencies: None (Zero external dependency management required)

Architecture

  • Model-View-Controller (MVC) pattern for clean separation of concerns
  • Command Pattern for extensible functionality modules
  • Singleton Pattern for resource management (database, configuration)

Core Modules

  1. GuiManager — Handles all Swing components, animations, and user interactions
  2. IntentClassifier — Identifies user intent (greeting, query, programming, math, etc.)
  3. ResponseGenerator — Generates intelligent, context-aware replies
  4. ProgrammingAssistant — Code analysis, generation, and optimization
  5. MathSolver — Parses and evaluates complex mathematical expressions
  6. TranslationModule — Handles multi-language translation requests
  7. SettingsManager — Manages user preferences and system configuration

Getting Started

Prerequisites

  • Java 21 or higher
  • Apache Maven 3.6+ (optional, for dependency management)
  • JavaFX Runtime Environment (JRE)

Installation

  1. Clone the repository:

    git clone <repository-url>
    cd CodeAlpha_-Artificial-Intelligence-Chatbot-
  2. Install dependencies (if using Maven):

    mvn clean install
  3. Run the application:

    java -jar chatbot.jar

    Note: Ensure the JavaFX libraries are in your classpath.

Usage

Basic Commands

  • "Hello", "Hi", "Hey" — Greetings
  • "Bye", "Goodbye" — Farewell messages
  • "How are you?" — Status inquiries

Programming Help

  • "Write a Java program to reverse a string" — Code generation
  • "Is this code correct?" — Code validation
  • "Explain recursion" — Concept explanation

Math Problems

  • "What is (2 + 3) * 5?" — Basic arithmetic
  • "Solve for x: 2x + 5 = 15" — Algebraic equations
  • "Derivative of x^2" — Calculus

Settings

  • "Change language to Hindi" — Switch language
  • "Reset chat" — Clear conversation history
  • "Show settings" — Open configuration panel

Project Structure

src/
├── main/
│   ├── java/
│   │   ├── gui/                  # GUI components (Frames, Panels)
│   │   ├── logic/                # Core logic and NLP
│   │   ├── math/                 # Math evaluation engine
│   │   ├── programming/          # Programming assistant features
│   │   ├── utils/                # Helper utilities and resources
│   │   └── main/                 # Application entry point
│   └── resources/                # Assets and configuration files
└── test/
    └── java/                     # Unit tests

License

This project is developed as part of the CodeAlpha internship. All rights reserved.

Contributing

Contributions are welcome! Please follow these steps:

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

Acknowledgments

  • CodeAlpha — For the opportunity to work on this project
  • Java Community — For the extensive libraries and support
  • Contributors — For their valuable input and improvements

Thank you for visiting my CodeAlpha Internship Project

About

Advanced Java-based AI Chatbot with NLP capabilities and professional GUI interface. Built for CodeAlpha Internship Project featuring intelligent conversation, programming assistance, and mathematical calculations.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors