0.2.3 • Published 4 months ago

ab-nextjs-theme v0.2.3

Weekly downloads
-
License
MIT
Repository
github
Last release
4 months ago

ab-nextjs-theme

IMPORTANT: This is a work in progress and subject to major changes until version 1.0.

šŸŽØ This is a lightweight collection of client React components as theme abElements created by Abraham Ukachi, and optimized for Next.js applications šŸ˜Ž.

Getting Started

Installation

npm

npm i ab-nextjs-theme 

pnpm

pnpm install ab-nextjs-theme 

Tailwind

A list of all the supported tailwind theme and their current status:

No.NameFileStatus
1Colorscolors.tsDone
2Typographytypography.tsDone
3Stylesstyles.ts~Pending~

NOTE:


CSS

A list of all the supported css theme and their current status:

No.NameFileStatus
1Colorscss/colors.cssDone*
2Typographycss/typography.cssDone*
3Stylescss/styles.cssDone*

NOTE:

Usage

Import the main styles.css (from root folder) in your globals.css

@import 'ab-nextjs-theme/styles.css';

NOTE:


Color scheme

Key colors

NameColor (HEX)Codename
Primary Color#A67C52Melanin
Secondary Color#FFD700Gold
Tertiary Color#21FFFFCyan
Neutral Color#211A16Mud

NOTE: These key colors - also refered to as seeds - were used in the Material Theme Builder to generate AbTheme's M3 Baseline color scheme. However, the codenames are specific to this App :)

Accessibility colors

NameColor (HEX)
P-Light#D9AB7F
P-Dark#755028
S-Light#FFFF52
S-Dark#C7A600
Text On Primary#2D1600
Text On Secondary#000000

NOTE: These accessibility (a11y) colors were generated using Google's Color Tool with AbTheme's Primary & Secondary colors. P-Light and S-Light are short for Primary Light and Secondary Light color respectively.

Theme

The Ab Theme consists of three parts, namely Classic, Light and Dark Theme.

NameClassic ā­ļøLight ā˜€ļøDark šŸŒ‘Role
primary#FCFCFC#855318#FCB975Primary
surfaceTint-855318#FCB975Surface Tint
onPrimary#201A17#FFFFFF#4A2800On Primary
primaryContainer#FFDCBA#FFDCBD#693C00Primary Container
onPrimaryContainer#2D1600#2C1600#FFDCBDOn Primary Container
secondary#EAC400#6F5D0E#DDC66ESecondary
onSecondary#3A3000#FFFFFF#3A3000On Secondary
secondaryContainer#FFE15E#FAE287#544600Secondary Container
onSecondaryContainer#231B00#221B00#FAE287On Secondary Container
tertiary#006A6B#006A6A#80D5D4Tertiary
onTertiary#FFFFFF#FFFFFF#003737On Tertiary
tertiaryContainer#004F50#9CF1F0#004F50Tertiary Container
onTertiaryContainer#14FBFB#002020#9CF1F0On Tertiary Container
error#680003#BA1A1A#FFB4ABError
onError#FF897A#FFFFFF#690005On Error
errorContainer#BA1B1B#FFDAD6#93000AError Container
onErrorContainer#FFDAD4#410002#FFDAD6On Error Container
background#A67C52#FFF8F5#19120CBackground
onBackground#2D1600#211A14#EFE0D5On Background
surface#A67C52#FFF8F5#19120DSurface
onSurface#2D1600#221A15#F0DFD7On Surface
surfaceVariant#755028#F2DFD1#51453ASurface Variant
onSurfaceVariant#D9AB7F#51453A#D5C3B5On Surface Variant
outline#392E24#837468#9D8E81Outline
outlineVariant-D5C3B5#51453AOutline Variant
shadow-000000#000000Shadow
scrim-000000#000000Scrim
inverseSurface#A67C52#382E29#F0DFD7Inverse Surface
inverseOnSurface#2D1600#FFEDE5#382E29Inverse On Surface
inversePrimary#A67C52#FCB975#855318Inverse Primary
primaryFixed-#FFDCBD#FFDCBDPrimary Fixed
onPrimaryFixed-#2C1600#2C1600On Primary Fixed
primaryFixedDim-#FCB975#FCB975Primary Fixed Dim
onPrimaryFixedVariant-#693C00#693C00On Primary Fixed Variant
secondaryFixed-#FAE287#FAE287Secondary Fixed
onSecondaryFixed-#221B00#221B00On Secondary Fixed
secondaryFixedDim-#DDC66E#DDC66ESecondary Fixed Dim
onSecondaryFixedVariant-#544600#544600On Secondary Fixed Variant
tertiaryFixed-#9CF1F0#9CF1F0Tertiary Fixed
onTertiaryFixed-#002020#002020On Tertiary Fixed
tertiaryFixedDim-#80D5D4#80D5D4Tertiary Fixed Dim
onTertiaryFixedVariant-#004F50#004F50On Tertiary Fixed Variant
surfaceDim-#E7D7CF#19120DSurface Dim
surfaceBright-#FFF8F5#413731Surface Bright
surfaceContainerLowest-#FFFFFF#140D08Surface Container Lowest
surfaceContainerLow-#FFF1EA#221A15Surface Container Low
surfaceContainer-#FCEBE2#261E19Surface Container
surfaceContainerHigh-#F6E5DC#312823Surface Container High
surfaceContainerHighest-#F0DFD7#3D332DSurface Container Highest

