All Projects → apache → nifi-fds

apache / nifi-fds

Licence: Apache-2.0 License
Mirror of Apache NiFi Flow Design System

Programming Languages

HTML
75241 projects
javascript
184084 projects - #8 most used programming language
SCSS
7915 projects

Projects that are alternatives of or similar to nifi-fds

react-native-imaged-card-view
Rising Imaged Card View with Awesome Shadows and Fully Customizable Library for React Native
Stars: ✭ 16 (-36%)
Mutual labels:  ux
UI-UX-Squad
UI/UX Squad Roadmap
Stars: ✭ 30 (+20%)
Mutual labels:  ux
Compact-Unity-Events
UnityEvents drawer with collapsing, reordering and compact UX
Stars: ✭ 41 (+64%)
Mutual labels:  ux
ui-ux
The learning guide contains the Basics, Intermediate and Advance resources for User Interface and User Experience Design
Stars: ✭ 187 (+648%)
Mutual labels:  ux
Flutter-Anim
Fluent Flutter Animation library. Describe Sequences & Parallel animation's workflow, setup startDelay, duration and curve, then run !
Stars: ✭ 35 (+40%)
Mutual labels:  ux
nifi-minio
A custom ContentRepository implementation for NiFi to persist data to MinIO Object Storage
Stars: ✭ 27 (+8%)
Mutual labels:  nifi
sweetconfirm.js
👌A useful zero-dependencies, less than 434 Bytes (gzipped), pure JavaScript & CSS solution for drop an annoying pop-ups confirming the submission of form in your web apps.
Stars: ✭ 34 (+36%)
Mutual labels:  ux
Warp-Framework
Warp: A framework to create rich GUI Single-Window C++ applications using Direct2D API
Stars: ✭ 21 (-16%)
Mutual labels:  ux
nifi-minifi
Apache MiNiFi (a subproject of Apache NiFi)
Stars: ✭ 115 (+360%)
Mutual labels:  nifi
react-native-big-slider
🎚️ Yet another, big one, pure JS easily customisable and hackable react-native slider component
Stars: ✭ 86 (+244%)
Mutual labels:  ux
awesome-ux-ui
A list with the bests links about UX and UI Design in pt-BR 🇧🇷 😄
Stars: ✭ 82 (+228%)
Mutual labels:  ux
theme-bulma
🎈 Customization of Oruga components with Bulma CSS framework
Stars: ✭ 88 (+252%)
Mutual labels:  ux
svelteit
Svelteit is a minimalistic UI/UX component library for Svelte and Sapper projects
Stars: ✭ 64 (+156%)
Mutual labels:  ux
blobity
The cursor is the heart of any interaction with the web. Why not take it to the next level? 🚀
Stars: ✭ 804 (+3116%)
Mutual labels:  ux
RentLio
This is a vehicle reservation system. Which is made with JavaFX and also using hibernate and RMI.
Stars: ✭ 49 (+96%)
Mutual labels:  ux
CleanUI
Android library to create beautiful, clean and minimal UIs.
Stars: ✭ 19 (-24%)
Mutual labels:  ux
stylish-hub
🍹 A browser extension that brings new GitHub features and experience.
Stars: ✭ 14 (-44%)
Mutual labels:  ux
simple slider
A Flutter widget for images sliding
Stars: ✭ 53 (+112%)
Mutual labels:  ux
wp-template-preview
WordPress custom template preview for any post type
Stars: ✭ 16 (-36%)
Mutual labels:  ux
flutter preload videos
Preloading videos in Flutter 💙
Stars: ✭ 42 (+68%)
Mutual labels:  ux

Apache NiFi Flow Design System

The Apache NiFi Flow Design System is an atomic reusable platform for providing a consistent set of UI/UX components for open source friendly web applications to consume. Users can interact with this design system by running the demo application locally or by visiting: https://apache.github.io/nifi-fds/.

The demo application serves 2 main purposes

  • As a way for code reviewers to validate code changes and @nifi-fds/core releases.
  • Provides a working example of how an Angular application should leverage @nifi-fds/core.

Quick Start

For developers not interested in building the FDS NgModule you can use npm to install the distribution files.

npm install @nifi-fds/core --save

ES6

import { NgModule } from '@angular/core';
import { FdsCoreModule } from '@nifi-fds/core';

function AppModule() {}

AppModule.prototype = {
    constructor: AppModule
};

