Starting a new project? Feel free to

Copyright © Jim Chim

Starting a new project? Feel free to

Copyright © Jim Chim

Starting a new project? Feel free to

Copyright © Jim Chim

Starting a new project? Feel free to

Copyright © Jim Chim

Starting a new project?
Feel free to

Copyright © Jim Chim

Starting a new project? Feel free to

Copyright © Jim Chim

Starting a new project?
Feel free to

Copyright © Jim Chim

Starting a new project? Feel free to

Copyright © Jim Chim

Starting a new project? Feel free to

Copyright © Jim Chim

Talons Design System

ABCC Exchange

ABCC Exchange

Talons is a self-developed project that integrates an LLM model into an applicant tracking system, aiming to reduce the number of resumes HR needs to review from 100 to just 3.

In this project, we built the platform from the ground up, requiring extensive preparation in both communication and materials. Our primary focus was on accelerating the MVP launch while ensuring a sustainable design and seamless collaboration with developers. To maintain clarity and consistency, I took the initiative to implement a design system.

Why we need a design system but a componet library

Why we need a design system
but a componet library

Why we need a design
system but a
componet library

Why we need a design system
but a componet library

Design System: From 0 to 1

Background 01:
My daily practice
Knowledge Gap

My usual design practice mainly relies on component libraries, and I have never created a design system entirely on my own.

Background 02:
Demanding
Security
Concern
Communication Gap

To bridge the gap of understanding, we need a "design file" that can rule everything in the system. We need a master file on our project.

During communication with my developer teammates, we had to address the knowledge gap between coding, business, and product design. To bridge this gap effectively, we established a 'common group' to ensure we deeply understood each other's ideas and perspectives.

Background 03:
Porject Sustainable
Background 03:
Porject Sustainable
Background 03:
Porject Sustainable

Practice Gap

For a long-term project, relying solely on components can't manage many elements. I need to learn and implement a design system.

Since our backgrounds come from different fields, creating a new product from 0 to 1 requires a certain level of compromise. We need to align our perspectives, adapt to challenges, and find common ground to collaborate in the fastest and most efficient way possible.

Design System from 0 to 1

Project Directions And
My Role

Design System: from 0 to 1

Version 01 - Component Library

Version 02 - Full Layer with Tokens

Version 02 - Taylormade Layer with Tokens

Version 01

Designs are created using a component library, adding only necessary elements to the artboard and grouping similar materials. Developers follow the layout page by page but still lack a unified style guide for consistency.

Version 02

All elements are applied into primitive, semantic, and component-specific categories without developer input. This results in an excessive number of buttons or components for every possible scenario.

Version 03

Developers are fully involved to understand the project's needs. The component-specific layer is removed, leaving only primitive and semantic elements to ensure clearer communication and better adaptability.

Version 01 - Component Library

Version 02 - Full Layer with Tokens

Version 02 - Taylormade Layer with Tokens

Version 01

Designs are created using a component library, adding only necessary elements to the artboard and grouping similar materials. Developers follow the layout page by page but still lack a unified style guide for consistency.

Version 02

All elements are applied into primitive, semantic, and component-specific categories without developer input. This results in an excessive number of buttons or components for every possible scenario.

Version 03

Developers are fully involved to understand the project's needs. The component-specific layer is removed, leaving only primitive and semantic elements to ensure clearer communication and better adaptability.

Version 01 - Component Library

Version 02 - Full Layer with Tokens

Version 02 - Taylormade Layer with Tokens

Version 01

Designs are created using a component library, adding only necessary elements to the artboard and grouping similar materials. Developers follow the layout page by page but still lack a unified style guide for consistency.

Version 02

All elements are applied into primitive, semantic, and component-specific categories without developer input. This results in an excessive number of buttons or components for every possible scenario.

Version 03

Developers are fully involved to understand the project's needs. The component-specific layer is removed, leaving only primitive and semantic elements to ensure clearer communication and better adaptability.

Version 01 - Component Library

