All Projects → GetJobber → atlantis

GetJobber / atlantis

Licence: MIT license
🔱 Atlantis

Programming Languages

typescript
32286 projects
CSS
56736 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to atlantis

pyrene
Open Systems Component Library
Stars: ✭ 17 (+0%)
Mutual labels:  component-library
dresscode
A React Component library
Stars: ✭ 22 (+29.41%)
Mutual labels:  component-library
engage-ui
Engage UI is a React component library designed to help developers and designers creater the delightful web experiences.
Stars: ✭ 14 (-17.65%)
Mutual labels:  component-library
tail-kit
React UI kit built using tailwindcss
Stars: ✭ 49 (+188.24%)
Mutual labels:  component-library
kongponents
🦍 🖖🏻 Kong Vue Component Library
Stars: ✭ 81 (+376.47%)
Mutual labels:  component-library
paramount
React Component Library for React Native and React Web
Stars: ✭ 23 (+35.29%)
Mutual labels:  component-library
periqles
React form library for Relay and Apollo
Stars: ✭ 124 (+629.41%)
Mutual labels:  component-library
vf-core
A (primarily CSS) framework that targets needs of life science websites and services
Stars: ✭ 16 (-5.88%)
Mutual labels:  component-library
enterprise-wc
Enterprise-grade web component library for the Infor Design System
Stars: ✭ 14 (-17.65%)
Mutual labels:  component-library
carbon-components-svelte
Svelte implementation of the Carbon Design System
Stars: ✭ 1,615 (+9400%)
Mutual labels:  component-library
chatty-form
A highly theme-able and customisable form in the shape of a chat based interface for React.
Stars: ✭ 27 (+58.82%)
Mutual labels:  component-library
neon
Neon is a modern VueJS design library built with Typescript and SASS
Stars: ✭ 19 (+11.76%)
Mutual labels:  component-library
layui-vue
layui - vue(谐音:类 UI) 是 一 套 Vue 3.0 的 桌 面 端 组 件 库
Stars: ✭ 112 (+558.82%)
Mutual labels:  component-library
DNZ.MvcComponents
A set of useful UI-Components (HtmlHelper) for ASP.NET Core MVC based-on Popular JavaScript Plugins (Experimental project).
Stars: ✭ 25 (+47.06%)
Mutual labels:  component-library
anv-ui-components
AnyVision React components library
Stars: ✭ 35 (+105.88%)
Mutual labels:  component-library
plugin-toolkit-react
Adobe XD plugin UI components for React
Stars: ✭ 30 (+76.47%)
Mutual labels:  component-library
fast-blazor
Blazor component library for FluentUI. Microsoft's official lightweight wrapper around the FluentUI Web Components for use with .NET 6.0 Blazor applications
Stars: ✭ 928 (+5358.82%)
Mutual labels:  component-library
monorail
🚝 Monorail | Cyber Design System
Stars: ✭ 14 (-17.65%)
Mutual labels:  component-library
mijin
Tailwind CSS UI components build for Vue.js / Nuxt.js
Stars: ✭ 168 (+888.24%)
Mutual labels:  component-library
tds-community
TELUS Design System Community Components
Stars: ✭ 22 (+29.41%)
Mutual labels:  component-library
name route
Atlantis
/

🔱 Atlantis

CircleCI

What is Atlantis?

Design systems enable teams to build better products faster by making design reusable—reusability makes scale possible. This is the heart and primary value of design systems. A design system is a collection of reusable components, guided by clear standards, that can be assembled together to build any number of applications.

Atlantis is a design system for Jobber. The primary objective for Atlantis is to provide a system of reusable components to help developers to quickly build beautiful and consistent interfaces for our users.

Development

Prerequisites

  • node@14
  • npm@6

To install Atlantis locally for development:

git clone [email protected]:GetJobber/atlantis.git
cd atlantis
npm ci

To start the docz development server:

npm start

Monorepo Notes

Installing Dependencies

When installing dependencies, unless they are required for the documentation viewer, they should be within the package you are working within.

Cross Linking

If you are making a change in one package that will be needed in another you will need to make the needed change and run a npm run lerna:bootstrap before using it. The bootstrap will recompile and link the changes across the project.

It's also worth noting that within Atlantis in order for one package to depend on another all that is required is for it to be listed in the appropriate package.json file. Lerna will automatically take care of managing the versions for you.

Installing packages

Atlantis packages are installed and updated using npm. This following list has installation links for each package:

Design system

These are the core packages you'll need to build with Atlantis:

Tooling and configuration

If you're looking to build documentation and tooling using Atlantis' development standards, these packages will be useful:

Generating a Component

Running the following command will prompt you for a component name and generate a starting point consisting of a component, tests, styling, etc to help you get started.

You should name your component in PascalCase.

npm run generate

Example

❯❯❯ npm run generate

> [email protected] generate /path/to/atlantis
> plop

? Component Name: ExampleComponent
✔  +! 5 files added
 -> /packages/components/src/ExampleComponent/index.ts
 -> /packages/components/src/ExampleComponent/ExampleComponent.css
 -> /packages/components/src/ExampleComponent/ExampleComponent.mdx
 -> /packages/components/src/ExampleComponent/ExampleComponent.test.tsx
 -> /packages/components/src/ExampleComponent/ExampleComponent.tsx

Testing

To run tests:

npm test

Linting

To ensure your code passes our linters run:

npm run lint

You can also auto fix many linting errors by running:

npm run lint:fix

You can run the linters separately with:

npm run lint:css
npm run lint:ts

Repo Structure

The atlantis repo is a monorepo consisting of a few different packages all living in the ./packages/ directory.

The primary packages in here are:

  • packages/
    • components/
      • The primary home for components. Each component lives in its own folder in the ./src directory within here.
    • design/
      • A home for shareable css variables.
    • docx/
      • Any components internal to the documention viewer itself.

When installing dependencies be sure to install them relative to the appropriate sub package. For example if you want to use package foo in a component you would run npm install foo from within the components directory.

Contributing

Everyone is a friend of Atlantis and we welcome pull requests. See the contribution guidelines to learn how.

Publishing

Atlantis uses Lerna and will automatically publish whenever a pull request is merged.

Manual Release Instructions

Follow semver when choosing versions.

npm run release-the-kraken
Publishing a failed release to NPM

In some cases, the automatic release may successfully bump the version and add a changelog but fail to publish to NPM. If this happens and you're one of the Atlantis NPM collaborators, run the code below to send unpublished versions to NPM.

npm run release:unpublished-package

Pre-Release

npm run prerelease

What has Changed

lerna changed
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].