AppModule.annotations = [
    new NgModule({
        imports: [
            FdsCoreModule,
            ...
        ],
        ...
    })
...

Style and Theming

NiFi FDS is a themeable UI/UX component platform. To customize the core FDS components create a simple Sass file that defines your primary, accent, and warn palettes and passes them to mixins that output the corresponding styles. A typical theme file will look something like this:

// Include the base styles and mixins for Nifi FDS core
@import 'platform/core/common/styles/flow-design-system';

//Change these
$primary-color: $rose1;
$primary-color-hover: $rose2;
$accent-color: $blue-grey1;
$accent-color-hover: $blue4;

// Include the base styles for Angular Material core. We include this here so that you only
// have to load a single css file for Angular Material in your app.
@include mat-core;

// Define the palettes
$fds-base-palette: (50: #89df79, 100: $primary-color-hover, 200: #65d550, 300: #53d03b, 400: #46c32f, 500: $primary-color, 600: $primary-color, 700: #89df79, 800: #29701b, 900: #215c16, A100: #9be48d, A200: #ade9a2, A400: #bfedb6, A700: #1a4711, contrast: (50: $black-87-opacity, 100: $black-87-opacity, 200: $black-87-opacity, 300: white, 400: white, 500: $white-87-opacity, 600: $white-87-opacity, 700: $white-87-opacity, 800: $white-87-opacity, 900: $white-87-opacity, A100: $black-87-opacity, A200: white, A400: white, A700: $white-87-opacity));
$fds-accent-palette: (50: #89df79, 100: $accent-color-hover, 200: #65d550, 300: #53d03b, 400: #46c32f, 500: $accent-color, 600: $accent-color, 700: #89df79, 800: #29701b, 900: #215c16, A100: #9be48d, A200: #ade9a2, A400: #bfedb6, A700: #1a4711, contrast: (50: $black-87-opacity, 100: $black-87-opacity, 200: $black-87-opacity, 300: white, 400: white, 500: $white-87-opacity, 600: $white-87-opacity, 700: $white-87-opacity, 800: $white-87-opacity, 900: $white-87-opacity, A100: $black-87-opacity, A200: white, A400: white, A700: $white-87-opacity));
$fds-warn-palette: (50: #81410f, 100: #D14A50, 200: #af5814, 300: #c66317, 400: #dd6f19, 500: $warn-color, 600: $warn-color, 700: #eea66e, 800: #f1b485, 900: #f4c29b, A100: #ec9857, A200: #89df79, A400: #89df79, A700: #f6d0b2, contrast: (50: $black-87-opacity, 100: $black-87-opacity, 200: $black-87-opacity, 300: white, 400: white, 500: $white-87-opacity, 600: $white-87-opacity, 700: $white-87-opacity, 800: $white-87-opacity, 900: $white-87-opacity, A100: $black-87-opacity, A200: white, A400: white, A700: $white-87-opacity));
$fds-primary: mat-palette($fds-base-palette, 500, 100, 500);
$fds-accent: mat-palette($fds-accent-palette, 500, 100, 500);
$fds-warn: mat-palette($fds-warn-palette, 500, 100, 500);

// Define the theme (Optionally specify a default, lighter, and darker hue.)
$fds-theme: mat-light-theme($fds-primary, $fds-accent, $fds-warn);

// FDS theme mixin
@include fds-theme($fds-theme);

You don't have to use Sass to style the rest of your application but you will need to compile this file and include the corresponding style sheet in the head of the HTML document:

<link rel="stylesheet" href='node_modules/@nifi-fds/core/common/styles/css/flow-design-system.min.css'/>

NOTE: The theme file may be concatenated and minified with the rest of the application's CSS.

Overriding font files path

Optionally you can override the font file paths if you want your font files to be served from a different location.

$fds-font-path: '/path/to/font/files';

Developing

Developers can perform code changes and automatically build this project using npm and webpack from the root directory via:

npm run watch 

Building

NOTE: Building depends on bash scripts found in the scripts folder. Therefore, building on Windows is not supported at this time.

Full builds are also available using npm from the root directory via:

npm run clean:install

or to build without running unit tests run:

npm run clean:install:skipTests

NOTE: Full builds for this project assume a 2 stage build but it only completes the first stage for you. In the first stage all of the assets for the project are copied into the target/frontend-working-directory, tested, and bundled/minified/obfuscated. It is up to the consumer of this project to integrate the second stage to include the produced index.html and optimized assets files into any deployable archive of their choosing.

Running full builds locally

Once built you can start the application from the target/frontend-working-directory directory via:

cd target/frontend-working-directory
npm start

The demo application should now be available at: http://127.0.0.1:28080/. The port may differ if there is a conflict on 28080. See the output of the start command for the available URLs.

Contact us!

The developer mailing list ([email protected]) is monitored pretty closely, and we tend to respond quickly. If you have a question, don't hesitate to shoot us an e-mail - we're here to help! Unfortunately, though, e-mails can get lost in the shuffle, so if you do send an e-mail and don't get a response within a day or two, it's our fault - don't worry about bothering us. Just ping the mailing list again.

Documentation

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].