<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Esandu Hansaka Epa</title>
    <description>The latest articles on Forem by Esandu Hansaka Epa (@esanduepa).</description>
    <link>https://forem.com/esanduepa</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3909171%2F2feba2a5-c2d5-415c-9a35-f4acf4fe1099.jpeg</url>
      <title>Forem: Esandu Hansaka Epa</title>
      <link>https://forem.com/esanduepa</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/esanduepa"/>
    <language>en</language>
    <item>
      <title>How I Built the Admin Side of My Cricket Academy Management System</title>
      <dc:creator>Esandu Hansaka Epa</dc:creator>
      <pubDate>Wed, 06 May 2026 02:53:05 +0000</pubDate>
      <link>https://forem.com/esanduepa/how-i-built-the-admin-side-of-my-cricket-academy-management-system-gf9</link>
      <guid>https://forem.com/esanduepa/how-i-built-the-admin-side-of-my-cricket-academy-management-system-gf9</guid>
      <description>&lt;p&gt;&lt;strong&gt;How I Built the Admin Side of My Cricket Academy Management System&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;In the first post, I introduced the overall idea behind my Cricket Academy Management System and explained how the platform is built around multiple user roles.&lt;/p&gt;

&lt;p&gt;In this part, I want to focus on the &lt;strong&gt;Admin role&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;If the system is viewed as a complete academy ecosystem, then the admin side is the control center. This is the role that connects the entire operation together. From managing players and staff to handling sessions, finances, and academy-wide coordination, the admin role is responsible for keeping the platform organized and usable.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why the Admin Role Matters&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;In a multi-role system, the admin is not just another user with more permissions.&lt;/p&gt;

&lt;p&gt;The admin is the role that has visibility across the whole platform.&lt;/p&gt;

&lt;p&gt;That means the admin side needs to do more than display data. It has to support decision-making, coordination, and operational control. While players, coaches, and trainers use the system for their own tasks, the admin uses it to manage the academy as a whole.&lt;/p&gt;

&lt;p&gt;Because of that, I designed the admin area to bring several modules together in one place instead of treating them as isolated features.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Main Responsibilities of the Admin&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The admin role in this project is responsible for several important areas:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;managing staff members&lt;/li&gt;
&lt;li&gt;managing player records&lt;/li&gt;
&lt;li&gt;monitoring sessions and slot schedules&lt;/li&gt;
&lt;li&gt;overseeing academy operations&lt;/li&gt;
&lt;li&gt;viewing financial information&lt;/li&gt;
&lt;li&gt;managing tournaments and related workflows&lt;/li&gt;
&lt;li&gt;handling system-level coordination&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The goal was to make the admin experience feel like a real operational dashboard rather than just a page full of forms.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Admin Dashboard Overview&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The admin dashboard acts as the first point of control.&lt;/p&gt;

&lt;p&gt;Instead of showing a simple welcome page, I designed it to give a quick overview of the academy’s current state. This includes high-level cards, visual summaries, and schedule-related visibility so the admin can immediately understand what is happening across the system.&lt;/p&gt;

&lt;p&gt;The dashboard is designed to answer questions like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;How many staff members are active?&lt;/li&gt;
&lt;li&gt;What sessions are coming up?&lt;/li&gt;
&lt;li&gt;What tournament activity is visible?&lt;/li&gt;
&lt;li&gt;What does the revenue summary look like?&lt;/li&gt;
&lt;li&gt;What recent system activity has taken place?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This makes the dashboard useful as a monitoring space instead of just a navigation page.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Admin dashboard overview of academy operations&lt;/em&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu3sf479ytk2eoiewqe1g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu3sf479ytk2eoiewqe1g.png" alt="Admin dashboard overview of academy operations" width="800" height="497"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Staff Management&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;One important responsibility of the admin is managing staff.&lt;/p&gt;

&lt;p&gt;This includes handling coaches, trainers, and other staff-related records. Since the academy depends heavily on role-based workflows, staff management is a critical part of the system. The admin needs to maintain the people who actually run sessions, guide players, and handle operational tasks.&lt;/p&gt;