Version 02 - Full Layer with Tokens

Version 02 - Taylormade Layer with Tokens

Version 01

Designs are created using a component library, adding only necessary elements to the artboard and grouping similar materials. Developers follow the layout page by page but still lack a unified style guide for consistency.

Version 02

All elements are applied into primitive, semantic, and component-specific categories without developer input. This results in an excessive number of buttons or components for every possible scenario.

Version 03

Developers are fully involved to understand the project's needs. The component-specific layer is removed, leaving only primitive and semantic elements to ensure clearer communication and better adaptability.

Version 01 - Component Library

Version 02 - Full Layer with Tokens

Version 02 - Taylormade Layer with Tokens

Version 01

Designs are created using a component library, adding only necessary elements to the artboard and grouping similar materials. Developers follow the layout page by page but still lack a unified style guide for consistency.

Version 02

All elements are applied into primitive, semantic, and component-specific categories without developer input. This results in an excessive number of buttons or components for every possible scenario.

Version 03

Developers are fully involved to understand the project's needs. The component-specific layer is removed, leaving only primitive and semantic elements to ensure clearer communication and better adaptability.

Version 01 - Component Library

Version 01

Designs are created using a component library, adding only necessary elements to the artboard and grouping similar materials. Developers follow the layout page by page but still lack a unified style guide for consistency.

Version 02 - Full Layer with Tokens

Version 02

All elements are applied into primitive, semantic, and component-specific categories without developer input. This results in an excessive number of buttons or components for every possible scenario.

Version 02 - Taylormade Layer with Tokens

Version 03

Developers are fully involved to understand the project's needs. The component-specific layer is removed, leaving only primitive and semantic elements to ensure clearer communication and better adaptability.

Version 01 - Component Library

Version 01

Designs are created using a component library, adding only necessary elements to the artboard and grouping similar materials. Developers follow the layout page by page but still lack a unified style guide for consistency.

Version 02 - Full Layer with Tokens

Version 02

All elements are applied into primitive, semantic, and component-specific categories without developer input. This results in an excessive number of buttons or components for every possible scenario.

Version 02 - Taylormade Layer with Tokens

Version 03

Developers are fully involved to understand the project's needs. The component-specific layer is removed, leaving only primitive and semantic elements to ensure clearer communication and better adaptability.

Version 01 - Component Library

Version 01

Designs are created using a component library, adding only necessary elements to the artboard and grouping similar materials. Developers follow the layout page by page but still lack a unified style guide for consistency.

Version 02 - Full Layer with Tokens

Version 02

All elements are applied into primitive, semantic, and component-specific categories without developer input. This results in an excessive number of buttons or components for every possible scenario.

Version 02 - Taylormade Layer with Tokens

Version 03

Developers are fully involved to understand the project's needs. The component-specific layer is removed, leaving only primitive and semantic elements to ensure clearer communication and better adaptability.

Referencing

Discussing with developers about the main programming language used helps build a design system that is both feasible and easy to code. Using successful examples as a foundation, I modified my design files and components based on these principles.

The two libraries below serve as the foundation for my design system, which I used to modify my design files and components.

ShadCN UI

React-based UI library designed for building flexible, customizable, and accessible web applications. It offers pre-built, modular components that integrate seamlessly with TailwindCSS, allowing for easy styling and customization.

Tailwind UI

Focuses on providing high-quality, accessible components that integrate seamlessly with TailwindCSS, allowing for easy styling and flexibility while maintaining consistency throughout a project.

Figma File Demonstration

Design System Practise

Good Habit

Config Practice

Using a config file minimizes the need for hard coding, allowing developers to directly embed the file into the system. It also helps detect and correct potential errors efficiently

Standardized Naming

A standardized naming pattern reduces token-related misunderstandings, enhance file storage and organization, and simplifies future edits, even after multiple handovers.

Seperate Token Layer

Categorizing tokens into color, number, string, and boolean streamlines system maintenance, enabling designers to make changes based on data type, even if they're new to the system