"""
GRNexus - High-Performance Neural Network Library
==================================================

A neural network library with Keras-like API and high-performance core.

Features:
- 🚀 Pure Python implementation with optimized operations
- 🎯 Keras-like API - familiar and easy to use
- 🧩 Modular architecture with flexible layers
- 💾 Model persistence in .nexus format
- 🎨 50+ activation functions
- 🔧 Multiple optimizers (SGD, Momentum, Adam, RMSprop)
- 📊 Regularization (Dropout, BatchNorm)

Quick Start:
-----------
>>> from grnexus import NeuralNetwork
>>> model = NeuralNetwork()
>>> model.add(DenseLayer(128, input_dim=784, activation=ReLU()))
>>> model.compile(loss='cross_entropy', optimizer='adam', learning_rate=0.001)
>>> model.train(x_train, y_train, epochs=10, batch_size=32)

For more information, visit: https://github.com/grcodedigitalsolutions/GRNexus
"""

__version__ = "0.1.0"
__author__ = "GR Code Digital Solutions"
__license__ = "GPL-3.0"

# Import main classes
from .grnexus import NeuralNetwork

# Import commonly used layers
from .lib.grnexus_layers import (
    DenseLayer,
    ActivationLayer,
    DropoutLayer,
    BatchNormLayer,
    SoftmaxLayer,
)

# Import commonly used activations
from .lib.grnexus_activations import (
    ReLU,
    Sigmoid,
    Tanh,
    Swish,
    GELU,
    Mish,
    LeakyReLU,
    ELU,
    SELU,
)

# Import callbacks
from .lib.grnexus_callbacks import (
    EarlyStopping,
    ModelCheckpoint,
    LearningRateScheduler,
    ReduceLROnPlateau,
)

# Import Machine Learning algorithms
from .lib.grnexus_machine_learning import (
    KNeighborsClassifier,  # Fixed: was KNNClassifier
    KMeans,
    LinearRegression,
    LogisticRegression,
    GaussianNB
)

# Define public API
__all__ = [
    # Main class
    'NeuralNetwork',
    
    # Layers
    'DenseLayer',
    'ActivationLayer',
    'DropoutLayer',
    'BatchNormLayer',
    'SoftmaxLayer',
    
    # Activations
    'ReLU',
    'Sigmoid',
    'Tanh',
    'Swish',
    'GELU',
    'Mish',
    'LeakyReLU',
    'ELU',
    'SELU',
    
    # Callbacks
    'EarlyStopping',
    'ModelCheckpoint',
    'LearningRateScheduler',
    'ReduceLROnPlateau',
    
    # ML Utilities
    'KNNClassifier',
    'LinearRegression',
    
    # Metadata
    '__version__',
    '__author__',
    '__license__',
]
