A Modern, Mobile-First Human Resource Management System built for the Future.
AdiCorp is a comprehensive Human Resource Management System (HRMS) designed to streamline and automate HR processes for modern businesses. Developed by Adil Munawar, this advanced system provides a complete solution for managing employee data, attendance tracking, payroll processing, and generating detailed reports.
Built with scalability, security, and developer experience in mind, AdiCorp features a robust admin dashboard alongside a seamlessly responsive employee self-service portal.
- π₯ Advanced Employee Management: Centralized directory with comprehensive profiles, document tracking, and hierarchical role management.
- β±οΈ Automated Attendance & Shifts: Precision time tracking with multi-tier shift configurations, leave requests, and real-time biometric integration capabilities.
- π° Smart Payroll & Overtime: Dynamic payroll calculator factoring in dynamic daily wages, absence deductions, and complex overtime multipliers.
- π± Mobile-First Employee Portal: A highly-optimized, PWA-ready interface allowing employees to check schedules, payslips, and request leaves on-the-go.
- π Bank-Grade Security: Row-level security (RLS) policies driven by Supabase, enforcing strict access controls between admins and employees.
- Frontend: React 18 + Vite + TypeScript
- Styling: Tailwind CSS + shadcn/ui
- State Management: TanStack Query + React Context API
- Backend & Database: Supabase (PostgreSQL + Auth + Storage)
- Deployment: Vercel
The repository is structured around modern React best practices using Vite:
adicorp/
β
βββ π src/
β βββ π components/ # Reusable UI components (auth, layout, settings, etc.)
β βββ π context/ # Global React Contexts (AuthContext, EmployeeAuthContext)
β βββ π hooks/ # Custom React hooks (useCurrency, useEmployeePortalData)
β βββ π integrations/ # External service setups (Supabase clients, generated types)
β βββ π lib/ # Utilities, branding configuration, and helpers
β βββ π pages/ # Admin routing views (Dashboard, Employees, Payroll)
β β βββ π portal/ # Employee-facing mobile portal views
β βββ π services/ # Core business logic (DataIntegrationService, ReportDataService)
β βββ π types/ # TypeScript definitions and Supabase table interfaces
β βββ π utils/ # Pure utility functions for dates, salary calculations, etc.
β βββ App.tsx # Main application router and error boundaries
β βββ index.css # Global Tailwind and base CSS
β
βββ π package.json # Dependencies and scripts
βββ π vite.config.ts # Vite bundler configuration
βββ π tailwind.config.ts # Tailwind theme definitions
βββ π vercel.json # Vercel deployment and caching rules
AdiCorp uses a highly relational PostgreSQL schema hosted on Supabase. Below is the core architectural breakdown:
| Name | Type | Constraints |
|---|---|---|
id |
uuid |
Primary |
name |
text |
|
currency |
text |
Nullable |
company_size, company_type, logo, phone, website, address |
varchar / text |
Nullable |
| Name | Type | Constraints |
|---|---|---|
id |
uuid |
Primary |
company_id |
uuid |
Nullable |
first_name, last_name, avatar_url |
text |
Nullable |
is_admin |
bool |
| Name | Type | Constraints |
|---|---|---|
id |
uuid |
Primary |
company_id |
uuid |
|
name, rank, status, wage_rate |
text / numeric |
|
salary_divisor, working_days_per_week |
int4 |
Nullable |
weekend_saturday, weekend_sunday |
bool |
Nullable |
email, phone, cnic, shift_type, bank_account_number |
text |
Nullable |
| Name | Type | Constraints |
|---|---|---|
id |
uuid |
Primary |
employee_id / company_id |
uuid |
|
date |
date |
|
status / type / title |
text |
|
affects_attendance |
bool |
Tracks available allowances and approval flows.
| Name | Type | Constraints |
|---|---|---|
id |
uuid |
Primary |
employee_id, leave_type_id |
uuid |
|
start_date, end_date |
date |
|
days_count |
numeric |
|
status |
leave_status |
Enum |
Handles all payroll generation and financial snapshots.
| Name | Type | Constraints |
|---|---|---|
id |
uuid |
Primary |
employee_id, company_id |
uuid |
|
basic_salary, gross_salary, net_salary |
numeric |
|
days_worked, present_days, short_leave_days |
int4 |
|
deductions |
jsonb |
Nullable |
company_working_settings: Global default working days and salary divisors.working_days_config: Boolean flags mapping active working days per week.monthly_working_days: JSONB configurations for custom monthly overrides.overtime_config&tier_config: Rate multipliers and constraints based on employee tiers.activity_logs: Immutable audit logs of HR actions.employee_documents: Secure references to documents uploaded to Supabase Storage.
- Node.js 18+
- npm or yarn
- A Supabase Project
-
Clone the repository
git clone https://github.com/Adilmunawar/adicorp.git cd adicorp -
Install dependencies
npm install
-
Set up Environment Variables Create a
.env.localfile in the root directory:VITE_SUPABASE_URL=your_supabase_project_url VITE_SUPABASE_ANON_KEY=your_supabase_anon_key
-
Start the Development Server
npm run dev
The application will be available at
http://localhost:8080.
We welcome contributions from developers, designers, and HR professionals to make AdiCorp the standard for open-source Enterprise HR management!
- Fork the Repository
- Create a Feature Branch:
git checkout -b feature/amazing-feature - Commit your Changes:
git commit -m 'feat: Add some amazing feature'(Please follow conventional commits) - Push to the Branch:
git push origin feature/amazing-feature - Open a Pull Request describing your changes in detail.
- Type Safety: Strictly adhere to TypeScript interfaces. Update
types.tswhen modifying Supabase schemas. - Styling: Use Tailwind CSS utilities. Avoid custom CSS unless absolutely necessary.
- Components: Utilize
shadcn/uicomponents for consistency.
- Biometric attendance integration via WebAuthn
- Advanced ML-driven HR insights and attrition prediction
- Exportable tax and compliance reporting pipelines
- Multi-tenant organizational restructuring
This project is licensed under the MIT License - see the LICENSE file for details.
For enterprise support, managed hosting, and custom feature development, please contact the lead developer directly.
Adil Munawar - Lead Developer & Architect
- π§ Email: adilmunawarx@gmail.com
- π GitHub: @Adilmunawar
- πΈ Instagram: @adilmunawarx
- πΌ LinkedIn: Connect with me
- π¦ Twitter: @adilmunawarx
- π Live Demo: adicorp.vercel.com
- π Bug Reports: GitHub Issues
Empowering businesses through innovative HR solutions. Made with β€οΈ by Adil Munawar.