Skip to content

Releases: DBB-Software/dbbs-solutions

25.10.01

16 Oct 10:06
cb9d08c

Choose a tag to compare

  • Update typescript packages
  • Update sonarcloud config
    • Split python and typescript apps to different sonarcloud projects
    • Fix python coverage report issue when sonarcloud wants to check not existed files
  • Update Admin Panel spa app to fix github warnings
  • Add NestJS Bedrock package
    • This package provides an abbillity to communicate with AWS Bedrock deployed AI model in your NestJS application
  • Added copilot rules

25.07.01

01 Jul 14:04
34945a6

Choose a tag to compare

  • Moved to another repos:
    • Turbo Generators - currently are part of dbbs-cli private repo, but it is also available to download via npm
    • POEditor SDK - currently is in new private repo, but it is also available to download via npm
    • Strapi Plugin: Stripe Payment - currently is in new public repo, and it is also available to download via npm
  • Added Url manager - An example of a serverless application that analyzes pages from a sitemap.xml file. Gets a list of pages from a sitemap.xml at a given URL address (with the ability to filter pages), stores them in the Dynamo database and checks the status of the page for the availability or presence of data in the page. Provides the ability to analyze or collect statistics from the Dynamo database.
  • Added remix firebase - An example of remix application + firebase, to show basic example to how to work with auth, sessions, database and .etc based on firebase SDK.
  • Added Flask logger - New flask logger package allows to use pretty logs in flask application to console and .log files

0.2.1

28 Apr 14:55
4e06a5d

Choose a tag to compare

  • NestJS Cache Manager Module A module for integrating caching mechanisms into NestJS applications. Simplifies the process of caching data to improve performance.
    • Provides a wrapper around the cache-manager library.
    • Added support for Redis as a cache store through an integrated Redis module.
    • Supports various caching strategies and configurations.
    • Easy integration with the NestJS dependency injection system.
  • Cleanup
    • removed unused packages: Healthcheck and Decorators.
  • Dart flutter-mobile - Cross-platform mobile application developed using Flutter. Provides a basic structure for creating mobile applications with Android and iOS support.
    • Integration with turborepo for unified command execution
    • Ready-to-use project structure with organized code
    • Built-in tools for testing and linting
    • Multilingual support through localization
    • Integrated settings controller for theme management
  • Dart firebase package - Package for integrating Firebase services into Flutter applications. Provides convenient access to Firebase Remote Config and Cloud Messaging functionalities.
    • Controller for easy management of remote configurations
    • Support for different data types in configurations
    • Integration with Provider for state management
    • Firebase Cloud Messaging support for notifications
  • Update Custom Admin Panel application
    • Added implementation for Geo List, Geo Config and Meeting Type List pages
    • Corrected data types to match BE implementation
    • Updated Config Page UI to match types

Release 0.2.0

06 Mar 11:00
492fd37

Choose a tag to compare

  • Admin panel update - Added FastAPI Back-End example for Admin Panel Front-End with SQLite3 DataBase usage through internal SQLAlchemy module
  • Mobile apps update:
    • All dependencies related to mobile applications are moved to the corresponding package.json
    • All versions have been updated to the latest stable versions
  • Move dev dependencies to apps/packages package.json files - Dependencies have been moved from the root package.json to individual Turborepo packages. Each package now maintains its own dependencies, improving modularity, reducing unnecessary installs, and optimizing build performance.

Release 0.1.9

04 Mar 13:29
5ae7e9d

