All Projects → 3YOURMIND → kotti

3YOURMIND / kotti

Licence: MIT License
💅 3YOURMIND’s Vue UI Framework & Design System

Programming Languages

Vue
7211 projects
typescript
32286 projects
SCSS
7915 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to kotti

flowbite
The most popular and open-source library of Tailwind CSS components
Stars: ✭ 3,727 (+4936.49%)
Mutual labels:  design-system, ui-framework
Atomize
Design System for developers build on styled-components & React JS.
Stars: ✭ 1,048 (+1316.22%)
Mutual labels:  design-system, ui-framework
Daisyui
⭐️ ⭐️ ⭐️ ⭐️ ⭐️  Tailwind Components
Stars: ✭ 382 (+416.22%)
Mutual labels:  design-system, ui-framework
bui
‹b› Web components for creating applications – built by Blackstone Publishing using lit-html and lit-element
Stars: ✭ 29 (-60.81%)
Mutual labels:  design-system, ui-framework
leafygreen-ui
LeafyGreen UI – LeafyGreen's React UI Kit
Stars: ✭ 112 (+51.35%)
Mutual labels:  design-system
frontend
#ChallengeTime Front-End Toolkit with useful additional CSS and JS Scripts http://gmkhussain.github.io/frontend
Stars: ✭ 26 (-64.86%)
Mutual labels:  design-system
parsers
Specify is a central platform for companies who want to unify their brand identity, by connecting their design system tools.
Stars: ✭ 50 (-32.43%)
Mutual labels:  design-system
grommet-theme-hpe
Hewlett Packard Enterprise grommet theme
Stars: ✭ 16 (-78.38%)
Mutual labels:  design-system
design-system
The official LumApps Design System (LumX) for AngularJS and React applications
Stars: ✭ 19 (-74.32%)
Mutual labels:  design-system
WikimediaUI-Style-Guide
Wikimedia Design Style Guide with user interface focus, authored by Wikimedia Foundation Design team.
Stars: ✭ 93 (+25.68%)
Mutual labels:  design-system
Rocket.Chat.Fuselage
React port of Rocket.Chat's design system, Fuselage
Stars: ✭ 61 (-17.57%)
Mutual labels:  design-system
react-toolkit
Flexible components html + css + react using BEM convention. Maybe, you can call it "Design System" !
Stars: ✭ 89 (+20.27%)
Mutual labels:  design-system
vuetify-component-lib-template
Template for creating a component library/design system using Vue.js and Vuetify.js.
Stars: ✭ 35 (-52.7%)
Mutual labels:  design-system
polarwind
Envoy's product component library
Stars: ✭ 17 (-77.03%)
Mutual labels:  design-system
mayflower
Mayflower Mono Repo (react and pattern lab and documentation)
Stars: ✭ 17 (-77.03%)
Mutual labels:  design-system
stitchwind
A bridge between Tailwind and Stitches
Stars: ✭ 33 (-55.41%)
Mutual labels:  design-system
assembler
A modern UI framework
Stars: ✭ 171 (+131.08%)
Mutual labels:  design-system
elements
Lovingly crafted ui components based on web components. Works well with all Frameworks - including Angular, React and Vue.
Stars: ✭ 42 (-43.24%)
Mutual labels:  design-system
design-system
A resource for creating user interfaces based on brand, UX, and dev principles
Stars: ✭ 17 (-77.03%)
Mutual labels:  design-system
themekit
Build system of design-tokens for any platforms
Stars: ✭ 60 (-18.92%)
Mutual labels:  design-system

@3yourmind/kotti-ui

