A powerful platform designed to supercharge business app development and streamline internal tool creation. Manage, organize, and innovate—all in one place
- Accelerate development and reduce effort. Leverage industry-specific templates, pre-built modules, and out-of-the-box features.
- Ensure flexibility and scalability. Build applications with dynamic entities and choose from multiple multi-tenancy models.
- Utilize familiar technologies: Java, Spring Boot, JavaScript, HTML, ReactJS, SpringAI, BPMN, Hibernate, PostgreSQL.
- Expand at will. Dynamo provides unlimited customization and seamless integration options.
🚀 Overview
📚 Libraries Included
🛠️ Using Dynamo
🔨 Building From Source
📝 Release Notes
📄 License
🤝 Support
The Dynamo Framework is a comprehensive, modular framework that simplifies the development of large-scale enterprise applications. Built using Java and Spring Boot, Dynamo integrates a range of essential libraries for different functionalities such as AI integration, authentication, AWS services, batch processing, CSV handling, and more. Each library is designed to serve a distinct purpose, offering flexibility and scalability to the application development process.
- dynamo-ai: Leverages OpenAI and Spring AI for intelligent capabilities.
- dynamo-auth: Supports FusionAuth and Active Directory for secure authentication management.
- dynamo-aws: Simplifies AWS services integration like SNS, S3, DynamoDB.
- dynamo-batch: Manages batch operations with ease.
- dynamo-csv: Facilitates CSV parsing and generation using OpenCSV.
- dynamo-form-builder: Uses Jackson to easily manage form data.
- dynamo-generics-crud: Provides a CRUD operation layer with JPA and QueryDSL.
- dynamo-iac: Infrastructure as Code (IaC) integration with AWS CDK.
- dynamo-image: Image processing via ImgScalr.
- dynamo-logging: Centralized logging with Log4j2.
- dynamo-push-notification: Manages to push notifications via AWS SNS.
- dynamo-pages: Uses CommonMark for dynamic page generation and markdown handling.
- dynamo-sdk-lib-bom: Ensures consistent version management for all functional libraries.
- dynamo-user-management: Provides user management capabilities using AWS Cognito.
- dynamo-utils: Utility library including Commons Text, Hibernate Validator, and custom exceptions.
- dynamo-workflow: Integrates Camunda BPM for workflow management with Spring Boot.
- Java: 17+
- Maven: 3.x+
- Spring Boot: 3.2.x
- AWS: For AWS-related modules
- PostgreSQL: (Optional) For persistence modules
To use any of the Dynamo libraries, include them in your pom.xml
as follows:
<dependency>
<groupId>net.breezeware.dynamo</groupId>
<artifactId>dynamo-{module}</artifactId>
<version>{version}</version>
</dependency>
Replace {module}
with the desired module name, such as dynamo-ai, dynamo-aws, etc., and {version}
with the desired version.
Example:
<dependency>
<groupId>net.breezeware.dynamo</groupId>
<artifactId>dynamo-auth</artifactId>
<version>1.44.0</version>
</dependency>
Each module may require specific configurations. Please refer to the individual module documentation for detailed setup instructions.
To build Dynamo from the source, follow these steps:
-
Clone the Repository:
git clone https://github.com/Breezeware-OS/dynamo-framework.git
-
Build the Project Using Maven:
cd dynamo-framework mvn clean install
-
Include Specific Modules in Your Project:
Add the required library modules to your project's
pom.xml
as shown in the Dependencies section.
Below is the version history of the Dynamo Framework Library:
Version | Changes |
---|---|
v1.44.0 | - Added Push Notification Support. |
v1.43.0 | - Updated Spring AI version (1.0.0-SNAPSHOT). |
v1.42.0 | - Added AI Module using Spring AI. |
v1.40.0 | - Added Generative AI Module. |
v1.39.0 | - Updated javax packages to Jakarta |
v1.38.0-SNAPSHOT | - Updated Parent version (dynamo-parent-lib). Removed deprecated WebSecurityConfigurerAdapter. |
v1.36.0 | - Added Dynamo Docs Module for creating, updating, retrieving, deleting, uploading, and downloading Markdown (MD) docs using the CommonMark library. |
v1.35.0 | - Enabled dynamic creation and management of tables for form submissions. Integrated seamlessly with Form Builder service. |
v1.34.0 | - Updated Form Builder service for generating secure publishable links. Added Form Invitation entity and service to manage form invitations. |
v1.33.0 | - Updated Form Builder service for generating publishable links. Added Form Response entity and service to manage form responses. |
v1.32.2 | - Updated Parent version (dynamo-parent-lib). |
v1.32.1 | - Refactored Image Compress Module using ImgScalr. |
v1.32.0 | - Added Image Compress Module using ImgScalr. |
v1.31.0 | - Added Bean Utils for representing a bean with only the specified fields. Added Valid UUIDValidator annotation for UUID validation. |
v1.30.0 | - Added CSV Read Service method using OpenCSV in Dynamo CSV module. |
v1.29.0 | - Added Generic Service methods to handle bulk deletion. |
v1.28.0 | - Migrated from Camunda 8 to Camunda 7 in the Dynamo Workflow module. Updated naming convention for Form module service. |
v1.27.0 | - Added Workflow Support using Camunda. |
v1.26.1 | - Added EnableGlobalMethodSecurity in Web Security Config. |
v1.26.0 | - Added retrieval of users by roles and groups in the User Management Module. |
v1.25.0 | - Added Form Builder Support. |
v1.24.0 | - Added User Management Module for managing user database and AWS Cognito. Added retrieval of a list of entities with/without sorting in Generic Services. |
v1.23.0 | - Added common HTTP security configuration in Dynamo Auth. Updated Dynamo Auth module package name. Updated dynamo-sdk-bom to dynamo-sdk-lib-bom. |
v1.20.1 | - Refactored AWS SES mail service. |
v1.20.0 | - Added get email template in Dynamo AWS SES. Added MapStruct dependency. |
v1.19.0 | - Added NoSuchElementException and IllegalArgumentException in DynamoExceptionHandler. Added ValidationExceptionUtils for field violations. |
v1.18.0 | - Refactored Dynamo exception and exception handler. Added Maven Compiler Plugin with MapStruct. |
v1.17.2 | - Refactored Dynamo Auth. |
v1.17.1 | - Added email template with BCC address. |
v1.17.0 | - Refactored Dynamo Auth. |
v1.16.2 | - Refactored reset password workflow in Dynamo Auth. Added profile for Azure Active Directory. Added profile for SMTP email flow. |
v1.16.1 | - Refactored AWS SES send mail to support HTML formatted email. |
v1.16.0 | - Added support for Azure Active Directory. |
v1.15.2 | - Refactored DynamoDB test method. |
v1.15.1 | - Refactored reset password workflow in Dynamo Auth to send templated email instead of SMTP email. |
v1.15.0 | - Added support for DynamoDB using AWS SDK v2.0. |
- Supported Version: We currently support v1.44.0 only.
Dynamo is an open-source project distributed under the Apache License 2.0. The same licensing is applied to most of the framework’s libraries.
For any business inquiries, technical support, or to report issues, please contact [email protected].
Love Dynamo? Give our repo a star ⭐ ⬆️.