&lt;p&gt;The staff management section allows the admin to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;view staff records&lt;/li&gt;
&lt;li&gt;manage different staff roles&lt;/li&gt;
&lt;li&gt;maintain coach and trainer information&lt;/li&gt;
&lt;li&gt;support the structure of the academy through organized staff data&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This becomes especially important because other parts of the system depend on staff assignments and role-specific access.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Admin staff management interface&lt;/em&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7xw5j4x4iv7rkhblbqoq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7xw5j4x4iv7rkhblbqoq.png" alt="Admin staff management interface" width="800" height="499"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Player Management&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The admin also needs full access to player information.&lt;/p&gt;

&lt;p&gt;This includes viewing player records, managing academy data, and keeping the player side of the system organized. In a real academy setting, this is essential because player information connects with training, sessions, communication, and progress-related workflows.&lt;/p&gt;

&lt;p&gt;The player management side of the system was built so the admin can keep the academy’s records clean and manageable while still supporting a larger role-based structure.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Admin player management page&lt;/em&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3z0myhdxvnmlc4ni5jrn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3z0myhdxvnmlc4ni5jrn.png" alt="Admin player management page" width="800" height="501"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Session and Slot Management&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This is one of the most important parts of the project.&lt;/p&gt;

&lt;p&gt;A major focus of this system is not just managing users, but managing sessions in a practical way. Since sessions are central to academy operations, the admin role needs strong control over how they are created, structured, and monitored.&lt;/p&gt;

&lt;p&gt;That is why the admin side includes slot and session management views that help organize the academy timetable more clearly.&lt;/p&gt;

&lt;p&gt;This part of the system supports things like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;session templates&lt;/li&gt;
&lt;li&gt;structured scheduling&lt;/li&gt;
&lt;li&gt;weekly timetables&lt;/li&gt;
&lt;li&gt;calendar-based visibility&lt;/li&gt;
&lt;li&gt;better coordination between academy roles&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is where the admin role becomes more than a record manager. It becomes the role that shapes how the academy actually runs on a day-to-day basis.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Session template and slot setup&lt;/em&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcmkn39id3hv39fy1o2we.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcmkn39id3hv39fy1o2we.png" alt="Session template and slot setup" width="800" height="501"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Occurrences setup for academy session planning&lt;/em&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuyoovlet8sc3s17fhcjo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuyoovlet8sc3s17fhcjo.png" alt="Occurrences setup for academy session planning" width="800" height="501"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Private coach request  visibility for admin&lt;/em&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqcewcx6zykgreyl7fpj0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqcewcx6zykgreyl7fpj0.png" alt="Private coach request  visibility for admin" width="800" height="502"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Finance and Operational Monitoring&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The admin role also includes a financial monitoring side.&lt;/p&gt;

&lt;p&gt;Even though this is not the primary focus of the platform, it is still an important operational module. An admin needs some level of visibility into revenue-related information and payment-related activity because the academy does not only run on training schedules, it also runs on organized financial flows.&lt;/p&gt;

&lt;p&gt;This part of the system gives the admin a way to monitor academy-level financial information while keeping it connected to the larger management structure.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Finance overview for the admin role&lt;/em&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmeumj7lj1oxk4d36xpxe.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmeumj7lj1oxk4d36xpxe.png" alt="Finance overview for the admin role" width="800" height="502"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Tournaments as a Supporting Module&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Although tournaments are part of the project, they are not the main focus of how I designed the admin side.&lt;/p&gt;

&lt;p&gt;For this system, I treated tournaments as a supporting operational feature, while sessions remained the stronger core workflow. That decision helped keep the structure more grounded in everyday academy management rather than making the platform revolve around occasional events.&lt;/p&gt;

&lt;p&gt;So while the admin can still handle tournament-related processes, the larger design emphasis remains on coordination, scheduling, and role-based management.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Technical Thinking Behind the Admin Role&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;One of the most interesting parts of building the admin role was that it required me to connect multiple modules in a meaningful way.&lt;/p&gt;

