Skip to content
This repository was archived by the owner on Apr 9, 2025. It is now read-only.

aladagemre/robyn-pony

Repository files navigation

Robyn-Pony

A high-performance, low-latency web application skeleton built with Robyn and Pony ORM. This project is designed for building resource-efficient, highly scalable web applications.

🚀 Features

  • Ultra-Fast Performance: Built on Robyn, a rust-based Python web framework
  • Efficient ORM: Pony ORM for intuitive and performant database operations
  • Low Resource Footprint: Optimized for environments with limited resources
  • High Scalability: Designed for handling high concurrent loads
  • Type Safety: Leverages Python type hints and Pony ORM's type system

🛠 Tech Stack

  • Robyn: High-performance async web framework written in Rust
  • Pony ORM: Python ORM with generator-based query execution
  • Python 3.8+: Modern Python features and type hints
  • SQLite/PostgreSQL: Database support through Pony ORM

📋 Prerequisites

  • Python 3.8 or higher
  • pip (Python package installer)
  • A compatible database (SQLite/PostgreSQL)

🔧 Installation

  1. Clone the repository:

    git clone https://github.com/aladagemre/robyn-pony.git
    cd robyn-pony
  2. Create a virtual environment:

    python -m venv venv
    source venv/bin/activate  # On Windows: venv\Scripts\activate
  3. Install dependencies:

    pip install -r requirements.txt
  4. Configure your environment:

    cp .env.example .env
    # Edit .env with your configuration

🏃‍♂️ Running the Application

  1. Start the development server:

    python app.py
  2. Visit http://localhost:8000 in your browser

📁 Project Structure

robyn-pony/
├── app/
│   ├── models/         # Pony ORM entity definitions
│   ├── controllers/    # Request handlers and business logic
│   ├── views/         # Response formatting and templates
│   └── utils/         # Helper functions and utilities
├── config/
│   ├── settings.py    # Application settings
│   └── database.py    # Database configuration
├── tests/             # Test suite
├── requirements.txt   # Project dependencies
└── app.py            # Application entry point

🔍 Key Design Principles

  1. Performance First: Optimized for low latency and minimal resource usage
  2. Type Safety: Strict typing for better code reliability
  3. Clean Architecture: Separation of concerns for maintainability
  4. Scalability: Designed for horizontal scaling
  5. Minimal Dependencies: Keep the stack lean and efficient

📈 Performance Optimization

  • Robyn's Rust-based core for maximum performance
  • Pony ORM's efficient query generation and execution
  • Connection pooling for database operations
  • Minimal middleware overhead
  • Optimized routing system

🧪 Testing

Run the test suite:

pytest tests/

🤝 Contributing

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

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

🙏 Acknowledgments

⚠️ Note

This is a skeleton project meant to be used as a starting point for building high-performance web applications. Customize it according to your specific needs while maintaining the performance-first approach.

About

A high-performance, low-latency web application skeleton built with Robyn and Pony ORM. This project is designed for building resource-efficient, highly scalable web applications.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors