Skip to content

ausdavoud/notary

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📜 Notary Commission Distribution Platform

A modern platform for managing and fairly distributing notary commissions—with automatic revenue tracking and transparent reporting. ✨

This project was sponsored by Notary Office 179 - Shoush


Table of Contents


Demo Videos

See the platform in action! 🎬

Sign Up & Onboarding

signup.mp4

Login & Dashboard

login.mp4

Contract Creation Flow

contract-creation.mp4

Notaries Revenue Report

Notaries Revenue Report

Setup & Installation

Prerequisites

Ensure you have the following installed:

  • 🐳 Docker (v20+)
  • 🧩 Docker Compose (v2+)

Quick Start

  1. Clone the repository:

    git clone https://github.com/yourusername/notary.git
    cd notary
  2. Configure environment variables: Create a .env file in the root directory with the necessary configuration values (see example in .example.env).

  3. Build and start all services:

    docker compose up -d --build
  4. Verify everything is running:

    docker compose ps
  5. View logs (optional):

    docker compose logs -f
  6. Access the application:

    • Frontend: http://localhost:3000
    • Backend API: http://localhost:8000

Overview

In many notary offices, commission must be distributed among notaries equitably. "Equitably" here means:

✅ Each new commission should be assigned to the notary with the lowest total revenue over time.

Traditionally, this process was tracked manually on paper in a notebook—prone to errors, time-consuming, and lacking transparency. This project digitizes and automates that entire workflow: 🗂️

  • 🧾 Digital record-keeping: All commissions are stored securely in the platform
  • 🧮 Automated calculations: The platform continuously tracks and calculates each notary's total revenue
  • 📊 Fair distribution: Notaries are ranked by revenue, ensuring the next commission goes to the right person
  • 🏙️ City-based isolation: Data is scoped by city for privacy and relevance

Key Features

🔐 Role-Based Access Control (RBAC)

Granular permissions and distinct interfaces for different user types:

  • 👑 Admins — Full system control, user management, and configuration
  • 🧑‍💼 Agents — Manage commission entries and generate reports
  • 🧑‍⚖️ Notaries — View their own revenue, history, and city-specific reports

🏙️ Multi-Tenant Architecture (City-Scoped)

Data segregation ensures that notaries in one city can only access reports and data for their city—no cross-contamination, enhanced privacy.

🗺️ Flexible Province & City Administration

Define and assign dedicated agents and admins for each province and city. Ideal for organizations managing notaries across multiple regions.

🧮 Law-Compliant Automatic Revenue Calculation

Revenue for each notary is computed automatically using the legally-mandated formula.

How Commission Distribution Works

Here's the workflow at a high level:

  1. 📝 Record Commission: An agent logs a new commission into the system (case details, amount, etc.)
  2. Aggregate Revenue: The platform continuously aggregates total revenue over time for each notary
  3. ⚖️ Identify Next Notary: For the next assignment, the system identifies the notary with the lowest total revenue (ensuring fair distribution)
  4. 🏙️ Generate Reports: City-scoped reports show revenue breakdown, assignment history, and more

Note: Revenue is calculated automatically using the law-defined formula implemented in the backend. 🧾✅


Tech Stack

This platform is built with a modern, scalable stack:

  • 🐍 Backend: Django + Django REST Framework (DRF) + PostgreSQL Robust Python framework with a powerful REST API layer

  • ⚛️ Frontend: Next.js + Tailwind CSS + FlyonUI
    React-based framework with server-side rendering, responsive design, and beautiful UI components

  • 🐳 Infrastructure: Docker + Docker Compose
    Containerized services with orchestration for easy local development and deployment


Roadmap

We're continuously improving the platform. Upcoming features include:

  • 🧰 Advanced table filtering for reports and user lists
  • 🔎 Global search bar (users, commissions, notaries, cities)
  • 👤 Enhanced user profiles (account details, role, city/province context, activity history)
  • 📧 Email notifications for commission assignments and important updates
  • 📊 Data export (CSV, PDF reports for auditing)
  • 🛠️ Admin dashboard improvements and tooling
  • 🧾 Extended audit trail with full action logging
  • 🌐 Multi-language support (i18n)

Built with ❤️ By Davoud Nosrati

About

My Notary Office - Notary Commission Distribution Platform

Resources

License

Stars

Watchers

Forks

Contributors