&lt;p&gt;This was not just about giving one role more pages.&lt;/p&gt;

&lt;p&gt;It was about making sure that:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;the admin has broader visibility than other users&lt;/li&gt;
&lt;li&gt;the admin workflow feels centralized&lt;/li&gt;
&lt;li&gt;different modules still fit together logically&lt;/li&gt;
&lt;li&gt;session-based operations remain easy to manage&lt;/li&gt;
&lt;li&gt;the system supports realistic academy responsibilities&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Since the project was built using &lt;strong&gt;pure PHP, HTML, CSS, and JavaScript without frameworks&lt;/strong&gt;, building the admin side also helped me understand the structure of the application much more deeply. I had to think carefully about routing, role restrictions, module organization, and how data flows between different parts of the system.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Final Thoughts&lt;/strong&gt;&lt;br&gt;
The admin role became one of the most important parts of this project because it acts as the connection point between almost every major module.&lt;/p&gt;

&lt;p&gt;It is where player management, staff management, sessions, finance, and academy coordination come together.&lt;/p&gt;

&lt;p&gt;More importantly, it helped me move beyond the idea of building isolated pages and toward building a system where one role can manage real workflows across an entire platform.&lt;/p&gt;

&lt;p&gt;In the next post, I’ll move on to the Coach role and show how the system changes when the focus shifts from academy-wide control to player-facing training responsibilities.&lt;/p&gt;

</description>
      <category>devjournal</category>
      <category>showdev</category>
      <category>systemdesign</category>
      <category>webdev</category>
    </item>
    <item>
      <title>What Happens When You Build a Real Management System Without Any Frameworks</title>
      <dc:creator>Esandu Hansaka Epa</dc:creator>
      <pubDate>Sat, 02 May 2026 15:37:00 +0000</pubDate>
      <link>https://forem.com/esanduepa/elite-cricket-academy-intro-5e1o</link>
      <guid>https://forem.com/esanduepa/elite-cricket-academy-intro-5e1o</guid>
      <description>&lt;p&gt;Running a cricket academy is much more than registering players and scheduling a few events.&lt;/p&gt;

&lt;p&gt;The real challenge is in the daily flow of operations.&lt;/p&gt;

&lt;p&gt;Who manages player records? Who handles staff coordination? How are training sessions scheduled? How do coaches and trainers work with different responsibilities? How do players view their sessions, progress, and bookings?&lt;/p&gt;

&lt;p&gt;That is the idea behind the project I built: &lt;strong&gt;a multi-role Cricket Academy Management System&lt;/strong&gt; designed to support the real workflows of an academy through one connected platform.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8p4hj6v2su5c1xf6u467.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8p4hj6v2su5c1xf6u467.png" alt="Overview of the cricket academy management system" width="800" height="502"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This is not just a basic management website with a login screen and a few forms.&lt;/p&gt;

&lt;p&gt;It is a role-based system where each user sees a different side of the academy.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Admin : Manages overall system&lt;/li&gt;
&lt;li&gt;Coach : Players &amp;amp; training&lt;/li&gt;
&lt;li&gt;Trainer : Fitness &amp;amp; structured sessions&lt;/li&gt;
&lt;li&gt;Player : Sessions &amp;amp; schedules&lt;/li&gt;
&lt;li&gt;Shop : Shop &amp;amp; Rentals&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Why I built this&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I wanted to build something that felt closer to a real-world software product.&lt;/p&gt;

&lt;p&gt;Many projects stop at simple CRUD operations, but real systems are shaped by user responsibilities. A cricket academy is a good example of that — it has multiple people doing different kinds of work, and all of them depend on organized information.&lt;/p&gt;

&lt;p&gt;In this project, I focused on building a system where:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;each role has its own dashboard and workflow&lt;/li&gt;
&lt;li&gt;sessions are a core operational feature&lt;/li&gt;
&lt;li&gt;staff and players interact with the system differently&lt;/li&gt;
&lt;li&gt;scheduling and management feel practical, not just visual&lt;/li&gt;
&lt;li&gt;separate modules still work together as one product&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;The main idea behind the system&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;At the heart of the platform is the idea that an academy runs on coordination.&lt;/p&gt;

