Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Migration to other CSS framework #687

Open
simkepal opened this issue May 5, 2022 · 21 comments
Open

Migration to other CSS framework #687

simkepal opened this issue May 5, 2022 · 21 comments

Comments

@simkepal
Copy link

simkepal commented May 5, 2022

Hello,

It looks like this project is dead and I was wondering, how to migrate to something else like tailwindCSS. Did anyone go through this process and has some good practices?

Thank you for your help.

@Vectrex
Copy link

Vectrex commented May 5, 2022

I switched to Tailwind some time ago. Since the concept is so fundamentally different I'd say there are no "recipes".

@laurentpayot
Copy link

Tailwind is not for me so I switched to Beercss and I’m quite happy: #673 (comment)

@Vectrex
Copy link

Vectrex commented May 9, 2022

@simkepal explicitly asked for a migration to "something like Tailwind". YMMV as always, but comparing a fully blown component based, thoroughly opinionated CSS framework with Tailwind is futile. (Despite all the articles which - as the linked one - largely miss the point.)
Anyway, can you provide good practices when moving from Spectre to Beercss?

@laurentpayot
Copy link

laurentpayot commented May 9, 2022

@Vectrex please do not overreact simply because I put a link to a critical article about your framework of choice. As you said YMMV.
I was just mentioning "something else" as asked, and also indicating that just like any tech Tailwind has some drawbacks to consider, as @simkepal is "wondering".

Anyway, can you provide good practices when moving from Spectre to Beercss?

I suspect this question to be purely rhetorical because obviously there is no choice but a total rewrite of your html/css. Totaly worth it, in my use case.

@Vectrex
Copy link

Vectrex commented May 9, 2022

Actually no. Since quite a few component based CSS frameworks share similar approaches, one practice could be a bunch of search-and-replaces with some rework afterwards. I case components share the same name (chips, modals, cards, etc.) it might be even less: "Configure the new framework and accept the new looks" (yes, I am exaggerating). Again: The issue is not about "any" alternatives but about "how to migrate".

@laurentpayot
Copy link

laurentpayot commented May 9, 2022

@Vectrex

search-and-replaces with some rework afterwards

That's what I call a total rewrite.

I[n] case components share the same name (chips, modals, cards, etc.) it might be even less

So you're basically saying that if two things have the same API then the migration is easier. I wouldn't go against such a helpful statement.

@Vectrex
Copy link

Vectrex commented May 9, 2022

Ah, we are at polemics now. I suppose this helps @simkepal a lot.

@sciborrudnicki
Copy link

I am working on my project on spectre.css and i want to invest some time into it.

@sciborrudnicki
Copy link

sciborrudnicki commented May 20, 2022

Fork with the latest version 0.5.10, and I've already changed the project to use CSS properties in an HSL way divided into a separate variables:
--s-primary-color-h // hue
--s-primary-color-l // lightness
--s-primary-color-s // saturation

It's not published yet.

https://www.npmjs.com/package/@angular-package/spectre.css

@sciborrudnicki
Copy link

1.0.0-alpha with CSS variables here

@laurentpayot
Copy link

@sciborrudnicki beware of copyright stuff, the author was angry after a fork: #634

@salamwaddah
Copy link

@laurentpayot to be fair the project is MIT with author giving full permission to do anything. Plus it's abandoned.

@laurentpayot
Copy link

laurentpayot commented May 25, 2022

@salamwaddah Sure. I was talking about the "License and copyright notice" condition from the MIT licence. You cannot do anything, you have to respect that condition.

@sciborrudnicki
Copy link

sciborrudnicki commented May 25, 2022

@laurentpayot As I see, it's MIT, that's why I decided to fork and do the job because I want to use this CSS framework in my project. I can help to maintain it if the author wants it.

You can read:

The MIT License (MIT)

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

@laurentpayot
Copy link

@sciborrudnicki Oh I see, no CC by like clause. Yep you can do pretty much everything.

@chrissy-dev
Copy link
Contributor

Hello,

It looks like this project is dead and I was wondering, how to migrate to something else like tailwindCSS. Did anyone go through this process and has some good practices?

Thank you for your help.

I wouldn't really say the project is dead - it's stable and provides a good solid list of components. However, @picturepan2 must not have enough time to manage the requests/deal with PR's which could be stopping the project moving forward in ways some people want it to.

There's a couple of options:

  1. @picturepan2 adds a few people to a core team in the repo/organisation to help manage the PR's and ship releases.
  2. Someone forks the project as a base for a new incarnation of Spectre and invests in it as a new project with a different name. This is exactly what has happened with Sequel Pro and the new Sequal Ace fork and the latter has had great success.

Option 2 is well within the MIT License of the project and embraces the beauty of open source.

I switched to Tailwind some time ago. Since the concept is so fundamentally different I'd say there are no "recipes".

As for Tailwind, porting probably isn't a very good option as the core concepts are vastly different. However, re-creating the Spectre components in Tailwind could be a great way to bridge the gap.

@mithray
Copy link

mithray commented Oct 6, 2022

Framework is not maintained but still like better than Tailwind. Words cannot describe how disgusted I am by the appearance of that HTML 😆

@mithray
Copy link

mithray commented Oct 6, 2022

It's pretty surprising how well older and smaller frameworks hold up. Skeleton and Milligram are good too.

@qgustavor
Copy link

@sciborrudnicki Is it possible to use @angular-package/spectre.css without using Angular? The installation instructions are not working and issues are disabled on that repository.

@sciborrudnicki
Copy link

sciborrudnicki commented Nov 2, 2022

@sciborrudnicki Is it possible to use @angular-package/spectre.css without using Angular? The installation instructions are not working and issues are disabled on that repository.

This documentation is not finished yet, and it refers to an upcoming beta version, please be patient.
There is no need to use angular, because of its only one typescript dependency. I am close to finishing significant changes to the project in a module-customizable way with dark/light/normal color schemes. I also brought back using gulp to compile CSS files and added the ability to create issues, I forgot about. So add yours, I can check.

@sciborrudnicki
Copy link

Here is dark light theme preview working on the prefers-color-scheme.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

8 participants