Skip to content

This is a clone of google keep, a notes taking and tracking application. It has rich features that can help you manage your notes, archive them, even sending to a trash where you can permanently delete later on. There is also a possibility of cloning or creating a copy of a note.

Notifications You must be signed in to change notification settings

NjohPrince/google-keep

Repository files navigation

Google Meet Clone

design

Atomic Design Principle

Atomic Design is a methodology for creating design systems that emphasizes the modular and hierarchical organization of components. Developed by Brad Frost, Atomic Design breaks down the UI into smaller, reusable components called atoms, molecules, organisms, templates, and pages. This approach encourages a systematic and scalable design system.

Principles of Atomic Design:

1. Atoms:

  • Definition: The basic building blocks of a UI, such as buttons, input fields, and labels.
  • Characteristics: Simple, single-purpose elements that can't be broken down further.
  • Example: <Button />, <Input />

2. Molecules:

  • Definition: A combination of atoms that work together as a unit, forming more complex components.
  • Characteristics: Relatively simple components that have a specific function when combined.
  • Example: A form with an <Input /> and a <Button />

3. Organisms:

  • Definition: Components that are more complex and represent distinct sections of an interface.
  • Characteristics: Composed of molecules and/or atoms, serving as functional units within the UI.
  • Example: A navigation bar with multiple links and a logo.

4. Templates:

  • Definition: Page-level structures that organize components into a layout.
  • Characteristics: Consist of organisms and possibly some molecules and atoms to create a complete layout.
  • Example: A blog template with a header, sidebar, and main content area.

5. Pages:

  • Definition: Specific instances of templates that represent actual content.
  • Characteristics: Real content is added to the templates to create unique pages.
  • Example: The homepage of a website with actual blog posts and images.

Advantages of Atomic Design:

  1. Modularity:

    • Enables the creation of self-contained, reusable components.
  2. Consistency:

    • Promotes a consistent design language throughout the application.
  3. Scalability:

    • Facilitates the management of large and complex UIs by breaking them into manageable parts.
  4. Collaboration:

    • Supports collaboration among designers and developers by providing a shared language and structure.
  5. Testing:

    • Allows for easier testing of individual components, ensuring better reliability.
  6. Maintainability:

    • Simplifies maintenance as changes can be localized to specific components.
  7. Documentation:

    • Naturally provides a hierarchical structure that aids in documentation.

Implementation Tips:

  1. Start Small:

    • Begin with simple atoms and molecules before progressing to more complex organisms.
  2. Design Systems:

    • Use Atomic Design principles to create and maintain design systems.
  3. Consistent Naming Conventions:

    • Establish clear and consistent naming conventions for components.
  4. Tooling:

    • Leverage tools like Storybook to showcase and document your components.
  5. Version Control:

    • Consider version control for design elements to track changes systematically.

By adhering to the Atomic Design principles, development teams can create scalable and maintainable design systems that promote consistency and efficiency throughout the UI development process.

State Management

Refer Here

About

This is a clone of google keep, a notes taking and tracking application. It has rich features that can help you manage your notes, archive them, even sending to a trash where you can permanently delete later on. There is also a possibility of cloning or creating a copy of a note.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published