https://github.com/aadhar41/society-services
This repository contains the source code for a society services project built with Laravel PHP. The project aims to provide a platform for managing various services within a society or residential complex.
https://github.com/aadhar41/society-services
blade-template css3 git github html5 laravel laravel12 mysql npm php vite
Last synced: 2 months ago
JSON representation
This repository contains the source code for a society services project built with Laravel PHP. The project aims to provide a platform for managing various services within a society or residential complex.
- Host: GitHub
- URL: https://github.com/aadhar41/society-services
- Owner: aadhar41
- License: other
- Created: 2023-03-11T06:32:29.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2026-04-12T04:07:55.000Z (2 months ago)
- Last Synced: 2026-04-12T06:11:32.417Z (2 months ago)
- Topics: blade-template, css3, git, github, html5, laravel, laravel12, mysql, npm, php, vite
- Language: Blade
- Homepage:
- Size: 7.77 MB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 10
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# Society Accounting Management System




## πΌοΈ Screenshots
| Comprehensive ERP Dashboard | Society Management | Block Management |
| :---: | :---: | :---: |
|  |  |  |
| *Modern Dashboard UI* | *Society List View* | *Block Management View* |
| Plot Management | Flat Management | Maintenance Records |
| :---: | :---: | :---: |
|  |  |  |
| *Plot Tracking* | *Unit & Resident View* | *Billing & Payments* |
| Maintenance Reports (Grid) | Outstanding Report |
| :---: | :---: |
|  |  |
| *Financial Grid Overview* | *Defaulter Tracking* |
---
## π Overview
**Society Accounting Management System (SAMS)** is a highly scalable, multi-tenant SaaS-based Society ERP. Built with Domain-Driven Design (DDD) principles, it provides robust accounting, automated billing, and a seamless resident experience.
---
## β¨ Key Features (ERP Foundation)
β
**Multi-Tenancy & Security**
- Shared schema isolation using `society_id` scope.
- Global `SocietyScope` with automated filtering.
- JWT/Sanctum based API authentication.
β
**Professional Accounting Engine**
- Double-entry bookkeeping system (balanced journal entries).
- Dynamic Chart of Accounts tailored for Indian Societies.
- Automated generation of Trial Balance, Balance Sheet, and P&L.
β
**Automated Billing & Recovery**
- Group-based charge generation (Maintenance, Sinking Fund, etc.).
- Recurring invoice generation with balance tracking.
- Automated late fee calculation and defaulter reports.
β
**Society Infrastructure Management**
- Modular setup for Wings, Floors, Units, and Parking Slots.
- Comprehensive Member & Resident lifecycle management.
- Visitor management with OTP verification.
---
## π οΈ Tech Stack
- **Backend:** Laravel 12.x (PHP 8.2+)
- **Database:** PostgreSQL (Core ERP)
- **Frontend:** React + Tailwind CSS (V2) / AdminLTE (Legacy)
- **Cache/Queue:** Redis
- **Auth:** Sanctum / JWT
---
## π¦ Localhost Installation
1. **Clone the repository:**
```bash
git clone https://github.com/aadhar41/society-services.git
cd society-services
```
2. **Setup Dependencies:**
```bash
composer install
npm install
```
3. **Configure Environment:**
- Copy `.env.example` to `.env`
- Set legacy `DB_CONNECTION=pgsql` (recommended).
- Generate key: `php artisan key:generate`
4. **Initialize Database & Demo Data:**
```bash
php artisan migrate:fresh --seed
```
5. **Start Dev Server:**
```bash
php artisan serve
```
---
## π― Usage
### Basic Usage
#### Creating a Society
1. Navigate to the "Societies" section in the admin panel
2. Click "Add Record" to create a new society
3. Fill in the required details:
- Name
- Address
- Contact information
- Description
- Location details (country, state, city)
```php
// Example of creating a society via API
$response = Http::post('/api/societies', [
'name' => 'Green Acres Society',
'address' => '123 Main Street, City',
'contact' => '1234567890',
'country' => 'Country ID',
'state' => 'State ID',
'city' => 'City ID',
'description' => 'A beautiful residential complex'
]);
```
#### Managing Blocks
1. Select a society from the dropdown
2. Click "Add Record" to create a new block
3. Enter block details:
- Name
- Total flats
- Description
- Status
```php
// Example of creating a block via API
$response = Http::post('/api/societies/{society_id}/blocks', [
'name' => 'Block A',
'total_flats' => 50,
'description' => 'Main residential block'
]);
```
#### Recording Maintenance Payments
1. Navigate to the "Maintenance" section
2. Select the appropriate flat
3. Enter maintenance details:
- Type (monthly, lift, donation, etc.)
- Date
- Amount
- Description
- Attachments (if any)
```php
// Example of creating a maintenance record via API
$response = Http::post('/api/societies/{society_id}/blocks/{block_id}/flats/{flat_id}/maintenance', [
'type' => 'monthly',
'date' => '2023-05-15',
'year' => 2023,
'month' => 5,
'amount' => 5000,
'description' => 'Monthly maintenance charges',
'attachments' => 'path/to/receipt.pdf'
]);
```
### Advanced Usage
#### Customizing the UI
1. Edit the SCSS files in `resources/sass/app.scss`
2. Modify the layout in `resources/views/layouts/app.blade.php`
3. Update the JavaScript logic in `resources/js/app.js`
#### Extending Functionality
1. Create new controllers and models following the existing pattern
2. Add new routes in `routes/web.php` and `routes/api.php`
3. Create new views in the `resources/views` directory
4. Add new migrations using `php artisan make:migration`
```bash
php artisan make:controller ComplaintController --api
```
#### API Integration
The system provides a comprehensive API for mobile applications and other integrations:
```php
// Example of API authentication
$response = Http::withHeaders([
'Authorization' => 'Bearer ' . $token
])->get('/api/societies');
```
---
## π Project Structure
```bash
society-accounting/
βββ app/ # Application source code
β βββ Http/ # Controllers, Middleware, etc.
β βββ Models/ # Eloquent models
β βββ Providers/ # Service providers
β βββ Repositories/ # Repository interfaces and implementations
β βββ ...
βββ config/ # Configuration files
βββ database/ # Database migrations and seeders
βββ public/ # Publicly accessible files
βββ resources/ # Views, languages, assets
β βββ js/ # JavaScript files
β βββ sass/ # SCSS stylesheets
β βββ views/ # Blade templates
βββ routes/ # Route definitions
βββ tests/ # Test cases
βββ vendor/ # Composer dependencies
βββ .env # Environment configuration
βββ .gitignore # Git ignore rules
βββ artisan # Laravel artisan CLI
βββ composer.json # PHP dependencies
βββ package.json # JavaScript dependencies
βββ README.md # This file
```
---
## π§ Configuration
### Environment Variables
Copy `.env.example` to `.env` and configure your environment:
```env
# Application settings
APP_NAME=Society Accounting
APP_ENV=local
APP_KEY=your-app-key
APP_DEBUG=true
APP_URL=http://localhost
# Database settings
DB_CONNECTION=pgsql
DB_HOST=127.0.0.1
DB_PORT=5432
DB_DATABASE=your_database
DB_USERNAME=your_username
DB_PASSWORD=your_password
# Mail settings
MAIL_MAILER=smtp
MAIL_HOST=mailhog
MAIL_PORT=1025
# Caching
CACHE_DRIVER=file
# Session
SESSION_DRIVER=file
SESSION_LIFETIME=120
# Authentication
SANCTUM_STATEFUL_DOMAINS=localhost
```
### Customization Options
1. **Change the Admin Panel Theme:**
Edit the `resources/sass/app.scss` file to customize colors and styles
2. **Modify User Roles and Permissions:**
Update the `app/Policies` directory and adjust the middleware in `app/Http/Kernel.php`
3. **Add New Features:**
Follow the existing pattern to add new models, controllers, and views
4. **Configure Payment Gateways:**
Edit the payment-related configurations in the `config/services.php` file
---
## π License
### PROPRIETARY SOFTWARE - ALL RIGHTS RESERVED
This software and its source code are the exclusive property of **Aadhar Gaur**.
- **NO UNAUTHORIZED USE:** No person or organization may use, copy, modify, or distribute this software without express written permission or a valid purchase agreement.
- **COMMERCIAL LICENSING:** For purchasing a license or commercial inquiries, contact: .
---
## π¨ Design System
Our V2 architecture utilizes a premium design system with dynamic themes and sleek micro-animations for a high-end SaaS experience.
---
## π€ Contributing
This is a proprietary repository. Contributions are only accepted from authorized team members. See [CONTRIBUTING.md](CONTRIBUTING.md) for details.
---
## π₯ Authors & Contributors
- **Aadhar Gaur** ([@aadhar41](https://github.com/aadhar41)) - Lead Architect & Developer
---
## π Issues & Support
### Reporting Issues
If you encounter any problems or have feature requests, please:
1. **Check existing issues** to avoid duplicates
2. **Create a new issue** with:
- Clear description of the problem
- Steps to reproduce
- Expected behavior
- Your environment details
- Any relevant error messages
### Getting Help
- **Community Support**: Join our [Discussion Forum](link-to-forum)
- **Official Documentation**:
- **Email Support**:
### FAQ
**Q: How do I reset my password?**
A: Visit the `/forgot-password` route and follow the instructions sent to your email.
**Q: Can I use this system for commercial purposes?**
A: This is a proprietary system. Commercial use requires a valid license agreement from the author.
**Q: Does this system support multi-tenancy?**
A: Yes, each society can be considered a separate tenant with its own data.
**Q: Can I customize the UI?**
A: Absolutely! The system uses AdminLTE and SCSS, making it easy to customize the appearance.
---
## πΊοΈ Roadmap (V2)
- [ ] Multi-Gateway Payment integration (Razorpay/Stripe)
- [ ] Mobile Resident App (Flutter/React Native)
- [ ] AI-driven Cashflow Forecasting
- [ ] IoT Integration for Smart Metering
---
## π Getting Started
Ready to get started with the Society Accounting Management System? Follow these steps:
1. **Install the system** as described above
2. **Set up your database** with the provided migrations
3. **Customize the system** to fit your specific needs
4. **Start managing your society** efficiently!
Join our community of users and developers to share experiences, ask questions, and contribute to the project's growth. Together, we can make society management easier and more efficient for everyone!
Thank you for choosing the **Society Accounting Management System**. We are committed to building the future of residential community management.