Skip to content

DanielaBarbosa13/AI-Assisted-Database-Group-Project

AI-Assisted Database Group Project

πŸ“Œ Project Overview

This project aims to create an AI-integrated database that allows users to request information in a conversational manner rather than using traditional command-line queries. The AI component, powered by OpenAI's NLP model, will also provide insights into compiled data upon user request.

Our initial goal is to build a generic template database, which can later be specialized for industries such as healthcare or education.


πŸ“œ Code of Conduct

πŸ‘₯ Our Pledge

We, as contributors and maintainers, are committed to fostering a welcoming, safe, and respectful community for everyone. We welcome participation from people of all backgrounds and identities, including but not limited to race, gender, sexual orientation, gender identity and expression, ability, age, nationality, religion, socioeconomic status, and experience level.

We pledge to act and interact in ways that contribute to an open, inclusive, and harassment-free environment.

🌟 Our Standards

Examples of behaviour that contributes to a positive environment include:

βœ… Using welcoming and inclusive language

βœ… Being respectful of differing viewpoints and experiences

βœ… Providing constructive feedback gracefully

βœ… Accepting responsibility and apologizing when mistakes are made

βœ… Focusing on what is best for the community

Examples of unacceptable behaviour include:

🚫 Harassment, intimidation, or discrimination in any form

🚫 Use of sexualized language or imagery

🚫 Trolling, insulting or derogatory comments, and personal attacks

🚫 Public or private harassment

🚫 Publishing others’ private information without explicit permission

🚫 Dismissing or talking over people based on identity or experience

πŸ§‘β€βš–οΈ Our Responsibilities

Project maintainers are responsible for:

Clarifying standards of acceptable behaviour

Taking appropriate and fair corrective action in response to any instances of unacceptable behaviour

Maintaining confidentiality when needed to protect privacy or safety

Applying the code of conduct consistently and fairly to everyone

πŸ“ Scope

This Code of Conduct applies within all project spaces, including:

GitHub repositories (issues, pull requests, discussions)

Community chat platforms (e.g., Discord, Slack, etc.)

Social media posts related to the project

In-person events and online gatherings related to the community

🚨 Reporting Issues

If you experience or witness unacceptable behaviour, please report it by contacting the project maintainers at:

πŸ“§ [email protected]

All reports will be handled confidentially and with respect. We commit to investigating and addressing all reports promptly and fairly.

βš–οΈ Enforcement

Maintainers have the right and responsibility to:

Remove comments, commits, code, issues, or other contributions that violate this Code of Conduct

Temporarily or permanently ban contributors for unacceptable behaviour

Repeated or severe violations may result in a permanent ban from the project and its community spaces.

🀝 Attribution

This Code of Conduct is adapted from the Contributor Covenant, version 2.1.

πŸ› οΈ Technologies Used

  • 🐍 Python – Main programming language for backend development.
  • 🌐 Flask – Lightweight web framework for building the API.
  • πŸ—„οΈ MongoDB – NoSQL database for storing and retrieving data efficiently.
  • 🎨 CSS – Used for styling the front-end interface.
  • πŸ€– OpenAI NLP Model – For processing conversational queries and generating insights.
  • πŸ“‘ RESTful API – Enables seamless integration with external applications.
  • πŸ› οΈ Docker – Containerized deployment for easy scalability.

πŸš€ Key Features

  • πŸ—¨οΈ AI-powered Conversational Queries – Users can interact with the database using natural language.
  • πŸ“Š AI-generated Insights and Analysis – The system provides data-driven insights, such as trends, anomalies, and predictions.
  • πŸ”Œ API Integration – Built with Flask to facilitate seamless communication between components.
  • πŸ”§ Flexible Architecture – Can be extended for different industries.
  • πŸ“ˆ Data Visualization Support – (Future enhancement) Graphical representation of key metrics.
  • πŸ”’ User Authentication & Authorization – Secure access to the database.
  • πŸ“ Data Import & Export – Support for uploading and exporting data in various formats (CSV, JSON, etc.).

