MCPSERV.CLUB
RosarioSIS

RosarioSIS

Self-Hosted

All-in-one school management for K‑12 and beyond

Stale(40)
0stars
0views

Overview

Discover what makes RosarioSIS powerful

RosarioSIS is a **free, open‑source Student Information System (SIS)** written in PHP and designed to run as a single web application. It consolidates core school‑management functions—student demographics, grades, scheduling, attendance, billing, discipline, and food service—into a unified interface that can be accessed from any browser. The application is built to scale across K‑12 schools, colleges, and universities while remaining lightweight enough for modest hosting environments.

Language

Framework

Templating

Database

Overview

RosarioSIS is a free, open‑source Student Information System (SIS) written in PHP and designed to run as a single web application. It consolidates core school‑management functions—student demographics, grades, scheduling, attendance, billing, discipline, and food service—into a unified interface that can be accessed from any browser. The application is built to scale across K‑12 schools, colleges, and universities while remaining lightweight enough for modest hosting environments.

Technical Stack & Architecture

  • Language: PHP 7.4+ (object‑oriented codebase, PSR‑4 autoloading)
  • Framework: Custom MVC framework (no external dependency on Laravel, Symfony, etc.) but follows similar conventions for routing, controllers, and views
  • Templating: PHP‑based templates with optional integration of Blade or Twig for advanced projects
  • Database: PostgreSQL (recommended) or MySQL; schema migration scripts are available in SQL and PHP
  • Front‑end: Bootstrap 4 for responsive UI, jQuery/Bootstrap‑JS for interactivity; optional integration of React/Vue via component scaffolding
  • Reporting: PDF generation through TCPDF/FPDF, charting via Chart.js

The application follows a layered architecture: the Presentation layer renders views, the Business Logic layer contains service classes that encapsulate domain rules, and the Data Access layer uses PDO with prepared statements for database interaction. Configuration is handled via a config.php file and environment variables, making it easy to swap database drivers or enable caching layers.

Core Capabilities & APIs

  • RESTful API: Exposes endpoints for CRUD operations on students, classes, grades, and attendance. Authentication is token‑based (JWT) or session‑based.
  • Webhooks: Configurable event triggers for external systems (e.g., sending attendance alerts to a Slack channel).
  • Moodle Integration: Native support for synchronizing user accounts and grades with Moodle via LDAP or REST, allowing seamless LMS‑SIS coupling.
  • Plugin System: Developers can add modules through the “Add‑on” framework; each plugin registers its routes, database migrations, and UI components.
  • Extensible Reporting: Custom report templates can be created using the built‑in PDF and charting modules, with data sourced from any database query.

Deployment & Infrastructure

RosarioSIS is a classic LAMP/LEMP stack application. It can be deployed on:

  • Bare‑metal servers (Apache/Nginx + PHP-FPM)
  • Virtual machines or Docker containers: A Dockerfile is provided, enabling containerized deployment with docker-compose for database and web services.
  • Cloud platforms: Compatible with AWS, Azure, DigitalOcean, or any VPS that supports PHP and a relational database.
  • Scalability: Horizontal scaling is achievable by separating the web tier from the database, using load balancers, and employing a managed PostgreSQL service.

Integration & Extensibility

The plugin architecture allows developers to:

  • Add new modules (e.g., a library system) without touching core code.
  • Hook into lifecycle events (student enrollment, grade submission) via observer callbacks.
  • Expose custom REST endpoints for third‑party integrations.
  • Override templates or CSS to match institutional branding.

Additionally, the API supports OAuth2 and basic authentication, making it straightforward to build mobile apps or integrate with existing enterprise systems.

Developer Experience

  • Documentation: The GitHub repo contains a comprehensive README, API reference, and migration guides. Inline code comments aid comprehension.
  • Community: Active forums and a Slack channel provide support; the project follows GPLv2, encouraging community contributions.
  • Configuration: Minimal setup—just copy the .env.example to .env, run migrations, and point your web server. Advanced users can enable caching (Redis) or switch to PostgreSQL effortlessly.
  • Testing: PHPUnit tests cover core modules; CI pipelines ensure code quality before merges.

Use Cases

  1. K‑12 School: Replace legacy spreadsheets with a unified SIS, integrate attendance tracking with automated parent notifications.
  2. Colleges: Manage student billing and course registration, sync grades with an LMS like Moodle.
  3. Private Academies: Deploy a lightweight solution on a single server, extend it with custom modules for tutoring or exam scheduling.
  4. Non‑profits: Offer a free, GPLv2‑licensed system to underserved schools with limited budgets.

Advantages

  • Performance: Lightweight PHP code and efficient PDO queries keep response times low even with thousands of records.
  • Flexibility: No heavy framework constraints; developers can swap templating engines or add JavaScript frameworks as needed.
  • Licensing: GPLv2 allows commercial use and modification without royalty obligations.
  • Community & Extensibility: A growing ecosystem of add‑ons and a clear plugin API make it easy to tailor the system to niche requirements.

In summary, RosarioSIS delivers a robust, modular SIS solution that balances ease of deployment with developer‑friendly extensibility, making it an attractive choice for institutions seeking a self‑hosted, customizable educational platform.

Open SourceReady to get started?

Join the community and start self-hosting RosarioSIS today