NOTE: The Classic Theme ā­ļø was manually created for the AbTheme, This is an addition to the dynamic color requirements from Material Design 3.

Medium Contast

NameClassic ā­ļøLight ā˜€ļøDark šŸŒ‘Role
primary-#633900#FFBE7CPrimary
surfaceTint-#855318#FCB975Surface Tint
onPrimary-#FFFFFF#251200On Primary
primaryContainer-#9F692C#BF8445Primary Container
onPrimaryContainer-#FFFFFF#000000On Primary Container
secondary-#504200#E1CA72Secondary
onSecondary-#FFFFFF#1C1600On Secondary
secondaryContainer-#867325#A4903ESecondary Container
onSecondaryContainer-#FFFFFF#000000On Secondary Container
tertiary-#004B4B#84D9D8Tertiary
onTertiary-#FFFFFF#001A1AOn Tertiary
tertiaryContainer-#238181#479E9DTertiary Container
onTertiaryContainer-#FFFFFF#000000On Tertiary Container
error-#8C0009#FFBAB1Error
onError-#FFFFFF#370001On Error
errorContainer-#DA342E#FF5449Error Container
onErrorContainer-#FFFFFF#000000On Error Container
background-#FFF8F5#19120CBackground
onBackground-#211A14#EFE0D5On Background
surface-#FFF8F5#19120DSurface
onSurface-#221A15#FFFAF8On Surface
surfaceVariant-#F2DFD1#51453ASurface Variant
onSurfaceVariant-#4C4136#D9C8B9On Surface Variant
outline-#6A5D51#B0A093Outline
outlineVariant-#87786C#8F8074Outline Variant
shadow-#000000#000000Shadow
scrim-#000000#000000Scrim
inverseSurface-#382E29#F0DFD7Inverse Surface
inverseOnSurface-#FFEDE5#312823Inverse On Surface
inversePrimary-#FCB975#6A3D01Inverse Primary
primaryFixed-#9F692C#FFDCBDPrimary Fixed
onPrimaryFixed-#FFFFFF#1E0D00On Primary Fixed
primaryFixedDim-#825115#FCB975Primary Fixed Dim
onPrimaryFixedVariant-#FFFFFF#522E00On Primary Fixed Variant
secondaryFixed-#867325#FAE287Secondary Fixed
onSecondaryFixed-#FFFFFF#161100On Secondary Fixed
secondaryFixedDim-#6C5B0B#DDC66ESecondary Fixed Dim
onSecondaryFixedVariant-#FFFFFF#413500On Secondary Fixed Variant
tertiaryFixed-#238181#9CF1F0Tertiary Fixed
onTertiaryFixed-#FFFFFF#001414On Tertiary Fixed
tertiaryFixedDim-#006767#80D5D4Tertiary Fixed Dim
onTertiaryFixedVariant-#FFFFFF#003D3DOn Tertiary Fixed Variant
surfaceDim-#E7D7CF#19120DSurface Dim
surfaceBright-#FFF8F5#413731Surface Bright
surfaceContainerLowest-#FFFFFF#140D08Surface Container Lowest
surfaceContainerLow-#FFF1EA#221A15Surface Container Low
surfaceContainer-#FCEBE2#261E19Surface Container
surfaceContainerHigh-#F6E5DC#312823Surface Container High
surfaceContainerHighest-#F0DFD7#3D332DSurface Container Highest

NOTE:

High Contrast

NameClassic ā­ļøLight ā˜€ļøDark šŸŒ‘Role
primary-#361C00#FFFAF8Primary
surfaceTint-#855318#FCB975Surface Tint
onPrimary-#FFFFFF#000000On Primary
primaryContainer-#633900#FFBE7CPrimary Container
onPrimaryContainer-#FFFFFF#000000On Primary Container
secondary-#2A2200#FFFAF5Secondary
onSecondary-#FFFFFF#000000On Secondary
secondaryContainer-#504200#E1CA72Secondary Container
onSecondaryContainer-#FFFFFF#000000On Secondary Container
tertiary-#002727#EAFFFETertiary
onTertiary-#FFFFFF#000000On Tertiary
tertiaryContainer-#004B4B#84D9D8Tertiary Container
onTertiaryContainer-#FFFFFF#000000On Tertiary Container
error-#4E0002#FFF9F9Error
onError-#FFFFFF#000000On Error
errorContainer-#8C0009#FFBAB1Error Container
onErrorContainer-#FFFFFF#000000On Error Container
background-#FFF8F5#19120CBackground
onBackground-#211A14#EFE0D5On Background
surface-#FFF8F5#19120DSurface
onSurface-#000000#FFFFFFOn Surface
surfaceVariant-#F2DFD1#51453ASurface Variant
onSurfaceVariant-#2C2219#FFFAF8On Surface Variant
outline-#4C4136#D9C8B9Outline
outlineVariant-#4C4136#D9C8B9Outline Variant
shadow-#000000#000000Shadow
scrim-#000000#000000Scrim
inverseSurface-#382E29#F0DFD7Inverse Surface
inverseOnSurface-#FFFFFF#000000Inverse On Surface
inversePrimary-#FFE8D5#412300Inverse Primary
primaryFixed-#633900#FFE2C8Primary Fixed
onPrimaryFixed-#FFFFFF#000000On Primary Fixed
primaryFixedDim-#442500#FFBE7CPrimary Fixed Dim
onPrimaryFixedVariant-#FFFFFF#251200On Primary Fixed Variant
secondaryFixed-#504200#FFE68BSecondary Fixed
onSecondaryFixed-#FFFFFF#000000On Secondary Fixed
secondaryFixedDim-#362C00#E1CA72Secondary Fixed Dim
onSecondaryFixedVariant-#FFFFFF#1C1600On Secondary Fixed Variant
tertiaryFixed-#004B4B#A0F5F5Tertiary Fixed
onTertiaryFixed-#FFFFFF#000000On Tertiary Fixed
tertiaryFixedDim-#003333#84D9D8Tertiary Fixed Dim
onTertiaryFixedVariant-#FFFFFF#001A1AOn Tertiary Fixed Variant
surfaceDim-#E7D7CF#19120DSurface Dim
surfaceBright-#FFF8F5#413731Surface Bright
surfaceContainerLowest-#FFFFFF#140D08Surface Container Lowest
surfaceContainerLow-#FFF1EA#221A15Surface Container Low
surfaceContainer-#FCEBE2#261E19Surface Container
surfaceContainerHigh-#F6E5DC#312823Surface Container High
surfaceContainerHighest-#F0DFD7#3D332DSurface Container Highest