βš™οΈ Installation Guide

πŸ“ Prerequisites

Ensure you have the following installed on your system:

  • 🐍 Python (>=3.8)
  • πŸ—„οΈ MongoDB (local or cloud instance)
  • πŸ“¦ pip (Python package manager)

πŸ”§ Setup Instructions

  1. Clone the repository:
    git clone https://github.com/your-repo/open-source-group-project.git
    cd open-source-group-project
  2. Install dependencies:
    pip install -r requirements.txt
  3. Configure MongoDB:
    • If using a local instance, ensure MongoDB is running.
    • If using a cloud instance, update the connection string in config.py.
  4. Run the application:
    python main.py

πŸ’¬ Usage Example

After running the application, users can interact with the AI by querying the database using natural language. Example:

User: "Show me the total sales for the last quarter."
AI: "Total sales for Q4 2024 were $250,000, showing a 12% increase from Q3."

🀝 Contributing to the Project

We welcome contributions! To contribute:

  1. 🍴 Fork the repository.
  2. 🌿 Create a new branch for your feature/fix.
  3. πŸ’Ύ Commit your changes and push to your fork.
  4. πŸ”„ Submit a pull request.

πŸ§ͺ Running Tests

To run tests, use:

pytest tests/

πŸš€ Deployment Guide

This section walks you through deploying the AI-Assisted Database Project using Docker (recommended for production environments).

πŸ“ Prerequisites

Ensure the following are installed on your system or server:

🐍 Python 3.8+

🐳 Docker & Docker Compose

πŸ—„οΈ MongoDB (local or cloud instance)

πŸ” A properly configured .env file

🌐 A cloud provider or VPS (e.g., AWS, DigitalOcean, Render)

🐳 Docker Deployment

FROM python:3.9-slim

WORKDIR /app

COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt

COPY . .

CMD ["python", "main.py"]
  1. Create a docker-compose.yml file
version: '3.8'

services:
  web:
    build: .
    ports:
      - "5000:5000"
    env_file:
      - .env
    depends_on:
      - mongo

  mongo:
    image: mongo
    ports:
      - "27017:27017"
    volumes:
      - mongo-data:/data/db

volumes:
  mongo-data:
  1. Run the Application
docker-compose up --build

The application will be available at:

http://localhost:5000](http://localhost:5000)

If you're deploying to a remote server, replace localhost with your server’s IP or domain name.


πŸ“œ License

This project is open-source and available under the MIT License.


πŸ“© Contact & Support

For any inquiries or contributions, feel free to reach out via GitHub Issues or Discussion forums.

README.md Security Policy Supported Versions The following versions of the AI-Assisted Database API are currently supported with security updates:

Version Supported v1.0 βœ… v0.9 ⚠️ Limited Support v0.8 ❌ No Longer Supported Reporting a Vulnerability If you discover a security vulnerability, please report it responsibly by following these steps:

Do not publicly disclose the issue until it has been resolved. Email our security team at [email protected] with details, including: Affected endpoints Steps to reproduce Potential impact We will acknowledge receipt within 48 hours and provide updates on the resolution process. Security Best Practices To ensure secure API interactions, follow these recommendations:

Use HTTPS: Always make API calls over https:// to prevent data interception. Rotate API Keys: Regularly update API keys to minimize security risks. Implement Rate Limiting: Adhere to rate limits to prevent accidental service disruptions. Restrict API Access: Use role-based permissions to control data exposure. Incident Response In the event of a security breach, we will:

Investigate the issue and determine the impact. Notify affected users within 24 hours if their data is compromised. Apply patches and mitigations as necessary. Provide post-incident reports detailing the resolution and future preventive measures. For further security concerns, visit our Security Documentation.

About

No description, website, or topics provided.

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •