Skip to content

levco/nolas

Repository files navigation

NOlas

A high-performance, async-based headless email client that is Nylas-API compatible.

🚀 Key Features

  • Massive Scale: Handle 1000+ email accounts with simple polling
  • Async Architecture: Uses asyncio for efficient I/O operations
  • Simple Polling: Reliable 60-second polling instead of complex IDLE sessions
  • Distributed Workers: Horizontal scaling with multiple worker processes
  • Database-Driven: PostgreSQL for reliable state management
  • Webhook Delivery: Reliable webhook delivery with retry logic
  • Health Monitoring: Built-in health checks and automatic recovery
  • Graceful Shutdown: Clean resource cleanup on shutdown

📋 Requirements

  • Python 3.13+
  • PostgreSQL 12+
  • uv for package management (recommended)

🛠 Installation

  1. Clone the repository:
git clone [email protected]:gvso/nolas.git
cd nolas
  1. Install dependencies:
uv sync
  1. Setup PostgreSQL database:
createdb nolas

🚦 Quick Start

1. List Accounts

View all accounts in the database:

python manage.py --mode list

2. Start the System

Production (Cluster Mode):

python manage.py --mode cluster --workers 4

Development (Single Worker):

python manage.py --mode single

Run webserver

python server.py

About

A high-performance, async-based headless email client that is Nylas-API compatible.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages