Access Control is a modular physical access management system designed to authenticate and authorize individuals in monitored environments such as residential condominiums, corporate facilities, industrial sites, and institutions.
Its main strength lies in flexibility: the system supports multiple validation channels, including biometrics, QR codes, authorization lists, corporate API integrations, and messaging applications. This modular architecture allows each component to operate independently or together, easily adapting to various scenarios and operational needs.
- Automate the authentication and entry approval process
- Integrate with physical devices (gates, turnstiles, barriers, etc.)
- Operate seamlessly alongside existing systems
- Ensure complete traceability through event logs in Sigma Cloud
- WhatsApp — Access granted via encrypted messages initiated by QR Code scanning
# Clone & navigate
git clone <repository-url> && cd access-control
# Configure environment
cp .env.example .env # Edit with your settings
# Install dependencies (auto-runs database setup)
npm install💡 Database: Import
storage.sql.examplebefore runningnpm install
npm run start:developmentnpm run build && npm run start:production| Command | Description |
|---|---|
npm run start:development |
Start the application in development |
npm run start:production |
Start the application in production |
npm run build |
Build the application for production |
npm run build:watch |
Build the application with watch mode |
npm run clean |
Clean application build artifacts |
| Command | Description |
|---|---|
npm run db:pull |
Pull database schema into Prisma across all schemas |
npm run db:push |
Push Prisma schema to the database across all schemas |
npm run db:generate |
Generate Prisma Client for all schemas |
npm run db:migrate:dev |
Run development migrations across all schemas |
npm run db:migrate:deploy |
Deploy migrations to production across all schemas |
npm run db:studio |
Open Prisma Studio (GUI) across all schemas |
npm run db:reset |
Reset database (pull + generate) for all schemas |
| Command | Description |
|---|---|
npm run docker:build:development |
Build Docker image for development |
npm run docker:build:production |
Build Docker image for production |
npm run docker:run:development |
Run development Docker container |
npm run docker:run:production |
Run production Docker container |
npm run docker:compose:up:development |
Start Docker Compose in development |
npm run docker:compose:up:production |
Start Docker Compose in production |
npm run docker:compose:up:build:development |
Start & rebuild Docker Compose in development |
npm run docker:compose:up:build:production |
Start & rebuild Docker Compose in production |
npm run docker:compose:down |
Stop Docker Compose services |
npm run docker:compose:logs |
View Docker Compose logs |
npm run docker:prune |
Clean up unused Docker resources |
| Command | Description |
|---|---|
npm test |
Run all tests once |
npm run test:watch |
Run tests in watch mode |
npm run test:coverage |
Run tests and generate a coverage report |