Skip to main content

dmf_logo_sdk 0.0.3 copy "dmf_logo_sdk: ^0.0.3" to clipboard
dmf_logo_sdk: ^0.0.3 copied to clipboard

Official Digital Media Factory (DMF) logo and animated splash screen SDK for Flutter with physics-based kinetic transitions.

DMF LOGO SDK (Flutter) #

pub package Flutter License: MIT Website

Official Digital Media Factory (DMF) animated splash screen and brand mark SDK for Flutter featuring physics-based kinetic transitions, multi-style brand marks, and luxury dual-theme palettes.

📦 Official pub.dev Package: https://pub.dev/packages/dmf_logo_sdk


✨ Features #

  • 🚀 Kinetic Physics Engine:
    • Custom BallLaunchCurve with elastic launch propulsion and $+12%$ overshoot settle.
    • Custom TextOvershootCurve with $+55%$ title and $+45%$ subtitle physical rebound trajectory.
  • 💎 Two Brand Mark Styles:
    • LogoStyle.dmfOneLine: Authentic horizontal D-M-F emblem with staggered kinetic text (p o w e r e d, DIGITAL, MEDIA FACTORY).
    • LogoStyle.dmfFullLogo: Full official lockup logo ([ DMF ] DIGITAL MEDIA FACTORY).
  • 🎨 Curated Luxury Palettes:
    • Pure White Light (isDark: false): Clean solid white background (#FFFFFF).
    • Deep Obsidian Dark (isDark: true): Luminous deep navy center (#1E293B) into rich obsidian (#131B2E) and edge vignette (#090E17).
  • 🔤 Embedded Variable Typography: Bundled with official Outfit and Plus Jakarta Sans variable fonts.
  • ⚡ Seamless Navigation: Supports onAnimationComplete callbacks with context or parameterless handlers for easy Navigator.pushReplacement.

📦 Installation #

Add the package to your pubspec.yaml:

dependencies:
  dmf_logo_sdk: ^0.0.3

Or run:

flutter pub add dmf_logo_sdk

2. From Git Repository #

dependencies:
  dmf_logo_sdk:
    git:
      url: https://github.com/DigitalMediaFactory/dmf-logo-sdk.git
      path: mobile

🚀 Quick Start #

1. Splash Screen with Page Navigation #

import 'package:flutter/material.dart';
import 'package:dmf_logo_sdk/mobile.dart';
import 'home_page.dart';

class SplashPage extends StatelessWidget {
  const SplashPage({super.key});

  @override
  Widget build(BuildContext context) {
    return SplashScreen(
      initialLogoStyle: LogoStyle.dmfOneLine, // or LogoStyle.dmfFullLogo
      isDark: true,                           // true = Deep Obsidian (gradient), false = Pure White
      onAnimationComplete: (context) {
        Navigator.of(context).pushReplacement(
          MaterialPageRoute(builder: (_) => const HomePage()),
        );
      },
    );
  }
}

import 'package:flutter/material.dart';
import 'package:dmf_logo_sdk/mobile.dart';

class FullLogoSplash extends StatelessWidget {
  const FullLogoSplash({super.key});

  @override
  Widget build(BuildContext context) {
    return SplashScreen(
      initialLogoStyle: LogoStyle.dmfFullLogo,
      isDark: false, // Pure white light mode
      onAnimationComplete: () {
        debugPrint('Animation complete!');
      },
    );
  }
}

3. Standalone Horizontal Emblem Widget #

Use DmfOneLineMark anywhere in your app (app bars, profile headers, about screens):

import 'package:flutter/material.dart';
import 'package:dmf_logo_sdk/mobile.dart';

class BrandHeader extends StatelessWidget {
  const BrandHeader({super.key});

  @override
  Widget build(BuildContext context) {
    return const Center(
      child: DmfOneLineMark(
        width: 220.0,
        launchProgress: 1.0, // Fully resting state
      ),
    );
  }
}

📖 API Reference #

SplashScreen #

Parameter Type Default Description
initialLogoStyle LogoStyle LogoStyle.dmfOneLine Determines whether to render the kinetic one-line emblem (dmfOneLine) or full logo (dmfFullLogo).
isDark bool false false activates Pure White light palette, true activates Deep Obsidian dark palette (with radial gradient). Automatically sets system status bar overlay style.
onAnimationComplete dynamic null Callback invoked upon completion ($2400\text{ ms}$). Accepts either void Function(BuildContext) or VoidCallback () => ....

LogoStyle (Enum) #

enum LogoStyle {
  dmfOneLine,   // Style 1: Horizontal D-M-F emblem with kinetic typography
  dmfFullLogo,  // Style 2: Official full DMF brand lockup
}

DmfOneLineMark #

Parameter Type Default Description
width double 245.0 Display width in logical pixels. Native aspect ratio is $1242 : 408$ (~$3.044 : 1$).
launchProgress double (required) Normalized progress ($0.0 \to 1.0$) driving physical elevation glide and opacity.

🎨 Asset Information #

All high-definition master assets are bundled directly inside the package:

  • assets/images/dmf_emblem_one_line.png ($1242 \times 408\text{px}$)
  • assets/images/dmf-logo-light.png ($1060 \times 204\text{px}$)
  • assets/images/dmf-logo-dark.png ($1060 \times 204\text{px}$)
  • assets/fonts/Outfit-Variable.ttf
  • assets/fonts/PlusJakartaSans-Variable.ttf

📱 Example Project #

An interactive example app is included in the example/ directory demonstrating live style switching, theme toggling, and route replacement.

To run the example:

cd example
flutter run

📄 License #

MIT © Digital Media Factory

1
likes
160
points
313
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

Official Digital Media Factory (DMF) logo and animated splash screen SDK for Flutter with physics-based kinetic transitions.

Homepage
Repository (GitHub)
View/report issues

License

MIT (license)

Dependencies

flutter

More

Packages that depend on dmf_logo_sdk