Choose a tag to compare

  • Added Type Checking - Implemented type-checking mechanisms across various modules to improve code reliability and maintainability and reduce runtime errors.
  • Added a Flask server with an example module - This application is a starting point for further development and demonstrates standard Flask features such as request handling, routing, and blueprints. The project uses Poetry for dependency management and environment setup.
  • FastAPI modules
    • FastAPI Updated auth0 module: added authorization logic - Authorization logic was added to the FastAPI Auth0 package. It stated support for Auth0 permissions for authorization using FastAPI Security scopes.
    • FastAPI SQLalchemy - A FastAPI package for DataBAse setup using SQLalchemy ORM. It simplifies the connection to the DB and session manager. Currently, it supports PostgreSQL and SQLite.
    • FastAPI Cloudwatch - Added a FastPI Logger which is based on watchtower. This feature provides an ability to transfer logs to AWS Cloudwatch and the local console.
  • Admin panel
    • Set up an admin panel SPA with MUI Data Grid and Redux Toolkit.
    • A data access layer was added to streamline API interactions.
    • Implemented reusable UI components for a consistent user experience.
    • Created utility functions for data mapping and transformation.
    • Refactored existing code to improve readability, maintainability, and performance.
  • Metabase proxy -A lightweight NestJS application that serves as a proxy for Metabase. It handles request forwarding, authentication, and security, enabling seamless integration with Metabase while ensuring controlled access and enhanced flexibility.
  • Mobile apps: Safe Area Provider - Added the use of Safe Area to make it easier to display content so that it never goes outside the View boundaries.
  • Mobile components: Toasts - A new component that provides the ability to use toasts within the application of any platform, both built-in and custom ones.
  • Strapi stripe payment plugin cleanup + fixes - Optimized the plugin for improved accuracy and reliability. Refactored the code structure and updated server route paths to enhance efficiency, maintainability, and RESTful alignment. Fixed critical bugs to improve stability.
  • Web SPA Firebase - An example single page application extended with Firebase authentication. Demonstrates both passwordless and email/password login flows using React components and Firebase’s modular SDK. Environment variables are used for configuration, ensuring flexible setup for various environments. This project serves as a practical starting point for SPAs requiring secure user authentication and leverages Tailwind-based UI components for a clean and rapid development experience.
  • Cache manager - A NestJS module for seamless Redis-based caching. It simplifies cache storage, retrieval, and invalidation with minimal configuration. Features include flexible TTL management, advanced cache operations, and effortless Redis integration, enhancing performance and scalability.
  • Sendgrid module - Integrated a SendGrid module tailored for NestJS, leveraging dependency injection for seamless integration. Added support for email templates and validation to ensure accurate and consistent email delivery.
  • Updated sentry module
  • Poeditor SDK - A TypeScript package for seamless POEditor API integration. Simplifies localization management with features like project syncing, language addition, and translation exports.
  • React Google login - A reusable React library for seamless Google Identity Services integration. Handles login and logout flows with customizable configurations and error handling.
  • React Microsoft login - A React library for streamlined Microsoft Authentication integration. Provides a provider component with flexible configuration options, handles sign-in and sign-out flows, and exposes account details via a simple hook.
  • React Google maps - A React package for Google Maps integration with marker clustering. Provides customizable map components and efficient rendering of grouped markers.
  • React Google pay - A React library for Google Pay integration. Simplifies payment processing with customizable merchant and transaction details, supporting test and production environments.
  • React stripe - A React library for seamless Stripe Payments integration. Offers convenient components and hooks for creating embedded checkouts or custom payment forms, reducing boilerplate and ensuring secure transaction flows.

Release 0.1.8

23 Dec 10:20
4d927c0

