A modern Progressive Web Application (PWA) designed to modernize the Dolibarr ERP interface. NewDoli can be integrated as a Dolibarr module or served as a standalone application, providing an enhanced user experience with offline capabilities and local caching.
- Modern UI/UX: Clean, responsive interface built with Angular 20
- PWA Support: Offline capabilities and local data caching using Dexie
- Dual Deployment: Can be integrated as a Dolibarr module or run standalone
- Progressive Enhancement: Works seamlessly across all devices and browsers
- Authentication System: Secure login with session management
- Permission Management: User, group, and permission management with Angular guards
- Third-Party Management: Comprehensive third-party management on a single screen
- Field Visibility Control: Global and user-specific field hiding capabilities
- Offline Support: Full offline functionality with data synchronization
- Local Caching: Efficient data storage and retrieval using Dexie
- Frontend Framework: Angular 20 with TypeScript
- Styling: SCSS for modern styling capabilities
- PWA: Service Workers and Web App Manifest
- Local Database: Dexie for IndexedDB management
- Build Tool: Angular CLI with modern build configuration
- Testing: Jasmine and Karma for unit testing
- Node.js (version 18 or higher)
- npm (version 9 or higher)
- Angular CLI (version 20 or higher)
- Clone the repository:
git clone https://github.com/your-username/NewDoli.git
cd NewDoli- Install dependencies:
npm install- Start the development server:
npm startThe application will be available at http://localhost:4200/.
npm run buildThe build artifacts will be stored in the dist/ directory.
npm testNewDoli is configured as a Progressive Web Application with:
- Service Worker for offline functionality
- Web App Manifest for installability
- Responsive design for mobile and desktop
- Local data caching with Dexie
src/
βββ app/
β βββ components/ # Reusable UI components
β βββ services/ # Business logic and API services
β βββ guards/ # Route guards for authentication
β βββ models/ # TypeScript interfaces and models
β βββ pages/ # Main application pages
β βββ shared/ # Shared utilities and constants
βββ assets/ # Static assets
βββ styles/ # Global styles and themes
-
Authentication & Authorization
- Login/logout functionality
- JWT token management
- Role-based access control
- Angular route guards
-
Data Management
- Dexie integration for local storage
- API service layer
- Data synchronization
- Offline data handling
-
User Interface
- Modern component library
- Responsive design system
- Accessibility compliance
- Theme customization
NewDoli can be integrated with Dolibarr in two ways:
- Install as a standard Dolibarr module
- Access through Dolibarr's module management
- Share authentication and permissions
- Deploy independently
- Configure API endpoints for Dolibarr backend
- Maintain separate authentication if needed
We welcome contributions to NewDoli! Please follow these guidelines:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Follow Angular style guide
- Write unit tests for new features
- Ensure accessibility compliance
- Test PWA functionality
- Document new features
This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.
If you find a bug, please create an issue with:
- Clear description of the problem
- Steps to reproduce
- Expected vs actual behavior
- Browser/device information
- Project setup and configuration
- Authentication system
- Basic routing and navigation
- PWA configuration
- User management interface
- Group and permission system
- Role-based access control
- Angular guards implementation
- Third-party management
- Dexie integration
- Offline data synchronization
- Field visibility controls
- Advanced search and filtering
- Data export/import
- Customizable dashboards
- Mobile app optimization
For support and questions:
- Create an issue on GitHub
- Check the documentation
- Review existing discussions
- Dolibarr community for inspiration and API compatibility
- Angular team for the excellent framework
- Dexie team for the powerful IndexedDB wrapper
- All contributors who help make NewDoli better
NewDoli - Modernizing Dolibarr for the future of ERP management.