Complete. The most commonly-needed components are implemented in Kotti. More components will be implemented when there is a specific need for them. TypeScript Support. Kotti is transitioning to a fully TypeScript-based code-base. While Vue doesn’t support all TS features, we believe that it’s still benefitial in the supported cases. Modern. Kotti aims to be a modern UI framework, regularly iterating over the existing design and adjusting it with newer UX improvements.
Consistent. The goal is to provide consistent, intuitive, and easy-to-use Vue components that users can immediately understand. Similar components shouldn’t defy expectations. Fail-fast. We believe that it’s better to error early than to have hard-to-catch bugs due to API misuse. Our components provide prop validation to catch common mistakes and throw errors in unexpected situations. Open-Source. Kotti is licensed under the MIT License — one of the most-permissible software licenses out there. Feel free to fork, modify, and use it. For any project you want.

Installation

yarn add @3yourmind/kotti-ui

or

npm install --save @3yourmind/kotti-ui

Documentation & Usage

Documentation: https://kotti.onrender.com or https://3yourmind.github.io/kotti/

// in main.ts / entrypoint
import Vue from 'vue'
import KottiUI from '@3yourmind/kotti-ui'
import '@3yourmind/kotti-ui/dist/styles.css'

// also make sure to set-up @vue/composition-api as it’s required for newer Kotti features
import VueCompositionAPI from '@vue/composition-api' // right now, 0.6.1 is recommended
Vue.use(VueCompositionAPI) // should be added before KottiUi

// (optional) register all KtComponents globally
Vue.use(KottiUI)

// Alternatively, import the components you need
import { KtForm } from '@3yourmind/kotti-ui'

const CustomVueComponent = {
	// ...
	components: {
		//...
		KtForm,
	},
}

Packages

Name NPM Downloads (Month) Downloads (Total) Size
@3yourmind/kotti-ui
@3yourmind/yoco
@3yourmind/vue-use-tippy
@3yourmind/sass-node-modules-importer

Development Workflow

Initial Setup

Remember to use your GitHub email for this repo

git clone [email protected]:3yourmind/kotti

cd kotti

# configure github email for this repository
git config user.email "[email protected]"

# install dependencies
yarn config set workspaces-experimental true
yarn install
yarn run lerna bootstrap

Develop

# auto-build/watch
yarn run watch

or

# having to build should hopefully be resolved in a future update
yarn workspace @3yourmind/sass-node-modules-importer run build
yarn workspace @3yourmind/yoco run build
yarn workspace @3yourmind/vue-use-tippy run build
yarn workspace @3yourmind/kotti-ui run build
# serve at http://localhost:3000
yarn workspace @3yourmind/documentation run serve

Handling Rebases

There are two workflows to help with rebasing pull requests:

  1. Rebase
    Commenting /rebase on any pull request will trigger a GitHub Action that rebases the PR. This is best used when attempting to rebase a PR without auto-rebase before merging.
  2. Auto-Rebase
    Adding the autorebase:opt-in label to any pull request will automatically rebase the PR as soon as it’s out-of-date. This should preferrably be used by the author, as it requires them to be aware of having to use git pull --rebase

Linting

# es-lint (with --fix)
yarn run fix:eslint
# es-lint (without --fix)
yarn run check:eslint

# stylelint (with --fix)
yarn run fix:stylelint
# stylelint (without --fix)
yarn run check:stylelint

Testing

yarn run test

Publish

git checkout master
git pull --rebase
yarn install

# you may need login to npm with your credentials if you have publishing rights
# make sure you have 2FA on your npmjs.com account enabled
npm login

# update the version in `package.json`
# make sure to commit the version bump changes before publishing then run:

# Make a release draft here:
# https://github.com/3YOURMIND/kotti/releases/new
# Tag format: 'v1.2.3-beta.4'
# Title format: 1.2.3-beta.4: tldr of what's happening

# make a version commit:
# Make extra sure you change the version everywhere it is mentioned in the source.
# Commit message format: version(1.2.3-beta.4): tldr of what's happening

yarn run lerna publish from-package
# git push your commit to remote

# publish release draft here:
# https://github.com/3YOURMIND/kotti/releases

# announce the new version in the #kotti slack channel

Build

yarn run lerna run build

Internals

Important Folders

Path Purpose
packages/documentation Nuxt-managed 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].