Choose a tag to compare

  • Documentation for modules - Provided new conception of "Module Component". A detailed guide for adding, testing, and integrating reusable modules from @dbbs/*-modules. The documentation simplifies module creation, testing in local environments, and seamless integration into projects.
  • Python build improvements - Added mock build script to package.json to improve CI.
  • FastAPI auth0 - Integration Auth0 into FastAPI app for authorization with JWT token which was generated by Auth0. This module will check if token`s audience is presented in server audiences list.
  • Update turbo generators.
  • Mobile
    • Notifications - New packages for mobile notification management, there is a generic package - @dbbs/mobile-firebase/cloud-messaging for FCM features, and packages that will work on different types of mobile applications - @dbbs/mobile-react-native-notifications , @dbbs/mobile-expo-notifications.
      • react native notifications
      • explo notifications
      • push notifications
    • deep linking - New common feature for mobile apps using branch.io to support deep-linking.
    • in app purchases - A wrapper package over the standard in-app purchase package - react-native-iap, provides ready-to-use hooks and contexts with the iap init for the mobile app.
  • Next auth ath0 app - This Next.js application demonstrates a seamless integration of Auth.js with Auth0 for secure user authentication. It covers server-side authentication, client-side authentication checks, and API authentication to ensure a complete and robust security flow. The app supports login, logout, and session management while ensuring scalability and compliance with modern security standards. Additionally, it integrates easily with other services in the monorepo for a cohesive development experience.
  • RDS backup - It provides zipped PostgreSQL dumps on the S3 folder from the PostgreSQL database based on the AWS Lambda function and bash script using pg_dump binary. Uses AWS Secret Manager to obtain protected data to generate DB connection string.
  • AWS Secrets Manager adapter - It provides an adapter that gets a secret value using the secretName parameter. Uses SecretsManagerClient from client-secrets-manager of the AWS SDK for JavaScript v3 as a client and operates by GetSecretValue commands.
  • Strapi payment SPA - a standalone SPA designed to demonstrate the capabilities of the stripe-payment plugin for Strapi. It provides an interface for managing Stripe products, plans, subscriptions, and one-time purchases directly through a user-friendly UI. The SPA interacts with Strapi’s backend via the stripe-payment plugin, enabling seamless payment processing, subscription management, and transaction trackingю
  • NestJS
    • Use jest-mock-extended - Previously, tests were written using jest.spyOn, requiring manual setup of each mock method, repetitive code, and constant recreation of objects to reset state, making tests verbose and cumbersome. With jest-mock-extended, mocks automatically include all methods, can be easily reset using mockReset, resulting in cleaner, simpler, and faster test writing.
    • NestJS modules - A collection of reusable NestJS modules designed for seamless integration and configuration. Includes modules for MongoDB and Redis, helping to simplify backend setup and enhance scalability.
      • MongoDB module - Provides integration with MongoDB using @nestjs/mongoose. Supports asynchronous configuration, schema management, and connection handling via environment variables for flexible database operations.
      • Redis module - The Redis module enables integration with Redis for caching and data management. It supports dynamic configuration via environment variables, handles session management, and simplifies tasks like key-value storage and expiration settings.
    • Sentry - Introduced a Sentry module for NestJS to enable enhanced application performance monitoring and error tracking.
    • Improve stripe and Stripe payment packages:
      • Enhanced the functionality of the stripe and stripe-payment modules.
      • Introduced new APIs for managing Subscriptions, Purchases, and Transactions.
      • Improved handling of Stripe events through webhooks for better reliability and integration.
  • React apple pay - Integrating Apple Pay into a web application often involves managing various moving parts—handling merchant validations, configuring transaction details, and ensuring payment method compatibility. react-apple-pay reduces this complexity by providing a dedicated React component that streamlines the entire process. Instead of dealing with a tangled setup, you can concentrate on delivering a refined, user-friendly checkout experience.
  • React google pay - Bringing Google Pay into a React application usually requires dealing with merchant configurations, managing data flows, and ensuring support for the right payment options. react-google-pay smooths these rough edges by providing a ready-to-use React component designed to simplify your integration. Instead of wrestling with low-level details, you gain a cleaner, more maintainable approach to enabling secure and familiar transactions right in your user interface.

Release 0.1.7

23 Oct 16:12
7e727ac

Choose a tag to compare

Updated folder structure to accommodate expansion into various programming languages:

  • A new directory level was introduced to define programming languages for DBBS Solutions components.
  • Improves component searchability, structure, and classification.
  • All existing and new components are organized into language-specific directories.

Added new FastAPI Server Application:

  • Added FastAPI server with an example module.
  • A starting point for development that demonstrates standard features: request handling, routing, dependency injection, and Pydantic typing.
  • Uses Poetry for dependency management and environment setup.

Added new Django Logger:

  • Added Django Logger based on watchtower.
  • Provides the ability to transfer logs to AWS CloudWatch and local console.

Added new .NET Example Project:

  • Showcases modern development practices and architectural patterns.
  • Features include:
    • Built-in configuration management.
    • Dependency injection using native IoC container.
    • RESTful API controllers with auto-generated Swagger documentation.
    • Entity Framework Core integration.
    • Unit testing with xUnit, including mocking examples.
  • A reference point template for building enterprise-grade .NET applications.

Updated Mobile App Generators:

  • Updated Expo pre-build method that supports clean mode and Android signing management support (./scripts/manage-credentials.ts).

Added Web-SSR-Remix Generators:

  • Create Remix applications through the generator tool.
  • Streamline the setup process for Remix apps for convenience and user-friendliness.

Added StripePayment Module for NestJS:

  • Comprehensive solution for Stripe integration.
  • Manages related entities (subscriptions, products, plans) in the database.
  • Ensures data management between Stripe and the database for full synchronization.
  • Allows managing payments and keeps the app’s data up-to-date.
  • Available through the related package "dbbs/nestjs-module-stripe".

Added Apollo Package:

  • Package wrapper over Apollo GraphQL.
  • Generators with plugins for documents and hooks.
  • The standard Apollo client hook is with a basic mobile persistor.

Added Firebase SDK Package:

  • Basic package for Firebase app and admin services.
  • Includes auth, analytics, and database functionality.

React-localization:

  • Wrapper package for web and mobile application localization.
  • Uses i18n.

Added Next-intl-localization Package:

  • Designed for Next.js applications using Page Router.
  • Simplifies internationalization implementation.

Release 0.1.6

27 Aug 09:05
0d13b37

Choose a tag to compare

  • GitHub Workflow Enhancements: Tests now run faster, responding only to changes in relevant folders and executing in parallel.
  • Branch Naming Convention: Introduced a naming convention for branches. If a branch is not named according to the specified format, a pre-commit hook will notify the developer.
  • New Django Server Application: Added a Django server with an example module. This module serves as a starting point for further development and demonstrates standard Django features such as request handling, routing, and database interaction. The project uses Poetry for dependency management and environment setup.
  • Mobile Apps:
    • Added the ability to run mobile apps in clean mode, ensuring a fresh start without residual data.
    • React Native App:
      • Updated the signing approach to prevent build issues in production mode.
      • Provided a credentials file for Android builds, containing essential information about the keystore file.
      • Implemented prebuild logic, which includes a mandatory command to generate sentry.properties before running the build.
    • Introduced new Mobile Expo App:
      • Added the ability to run local EAS builds with an environment file.
      • Updated the app config to include initial properties for Sentry integration.
      • Implemented prebuild cleaning to remove redundant files before building the Expo app.
  • Web-SPA:
    • Integrated TanStack Router - Enhanced routing capabilities with the introduction of TanStack Router, offering more flexible and powerful navigation options for Single Page Applications.
  • Web Features:
    • Implemented the SentryProvider component, which is used to monitor and capture errors, performance issues, and other anomalies in real time. It helps you quickly identify and resolve problems by providing detailed insights into the root causes of issues.
    • The ErrorBoundary component designed to catch JavaScript errors in its child component tree, log those errors, and display a fallback UI instead of crashing the entire application.
  • Web Storages:
    • Introduced jotal-storage: A new web storage solution added to streamline data management.
    • Introduced rtk-storage: Another addition to our web storage offerings, enhancing state management capabilities.
  • MUI Components: Added Storybook with a basic set of stories.
  • Mobile Components:
    • All react-native-paper components wrapped to use it from our components package. Needed to store all components in single place to minify accessibility.
    • Keyboard-avoiding-view implemented based on KeyboardAvoidingView react-native. Components to manage keyboard state on page and how keyboard will affect covered components on each step of lifecycle.
    • Smooth-slide-track implemented. Custom slider component needed for animated scrolling, needed for popular cards gallery section and typical components.
    • Custom tab-view component implemented based on react-native-tab-view. To manage components lifecycle easily added custom handlers for tab-bar render action and mandatory requests have been identified. Custom tab bar implemented based on custom tab-view component, added animated scrolls and scroll dependency between tabs and tabs content to connect tab scrolling with page scrolling.
    • Component stories added. All components in storybook have story to describe how it work.
  • Settings Client Update: The settings client now operates independently of the AWS Lambda package.
  • New NestJS Modules:
    • Database Module: The Database Module for NestJS offers a robust solution for managing any database connections within your application.
    • Settings Module: The Settings Module for NestJS offers a robust solution for managing tenant-specific settings within your application. It leverages the NestJS ClsModule for context management and the LoggerModule for enhanced logging capabilities.
    • Stripe Module: The Stripe Module for NestJS provides a comprehensive solution for integrating Stripe into your application. Built with NestJS in mind, this module simplifies the process of managing payments and interacting with the Stripe API. It features dynamic configuration and streamlined integration, ensuring a smooth and efficient setup for handling payment processing and related tasks.
  • Added a banner to strapi-app: added a banner content-type (background, url, description, title) to strapi-app.
  • Strapi Permission Manager Plugin: Added an API for creating permissions and assigning them to roles.
  • Strapi Stripe Payment Plugin: Seamlessly integrates Stripe with Strapi, allowing users to create organizations, subscribe to plans, and manage subscriptions. Admins can create and manage products, plans, and subscriptions.
  • SendGrid Package: Implemented a wrapper around @sendgrid/mail, enabling platform applications to send emails with additional input parameter validation.
  • Download Environment Script Improvements: Refactored the environment upload script, adding error handling for better reliability.
  • Generators Update: Updated existing generators and introduced new ones to streamline application creation.
  • Package Updates: Updated various packages to the latest versions for enhanced performance and security.

Release 0.1.5

02 Jul 13:36
e015a11

Choose a tag to compare

  1. Added Detox E2E testing for comprehensive end-to-end test coverage.
  2. Added Storybook for component preview.
  3. Integrated React Native Paper components for a richer UI toolkit.
  4. Added more stories to the Tailwind storybook.
  5. Serverless CQRS+ES Application Example: An example of a serverless CQRS+ES application using the nest-serverless framework was added.
  6. Strapi Blogs Feature: Introduced a new Strapi blogs feature that provides an example of a blog system using Strapi.
  7. AWS SES Package: Added a new wrapper for the AWS SDK, enhancing usability within the DBBS platform.
  8. Nest-Module Strapi-Roles: Implemented a module to manage roles and permissions configured on the Strapi admin application within server/serverless NestJS applications.
  9. Strapi-Stripe Payment Integration Plugin: Implemented a new Strapi-Stripe payment integration plugin with an example in the Strapi app.
  10. Permissions Manager Plugin for Strapi: Designed to manage user roles and permissions more effectively, this plugin works with the config-sync plugin to synchronize configurations, ensuring consistent application of role and permission changes across environments.
  11. auth-jwt Module: A new authorization module was added to integrate JWT authentication functionalities into NestJS applications. This module facilitates seamless interaction with JWT-based authentication systems, ensuring secure and efficient user authentication.
  12. Custom health check Module: Introduced a health check module for seamless integration into NestJS applications, providing an alternative to the auth module.
  13. Download/Upload Env Scripts: Implemented and described scripts for downloading and uploading environment variables using AWS Secrets Manager.
  14. Upload-Settings Scripts: Developed scripts for uploading settings in multi-tenant systems.
  15. Updated Turbo Generators: Enhanced turbo generators to improve development productivity.