Desk Allocation System

A gamified office management app for Frappe/ERPNext that automates quarterly team seating shuffles with a randomized desk-to-employee distribution engine.(internal project)

Install Desk Allocation System

bench get-app https://github.com/yashtilala412/Desk_Allocation_System

Add the Frappe Gems badge to your README

Maintain Desk Allocation System? Paste this into your README:

[![Listed on Frappe Gems](https://frappegems.com/api/method/frappe_gems.seo.badge?app=yashtilala412%2FDesk_Allocation_System)](https://frappegems.com/gems/apps/yashtilala412/Desk_Allocation_System)

About Desk Allocation System

Desk Allocation System 🎡

A custom Frappe application designed to simplify and gamify the complex process of office desk management and quarterly seating rearrangements.

🌟 Key Highlights

  • Gamified Team Assignment: Uses an interactive HTML5 Canvas "Spinning Wheel" to assign Departments to specific Office Bays, making administrative tasks engaging.
  • Automated Randomization: Eliminates bias in seating by using a Python-based randomization engine to pair employees with desks.
  • ERPNext Integrated: Seamlessly pulls real-time data from ERPNext Employee and Department records.
  • Capacity-Aware Logic: The system intelligently validates Bay capacity against Department size before allowing an allocation.
  • Conflict Prevention: Built-in logic ensures no Bay is double-allocated and no Department spins twice in a single session.
  • Audit Trail: Keeps a clear log of "Current Session Allocations" for transparency.

🛠️ Tech Stack

  • Backend: Frappe (Python/MariaDB)
  • Frontend: JavaScript (HTML5 Canvas, jQuery)
  • Framework: Frappe Framework v14/v15

alt text alt text

Desk Allocator

this app randomize desk allocation to employees in company

Installation

You can install this app using the bench CLI:

cd $PATH_TO_YOUR_BENCH
bench get-app https://github.com/yashtilala412/Desk_Allocation_System
bench install-app desk_allocator

Contributing

This app uses pre-commit for code formatting and linting. Please install pre-commit and enable it for this repository:

cd apps/desk_allocator
pre-commit install

Pre-commit is configured to use the following tools for checking and formatting your code:

  • ruff
  • eslint
  • prettier
  • pyupgrade

License

mit

Related Developer Tools apps for Frappe & ERPNext

  • Frappe — Low code web framework for real world applications, in Python and Javascript
  • Frappe Docker — Docker environment for developing, deploying, and running Frappe applications (ERPNext and custom apps) in production and development
  • Builder — Craft beautiful websites effortlessly with an intuitive visual builder and publish them instantly
  • Bench — CLI to manage Multi-tenant deployments for Frappe apps
  • Frappe Ui — A set of components and utilities for rapid UI development
  • Press — Full service cloud hosting for the Frappe stack - powers Frappe Cloud
  • Gameplan — Open Source Discussions Platform for Remote Teams
  • Doppio — A Frappe app (CLI) to magically setup single page applications and Vue/React powered desk pages on your custom Frappe apps.