RSI Lab built the OCSAR platform on Drupal, as a section of BRAC University’s wider institutional site. Reusing the university’s Drupal stack meant shared login, shared theming, and shared publishing conventions from day one. The OCSAR site is part of BRACU, not a lookalike bolted on beside it.
The platform is a set of custom Drupal modules, each replacing a specific manual workflow while sharing identity, data, payment infrastructure, permissions, and the wider BRACU design system.
1. Alumni Identity and Self-Service
A guided onboarding flow lets graduates activate an account and maintain their own profile, backed by campaign banners that drive registration. This becomes the foundation for every other module: one identity, one profile record, kept current by the person it belongs to.
2. Alumni ID Card Module
A purpose-built module handles application, fee payment, and issuance end to end. The form guides applicants through formal passport-style photo requirements using an inline SVG example and explicit acceptance rules, and a live SVG card preview shows exactly what will be printed. Both steps prevent rejected submissions before they reach staff.
3. Alumni Election Hub
Elections are modeled as structured entities, elections, positions, and candidates, rather than as documents. The public hub shows a horizontal timeline of phases, candidate profiles, and organized nomination and voting information. A candidacy-fee gate is enforced through the platform’s payment integration before an application can proceed.
4. Appointment Management System
A React 18 and TypeScript application, built with Vite and embedded inside Drupal, lets students and alumni book counselling and advising slots with OCSAR staff. FullCalendar powers the calendar surface, with toolbar controls, staff-side slot management, and the complete booking workflow. The application talks to Drupal through a REST layer.
5. Events and Campaigns
Reusable event microsite patterns allow campaigns to be assembled rather than rebuilt. The RS Alumni Picnic 2027 Silver Jubilee page, for example, carries a hero, contribution tiers, phased registration, payment details, quick links, and contacts, and was refined through successive client change requests.
6. Career Services
Job and internship listings, employer engagement, and placement-support surfaces connect current students and alumni with opportunities through the same identity used across the platform.
Platform Architecture and Engineering
One payment integration, reused everywhere. SSLCommerz is integrated once, with server-side validation, IPN handling, and a per-transaction log. Shared configuration is read by the ID card and election modules, so ID card fees, candidacy fees, and event contributions all use the same verified payment path.
React inside Drupal without a rewrite. The appointment UI is a modern React 18, TypeScript, and Vite build packaged as a Drupal plugin. Drupal owns identity, data, and routing. React owns calendar interaction. The two layers stay deliberately separated.
SVG as a document format. ID cards are generated by injecting values into an SVG template, which gives a pixel-accurate live browser preview and a print-ready artifact from the same source.
Role-scoped publishing. OCSAR permissions are scoped to their own content types, so the team publishes events, campaigns, jobs, and notices directly, without central IT intervention.
Shared Platform Benefits
- Unified identity. Students and alumni use one account across profile, appointments, elections, ID cards, and career services.
- Drupal-native integration. OCSAR remains part of the wider BRAC University platform, keeping content, navigation, theming, and publishing conventions consistent.
- Mobile-first experience. Core workflows are designed for the phone-first behavior of students and alumni.
- Role-based editorial access. OCSAR staff publish approved events, campaigns, job posts, and notices without relying on central IT for routine changes.
- Reusable campaign model. Established event and campaign patterns make future reunions, drives, and initiatives faster to launch and easier to maintain.
- Bilingual-ready. English is the primary language, with Bangla content supported where the audience requires it.