# teras — A Unified Deep Learning Library for Tabular Data

![Teras logo banner](./data/imgs/teras_banner.jpg)



teras (short for Tabular Keras) is a unified deep learning library for Tabular 
Data that aims to be your one stop for everything related to deep learing with 
tabular data.

**IMPORTANT** teras v0.3 is now fully based on Keras 3, making everything available backend agnostic. It supports TensorFlow, JAX and PyTorch backends.

teras provides state of the art layers, models and architectures for all purposes, be it classification, regression or even data generation and imputation using state of the art deep learning architectures.

It also includes functions and classes for preprocessing data for complex architectures, making it extremely simple to transform your data in the expected format, saving you loads of hassle and time!

While these state of the art architectures can be quite sophisticated, teras, thanks to the incredible design of Keras, abstracts away all the complications and sophistication and makes it easy as ever to access those models and put them to use.

Not only that, everything available is highly customizable and modular, allowing for all variety of use cases.
## Installation:
You can install teras using pip as follows,
```
pip install teras
```

## Getting Started
Read our [Getting Started Guide](https://teras.readthedocs.io/en/latest/getting_started.html) to...*drum roll* get started with teras.


## Documentation:
You can access the documentation on ReadTheDocs.io: https://teras.readthedocs.io/en/latest/index.html


## Motivation
The main purposes of teras are to:
1. Provide a uniform interface for all the different proposed architectures to abstract away the complexities to make them accessible to everyone!
2. Further bridge the gap between research and application.
3. Be a one-stop for everything concerning deep learning for tabular data.
4. Accelerate research in tabular domain of deep learning by making it easier for researchers to access, use and experiment with exisiting architectures — saving them lots of valuable time.


## Support
If you find teras useful, consider supporting the project. I've been working on this for the past several months, and as you may guess such software consume a lot of your time. I also have many future plans for it but my current laptop is quite old which makes it impossible for me to test highly demanding workflows let alone rapidly test and iterate. So your support will be very vital in the betterment of this project, and many others that I plan to build!
Thank you!

[![BuyMeACoffee](https://img.shields.io/badge/Buy%20Me%20a%20Coffee-ffdd00?style=for-the-badge&logo=buy-me-a-coffee&logoColor=black)](https://www.buymeacoffee.com/KhawajaAbaid)
[![Patreon](https://img.shields.io/badge/Patreon-F96854?style=for-the-badge&logo=patreon&logoColor=white)](https://www.patreon.com/KhawajaAbaid)