&lt;p&gt;And one of the biggest parts of that coordination is sessions.&lt;/p&gt;

&lt;p&gt;SESSIONS CONNECT EVERY PART OF THE SYSTEM&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Admins manage the overall structure and scheduling&lt;/li&gt;
&lt;li&gt;Coaches and trainers conduct and oversee sessions&lt;/li&gt;
&lt;li&gt;Players depend on session visibility and participation&lt;/li&gt;
&lt;li&gt;Scheduling affects both staff and academy resources&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzz7xiijjyy6d62sa5kzq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzz7xiijjyy6d62sa5kzq.png" alt="Session management or weekly schedule interface" width="800" height="456"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Because of that, session management becomes more than just showing a timetable. It becomes one of the main ways the system reflects real academy operations.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What this series covers&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe4x8160y6u30qfd1s0kx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe4x8160y6u30qfd1s0kx.png" alt="What this series covers" width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Each post will focus on one role: what that role does in the system, what features are available to them, how the interface supports their responsibilities, and how that role connects with the larger academy workflow.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What makes this project different&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This project was designed with a role-first mindset.&lt;/p&gt;

&lt;p&gt;Instead of only thinking about features page by page, I focused on questions like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Who creates and manages sessions?&lt;/li&gt;
&lt;li&gt;Who needs to see upcoming schedules?&lt;/li&gt;
&lt;li&gt;Who is allowed to manage staff or players?&lt;/li&gt;
&lt;li&gt;How should different dashboards behave for different users?&lt;/li&gt;
&lt;li&gt;How do we keep the system useful for both management and daily operations?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That approach made the project more realistic and much more meaningful to build.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F12sb2ufsqvwyfwz1f1bc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F12sb2ufsqvwyfwz1f1bc.png" alt="How different roles connect through the system" width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Technologies Behind the Project&lt;/strong&gt;&lt;br&gt;
This project was built completely using pure PHP, HTML, CSS, and JavaScript &lt;strong&gt;without relying on any frameworks&lt;/strong&gt;. I wanted to focus on understanding the core logic behind a multi-role system by building the structure, routing, backend handling, and frontend behavior more directly.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Pure PHP for backend development&lt;/li&gt;
&lt;li&gt;MySQL for database management&lt;/li&gt;
&lt;li&gt;HTML, CSS, and JavaScript for the user interface&lt;/li&gt;
&lt;li&gt;MVC architecture for clean project organization&lt;/li&gt;
&lt;li&gt;Chart.js for analytics and dashboard charts&lt;/li&gt;
&lt;li&gt;Email integration for notifications and account-related communication&lt;/li&gt;
&lt;li&gt;PayHere for online payment processing&lt;/li&gt;
&lt;li&gt;XAMPP for local development and testing&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;What you can expect from this series&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;In the next five posts, I'll break the system down role by role and show how each user interacts with it.&lt;/p&gt;

&lt;p&gt;This series will be useful if you are interested in:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;multi-role application design&lt;/li&gt;
&lt;li&gt;role-based dashboards&lt;/li&gt;
&lt;li&gt;session and schedule management systems&lt;/li&gt;
&lt;li&gt;practical web application structure&lt;/li&gt;
&lt;li&gt;building software that reflects real workflows&lt;/li&gt;
&lt;li&gt;full scratch web dev&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A management system is not only about storing data. It is about supporting people in their responsibilities and helping different parts of an organization work together smoothly. For this system, sessions became one of the strongest examples of that idea.&lt;/p&gt;

&lt;p&gt;In the next post, I'll start with the &lt;strong&gt;Admin role&lt;/strong&gt; and show how the central management side of the academy works.&lt;/p&gt;

&lt;p&gt;If you are building something similar or have questions about multi-role system design, drop a comment below.&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>php</category>
      <category>webdev</category>
      <category>learning</category>
    </item>
  </channel>
</rss>
