A full-stack web application for managing Active Directory users and groups through a modern web interface.
LeapAD – Simplifying Active Directory Management LeapAD is a modern, serverless web application designed to streamline Active Directory (AD) administration through an intuitive and secure interface. Built with React, Flask, and LDAP3, it eliminates the need for costly third-party tools like Okta by offering seamless AD integration, near-zero infrastructure management, and robust cloud-based performance. With features such as user and group management, role-based access, and planned enhancements like AD auditing and multi-domain support, LeapAD empowers organizations to manage their directories efficiently and cost-effectively
- Manual Active Directory (AD) management was time-consuming and error-prone.
- User Interface was not user-friendly, making navigation and management cumbersome.
- Lack of a centralized interface made tracking users and groups difficult.
- Onboarding and offboarding processes were slow and inconsistent.
- Reliance on third-party solutions like Okta was expensive, increasing operational costs.
- Frontend: React application with Vite build system
- Backend: Flask REST API with LDAP3 integration
- Functions: AWS Lambda functions for extended functionality
- CI/CD: GitHub Actions with Docker containerization
- Create, read, update, and delete AD users
- Manage user attributes (name, email, group memberships)
- View user group memberships
- Bulk user operations
- Create, read, update, and delete AD groups
- Add/remove users from groups
- View group members
- Group attribute management
- Secure LDAP connections (LDAPS/StartTLS)
- Environment-based configuration
- CORS-enabled API endpoints
Frontend:
- React 18
- React Router DOM
- Axios for API calls
- Vite for development and building
Backend:
- Flask web framework
- LDAP3 for Active Directory integration
- Flask-CORS for cross-origin requests
- Python-dotenv for configuration
Infrastructure:
- AWS Lambda functions
- Docker containerization
- GitHub Actions CI/CD
-
Backend Setup:
cd backend pip install -r requirements.txt cp .env.example .env # Configure your AD settings in .env python app.py
-
Frontend Setup:
cd frontend npm install npm run dev
Configure your Active Directory connection in backend/.env:
USER_DN: Service account DNPASSWORD: Service account passwordSERVER_ADDRESS: AD server addressBASE_DN_USERS: Users base DNBASE_DN_GROUPS: Groups base DNDEFAULT_GROUP_DN: Default group for new users
GET /users- List all usersPOST /users- Create new userPUT /users- Update userDELETE /users- Delete userGET /groups- List all groupsPOST /groups- Create new groupPUT /groups- Update groupDELETE /groups- Delete group
The application supports hot reloading in development mode and includes comprehensive error handling for LDAP operations.



.png)
.png)