What is Shibutz?
Shibutz is a web-based application for quickly generating balanced class list assignments for elementary schools. (The name Shibutz means “assignment” or “allocation” in Hebrew.) It was created to streamline the tedious process of organizing class rosters, which was traditionally done by hand with spreadsheets and outside services. The platform enables school administrators to create class lists in hours instead of weeks, reducing potential oversights and ensuring a smoother start to the school year. Shibutz launched in January 2025 as a free service, motivated by real-world challenges observed in schools, and aims to continuously improve through user feedback.
Features
- Easy Class Creation: Set up multiple new classes and manage student lists with an intuitive web UI.
- Student Data Import: Enter student information manually or import via Excel (using a provided template) for efficiency.
- Rich Student Profiles: Include attributes for each student – gender, behavioral, emotional, social, and learning skill levels – to aid in balancing classes.
- Friend Grouping: Allow each student to list up to three friends they’d like to stay with, helping keep friends together in the same class when possible.
- Custom Constraints: Define specific pairing or separation requirements. Mark certain students as a match (always together in a class) or mismatch (never in the same class). Additionally, assign individual students to a particular class if needed (for example, keeping siblings apart or accommodating special placements).
- Automated Assignment Generation: Generate an unlimited number of class list assignments with one click. The system’s intelligent algorithm shuffles students and produces class groupings that meet all the specified criteria, allowing administrators to iterate until satisfied.
- User-Friendly Interface: Clean, responsive design with a user-friendly landing page and guided steps (Import Data → Set Parameters → Generate) to walk users through the class creation process.
- Support & Resources: The platform includes a companion blog with documentation and how-to guides for new users, a set of free auxiliary tools for educators (for related tasks like random group picking, etc.), and a public change log to track updates.
Technology Stack
- Next.js (React + TypeScript) – provides the core framework for a fast, interactive web front-end and server-side rendering.
- Tailwind CSS for styling and Shadcn UI components – used to build a clean, modern interface quickly while ensuring consistency and responsiveness across the app.
Challenges
Shibutz’s development journey involved overcoming both technical and user-experience challenges. The project began as a proof-of-concept command-line tool that formulated the class assignment problem as a set of mathematical constraints. By using a constraint-solving library (Microsoft’s ZenLib in the early prototype), the developer proved that an algorithm could automatically allocate students to classes while satisfying numerous conditions. However, a command-line solution was not accessible to the average school administrator. To bridge this gap, an interim desktop application (built with WPF on Windows) was created, wrapping the solving engine in a basic GUI. This desktop tool was successfully used in a couple of schools (validating the concept with real data), but it revealed new challenges: it lacked a polished user experience and was cumbersome to update or distribute widely.
These lessons led to the decision to rebuild Shibutz as a web application for broader reach and easier maintenance. Transitioning to the web stack required the developer to step outside their usual domain (having little prior web development experience). Choosing Next.js and leveraging ready-made UI frameworks (Tailwind CSS with Shadcn) helped accelerate development and flatten the learning curve. The result is a far more intuitive, accessible interface that any teacher or administrator can use with minimal training. Another technical challenge was ensuring the algorithm could balance all the factors (friend preferences, gender ratios, varying skill levels, etc.) simultaneously in a reasonable time. By treating it as a constraint satisfaction problem and refining the solving approach, Shibutz efficiently finds class distributions that meet the diverse criteria. The successful launch as a free service has provided valuable feedback and real-world testing, and there are plans to introduce monetization and additional features as the user base grows.
Screenshots


