Sage-Bionetworks / sage-monorepo

Where OpenChallenges, Schematic, and other Sage open source apps are built
https://sage-bionetworks.github.io/sage-monorepo/
Apache License 2.0
21 stars 12 forks source link

[Task] Explore Tailwind CSS for Project Styling #2690

Open tschaffter opened 1 month ago

tschaffter commented 1 month ago

What product(s) is this story for?

Sage Monorepo

As a user, I want

As a Developer, I want to use Tailwind CSS to style my project efficiently so that I can create consistent, responsive designs with minimal custom CSS.

Description

Explore Tailwind CSS, a utility-first CSS framework that offers several benefits:

  1. Efficiency in Development: Tailwind provides a set of utility classes that can be applied directly to HTML elements, allowing for rapid prototyping and reducing the need to write custom CSS. This can significantly speed up the development process.

  2. Consistency: By using a predefined set of classes, Tailwind ensures a consistent design system throughout a project. This makes it easier to maintain a uniform look and feel.

  3. Customizability: Tailwind is highly customizable. Developers can configure the framework to match their design requirements by modifying the configuration file. This includes setting up custom colors, spacing, fonts, and more.

  4. Responsive Design: Tailwind makes it easy to create responsive designs with its built-in responsive utilities. Classes can be applied conditionally based on screen size, simplifying the process of making a website mobile-friendly.

  5. Smaller CSS Files: Using PurgeCSS with Tailwind can remove unused CSS, resulting in smaller file sizes and faster load times. This is particularly beneficial for production environments.

  6. Component-Friendly: Tailwind integrates well with component-based frameworks like React, Vue, and Angular. It allows for easy styling of individual components without worrying about global styles clashing.

  7. Active Community and Ecosystem: Tailwind has a large, active community and a growing ecosystem of plugins and tools, providing plenty of resources and support for developers.

Overall, Tailwind CSS enhances productivity, promotes design consistency, and offers flexibility, making it a popular choice among modern web developers.

Acceptance criteria

  1. I can set up Tailwind CSS in my project.
  2. I can apply utility classes to HTML elements to style components.
  3. I can customize the default configuration to match the project’s design requirements.
  4. I can use responsive utility classes to ensure the design is mobile-friendly.
  5. I can integrate Tailwind CSS with my existing component-based framework (here Angular).
  6. I can optimize the final CSS file size for production by removing unused styles.

Tasks

Anything else?

cc: @vpchung @rrchai @sagely1 @hallieswan @jay-hodgson @nickgros @JessterB

Have you linked this story to a GitHub Project?