Skip to content

M-MDI/ATM-Management-SYS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 

Repository files navigation

ATM Management System

Build Status Code Coverage License C PRs Welcome

A robust and secure ATM management system implemented in C

FeaturesInstallationUsageDocumentationContributing



📑 Table of Contents


🎯 About

The ATM Management System is an enterprise-grade banking solution that provides secure transaction processing and comprehensive account management capabilities. Built with C, it ensures high performance and reliable operation for banking transactions.


⭐ Features

Core Functionality

  • User Management

    • Secure registration system
    • Encrypted authentication
    • Profile management
  • Account Operations

    • Multi-account support
    • Real-time balance updates
    • Transaction history
  • Transaction Processing

    • Deposits and withdrawals
    • Inter-account transfers
    • Transaction validation

Security Features

  • Data Protection
    • Password encryption
    • Secure session management
    • Data integrity checks

Advanced Features

  • Real-time Notifications
    • IPC implementation
    • Transaction alerts
    • Account updates

💻 System Requirements

Minimum Requirements

- GCC Compiler >= 7.0
- Make Build System
- 2GB RAM
- 1GB Storage

Recommended Specifications

- GCC Compiler >= 9.0
- Make Build System
- 4GB RAM
- 5GB Storage

🚀 Installation

Quick Install

# Clone repository
git clone https://github.com/M-MDI/atm-management.git

# Navigate to directory
cd atm-management

# Install dependencies
make deps

# Build project
make build

Docker Installation

# Build image
docker build -t atm-system .

# Run container
docker run -p 8080:8080 atm-system

📖 Usage

Basic Operations

// Initialize system
ATM_System_Init();

// User login
ATM_Login("username", "password");

// Create account
ATM_CreateAccount(accountDetails);

// Process transaction
ATM_ProcessTransaction(transactionDetails);

Configuration

{
  "system": {
    "port": 8080,
    "max_connections": 100,
    "timeout": 30
  },
  "security": {
    "encryption": "AES-256",
    "session_timeout": 3600
  }
}

📚 API Reference

User Management

ATM_Status ATM_CreateUser(User* user);
ATM_Status ATM_UpdateUser(User* user);
ATM_Status ATM_DeleteUser(UserID id);

Account Operations

ATM_Status ATM_CreateAccount(Account* account);
ATM_Status ATM_UpdateAccount(Account* account);
ATM_Status ATM_DeleteAccount(AccountID id);

Transaction Processing

ATM_Status ATM_Deposit(Transaction* txn);
ATM_Status ATM_Withdraw(Transaction* txn);
ATM_Status ATM_Transfer(Transaction* txn);

🤝 Contributing

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

🔒 Security

Reporting Vulnerabilities

Report security vulnerabilities to [email protected]

Security Features

  • Encrypted data storage
  • Secure authentication
  • Session management
  • Audit logging

📄 License

Distributed under the MIT License. See LICENSE for more information.


📧 Contact

Project Developer: M-MDI

Project Link: https://github.com/M-MDI/atm-management


Made with ❤️ by M-MDI

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published