NOTE:


Custom

NOTE: Custom theme colors for AbTheme will be displayed or added here.

Tonal palettes

A tonal palette consists of thirteen tones, including white and black. A tone value of 100 is equivalent to the idea of light at its maximum and results in white. Every tone value between 0 and 100 expresses the amount of light present in the color.

TonePrimarySecondaryTertiaryErrorNeutralNeutral Variant
0#000000#000000#000000#000000#000000#000000
5#1D0D00#161000#001414#000000#121110#15100C
10#2C1600#221B00#002020#410001#1C1B1B#201B16
15#3B1F00#2E2500#002B2B#410001#272525#2A2520
20#472A06#3A3000#003737#680003#313030#352F2A
25#543411#473A00#004343#680003#3D3B3A#413A35
30#61401B#544600#004F50#930006#484646#4C4540
35#6E4B25#625100#005C5C#930006#545251#58514B
40#7C5730#705D00#006A6A#ba1b1b#605E5D#655D57
50#976F46#8C7500#008585#dd3730#797676#7E766F
60#B4885D#AA8F00#00A1A1#ff5449#93908F#988F88
70#D1A275#C9A900#00BEBE#ff897a#AEAAA9#B3A9A2
80#EEBD8E#E9C400#00DDDD#ffb4a9#CAC6C4#CFC5BD
90#FFDCBD#FCE17B#8FF3F2#ffdad4#E6E1E0#ECE0D9
95#FFEEE0#FFF0C2#ADFFFE#ffede9#F4F0EE#FAEFE7
98#FFF8F5#FFF9EF#E2FFFE#FFEDE9#FDF8F7#FFF8F5
99#FFFBFF#FFFBFF#F1FFFE#FCFCFC#FFFBFF#FFFBFF
100#FFFFFF#FFFFFF#FFFFFF#ffffff#FFFFFF#FFFFFF

NOTE: These tonal palettes were generated by Material Theme Builder.

Typography

Roboto

NameTypeSizeCharacterLineParagraph
H1Light96-1.51120
H2Light60-0.5710
H3Regular48auto570
H4Regular340.25400
H5Regular24auto280
H6Medium200.25240
Body 1Regular160.5280
Body 2Regular140.25200
Subtitle 1Regular160.15240
Subtitle 2Medium140.1240
ButtonMedium141.25160
CaptionRegular120.4160
OverlineMedium122160

NOTE: Character = Letter Spacing & Line = Height

Shape

The supported shapes are Circle āšŖļø, Square ā—»ļø and Squircle āŗ .

Shadow

ElevationXYBlurSpread
01dp-10110
01dp-2021-1
01dp-30130
02dp-10220
02dp-2031-2
02dp-30150
03dp-10340
03dp-2033-2
03dp-30180
04dp-10450
04dp-201100
04dp-3024-1
06dp-106100
06dp-201180
06dp-3035-1
08dp-108101
08dp-203142
08dp-3055-3
09dp-109121
09dp-203162
09dp-3056-3
12dp-1012172
12dp-205224
12dp-3078-4
16dp-1016242
16dp-206305
16dp-30810-5
24dp-1024383
24dp-209468
24dp-301115-7

NOTE:

Learn More abElements

To learn more about abElements, take a look at the following resources:

You can check out the abElements GitHub repository for more details.

TODOs

License

This ab-nextjs-theme project is MIT Licensed ;)

0.2.1

4 months ago

0.2.3

4 months ago

0.2.2

4 months ago

0.2.0

4 months ago

0.1.4

11 months ago

0.1.5

11 months ago

0.1.2

1 year ago

0.1.0

1 year ago