Skip to content

Latest commit

 

History

History
85 lines (62 loc) · 2.62 KB

File metadata and controls

85 lines (62 loc) · 2.62 KB

🇦🇪 UAE Public Data Engine

CI License: MIT Python 3.11 API Status

A high-performance Python FastAPI wrapper for UAE Open Data (Real Estate & Infrastructure).

⚡ Features

  • FastAPI: Modern, high-performance web framework for building APIs.
  • Dockerized: specific Dockerfile and docker-compose setup for easy deployment.
  • Poetry: Enhanced dependency management.
  • Linting & Formatting: Configurations for Ruff.
  • CI/CD: GitHub Actions workflow for automated testing and linting.

🛠 Tech Stack

  • Engine: Python 3.11 + FastAPI
  • Architecture: Microservice (Dockerized)
  • Data Source: Aggregated Open Data (Dubai Pulse)

🚀 Getting Started

Prerequisites

  • Python 3.11+
  • Poetry
  • Docker & Docker Compose (optional, for containerized run)

Installation

  1. Clone the repository:

    git clone https://github.com/maidul/uae-public-data-engine.git
    cd uae-public-data-engine
  2. Install dependencies:

    make install
    # OR
    poetry install

Development

Start the development server with hot-reload:

make run
# App will be running at http://localhost:8000
# Docs at http://localhost:8000/docs

Run linter and tests:

make check

📂 Project Structure

.
├── app/
│   ├── api/                 # API endpoints
│   ├── core/                # Config, settings
│   └── main.py              # Application entry point
├── tests/                   # Test suite
├── .github/                 # GitHub workflows & templates
├── pyproject.toml           # Dependencies & configuration
├── Dockerfile               # Docker image definition
├── docker-compose.yml       # Docker services
└── Makefile                 # Build tool shortcuts

🤝 Contributing

Contributions are welcome! Please read the CONTRIBUTING.md and CODE_OF_CONDUCT.md for details.

📄 License

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