Closed Chalarangelo closed 6 years ago
I definitely like the idea of a small icon pack. I'm currently using a handful of inline SVGs. It would be nice to have a little pack of them from a project I know and trust. I like all the other bullet points also, but the icons popped out to me.
@Raindeer44, thanks for your support. At this time I am looking into SVG icon packs whose licenses are compatible, so that I can figure out what can be added to the framework. I was thinking about contacting @colebemis, creator of Feather, whose icon pack I have used a lot in the past and seems (at least to me) to fit the aesthetic of the framework. However, I am not yet set on any icon pack, so if you have any other suggestions, please comment below, so I can check them out.
Feather is a great icon pack and I would love to see icons from it integrated into mini.css. Are icons going to be their own module or part of something like the utility module?
@mariastervic I have not thought about it yet, but the plan is to add accessibility and improve UX using icons in forms' input fields etc. The icons themselves will be class-based with inlined svg's in their code, so that they can be added using a <span>
element or something similar. The most sensible thing would be to make them part of the contextual
or utility
module. That, however, is up to the community to decide, as I am not yet set on anything.
On a side note, I will be starting work on the framework's core
module possibly even today, after having debated a lot of the upcoming changes with myself. Expect screenshots and updates to this issue as work on the framework progresses. Feedback is essential to the final product, so please pitch in whenever you can. Thanks!
I like Feather! It does fit the minimal aesthetic and is conveniently covered by an MIT license. My first thought would be to put them into their own module, icons
or something. What is the argument for contextual
or utility
instead?
I have already contacted the developer of Feather and I am very excited to announce that some of its icons will make it into the next major release of the framework.
As far as module structure goes:
icons
module would be an extra step in the build and documentation process, which might not be a terrible idea, I am just trying to keep the documentation and code structure consistent and easy-to-use. The counter-argument would be that hiding an icon set in another module can be unintuitive and confusing.contextual
could be an option. The way I see it, icons are used for accessibility, clarification and improved user experience. Thus their role is to provide context to some element or piece of content.utility
is the least favored option as of now, as it is basically where anything that doesn't fit elsewhere goes. It could make some sense, but I would rather use one of the other two options mentioned above.The core
module is already halfway through the baking process. If everything goes according to plan (you know it won't), I will have it up and running soon, meaning I can actually focus my efforts on building the first demos and a draft landing page for Gluon so that you guys can preview it.
For anyone who has delved into the codebase in the past, you should know that a lot of the code is being rebuilt, especially parts that were conditionalized such as the styling for small, sub, sup
, as the conditionals only cleaned up the unminified codebase (.css
, not .min.css
), meaning that the final size would be the same regardless. This change is going to be useful in the long run both for maintaining the codebase, as well as allowing new contributors to jump in.
I really like what I see in the Sass code. CSS variables seem to be complementing the style-agnostic aspect of the framework, plus I haven't seen any other framework utilize them yet. Really looking forward to the alpha release. Keep up the good work!
@mariastervic Indeed they do and they make it so much easier to create tooling that will allow for easy customization before downloading. I expect flavor-making to be really easy in the future, using the CSS variable aspect of the codebase, especially if I manage to create the proper systems for developers.
As far as I know, no other UI kit uses CSS variables at the moment, so mini.css will be the pioneer really, if I manage to release Gluon before any other framework implements this functionality. Hope it's the right choice, as it made me abandon a lot of legacy code and browser support is slightly on the low side as of now.
The new website is (almost) upon us. I just redesigned the splash screen and logo of the framework for Gluon and I am pretty excited to share it with you guys:
Image credit: Christopher Gower
Let me know what you think!
I definitely like the logo and the splash screen! My only thought with the splash screen is that the second half of "framework" has a dark background. How would it look if that line were moved down a tish so it fits in the lighter area just below where it is now?
I noticed that, too. The deisgn is not yet finalized, so some changes will be made, I'm just trying to get a rough sketch down for now. Accessibility and ease-of-use (ie legibility) are always top-priority, so I will do something about this for sure. 😉
Sounds good! Other than that (admittedly minor) thought, I love it!
Oddly enough, everything is still on schedule, so the first alpha of Gluon might arrive around the end of this month or the first few days of November. I'm pretty happy with the resulting CSS so far and the code is a lot easier to maintain, tweak and customize as far as I can tell.
Apart from that I have to share the great news that, even though the code is 90% ready as of now and some things are missing, the new compiled CSS file is actually about 10 bytes leaner than the original equivalent from the Fermion branch, which I definitely did not expect. If this trend continues, the only thing bloating Gluon up a little bit will be the icon set, which is totally fine and justified.
The website is coming along nicely, I will try to get started on the documentation so that the two modules that are complete are mostly documented on release of the alpha, allowing me to get some feedback about it all.
Finally, it's reasonably probable that a couple of elements from other modules might make it into the release, such as a <header>
element and a couple of <button>
s and <mark>
s, just because I will need them for the website, so I might as well build prototypes for them and see how they fare in the wild from day one of the alpha.
Stay tuned for updates and thanks a lot for all the feedback and ideas! 👍
Browsing through the code of the Grid module, I can tell that it's looking far more appealing to deal with than before. Bonus points for allowing extra breakpoints using the mixin, this will come in handy.
The new website and docs are coming along nicely, altough it seems like the deadline for v3.0.0-alpha.1
will be pushed back by a week or two for two main reasons:
core
and grid
works as expected. Some styles are missing and a few of the currently styled elements are unfinished. I will also be working on a few parts from other modules, such as buttons and some navigational elements, because I need them for the website to function properly, so I might as well build them already and improve them later on. Thus, expect button
, .button
and probably header
, nav
and footer
to ship with this release.I'm really sorry about the delay, but I want the Gluon alpha to launch as smoothly as possible, so it's probably for the best. Stay tuned for updates!
Why not build the site with a static site generator? https://www.staticgen.com/ (I'm using Hexo, which is nice and simple) Having seen the current doc, not sure you need a framework (client or server) on top of this. But that's only a suggestion :)
@tomap The current doc is usable, but maintenance is a huge pain. I was planning on using React (and Redux quite possibly) to allow all of the documentation to be stored in JSON files, so that it can be easily altered and maintained. Most of the documentation follows a specific pattern, so creating a reusable React component seems like a very practical way of separating the data and presentation, so that the documentation can be eventually duplicated in the wiki and from the wiki (there are plans for that). Also, I am planning to implement a search bar into the new docs to allow everyone to find what they need without navigating through menus.
To be honest, I am not a big React fan, as it's pretty heavy, but I think it would be a decent enough fit for the new doc pages and will allow more people to help with the documentation in the long run.
I have just completed scraping the current Fermion documentation and got myself some data to start working with towards the new docs for Gluon. If everything goes according to plan, I should have most of the work done by the end of this week.
I actually needed a lot of parts from input_control
and navigation
for the documentation and site to work, so, instead of playing around with temporary solutions, I have built about 60% of input_control
and 30% of the navigation
module. Expect the first alpha to launch with both modules nearly complete, as well as the card
module, which is needed for the documentation layout. I am really sorry for the delay, however this alpha will be shipping with more than twice as much stuff as it was supposed to be, which is something I hadn't anticipated originally. This will ensure that moving forward I can focus on the more complicated elements, components and systems, such as table
s, tab
s and the icon
module which will be added to the framework.
Shipping 5 modules sounds more reasonable than just 2. The alpha will have everything one needs to set up a website already.
It's been a long time coming, so it might as well be coming in Gluon. External Modules will now be a thing. Certain components that are not regularly used or that fit a very specific site type will be moved to external packages, allowing their maintenance to be easier and people who do not need them to skip them by default. See #115 for more details. The .switch
, .tabs
and customized select
will not be making it into Gluon, at least for now. The target of the main framework is to provide the elements and components that 95% of the users need 100% of the time.
Apart from that, the framework is coming along nicely, navigation
, core
and grid
are complete, input_control
is missing checkbox
and radio
elements and card
is going to be implemented tomorrow (I don't expect any problems). The documentation will be the top priority immediately after these are implemented, so expect me to need 7-10 days until the alpha is released with about half of the components. Also, expect card
and grid
to be merged into a layout
module. card
is dependent on grid
anyways, so I might as well merge it into grid
to make sure that the one is not included without the other. Also, a lot of layouts use .card
elements, so it would be nice to have them as part of the grid
in that sense. Thank yoou for all your patience and the feedback!
I think the new version is coming along nicely. Combining cards and the grid system seems like a great idea, provided that the cards are dependent on the grid already. As far as the switches and tabs go, I haven't used them almost at all, so I don't really mind them going to make space for other things. Can't wait to test everything out!
After some careful consideration, I came up with a 20-icon set draft from feather that is pretty much all-purpose and should be useful to the majority of the framework's users. I'm open to expanding the icon set further, adding another 10 icons or so to accommodate as many people's needs as possible. Please tell me what you guys think of the selection and which other icons you would like to see added in the icon set.
Glaring omission: I forgot to add a phone in there for telephone fields, consider it part of the set already.
I like the selection! It has all the icons I can think of most users needing in most situations. I like the design (I like feather), and I can see this fitting into the framework. What do you think about adding a couple of the common social icons like for Twitter, Facebook, and a select few others?
I think mention of Feather should also be in the documentation with these so people know where to get more icons like them (for example, if I want a GitHub logo or something).
@Raindeer44 I will definitely mention Feather. I love that icon set and I want to expose as many people as possible to it, so I will link to it and maybe even add a custom banner in the documentation to make it abundantly clear that it's not my work, but another open source project I am using to improve the framework.
Social icons are a little bit of a mixed bag, as they will take up some extra space and I will probably need to choose a few, which will lead to arguments like why did you add Facebook but not [insert social media x]. I might do this, but I think a simple share icon works for many situations.
Another plan, which I will definetly get on board with eventually is to make a little tool that will not be part of the framework, just part of the docs, that people can use to customize their icon set. Provided that people have different needs and that using svgs in background limits color customization, this could be a lifesaver for the icon module, as people will have a chance to pick their own set and get the colors they want for individual icons. It's not even very difficult to implement, so I will try to get it started before the second alpha release.
On a side note, I am currently using two icons from Feather for the navigation drawer component, but I will scrap them to use Unicode characters. The main reason for this is that I want everything except for the icon set itself to be fully customizable in terms of colors, using CSS variables and this is simply impossible in background svgs (as far as I know at least).
That all sounds great! I think that tool for customizing icons would absolutely solve the need for social icons, especially if it gave access to the entire arsenal of Feather. Maybe leave the set you mentioned earlier as default (it's a strong set for default), then make them customizable like choosing flavors. Awesome idea!
The alpha release is coming really soon. The docs seem to be taking too long, so if anyone wants to test the upcoming Gluon release, you should be able to grab the mini-default.css compiled flavor file and play around with it. I made sure that most :bug:s were squashed before posting this announcement, so expect pretty much half of the things to break within the first day (everybody knows that as soon as I tell people to use it, it breaks). Post your feedback in this issue, let me know what you think.
After careful consideration, the new documentation will not be built using React & Redux. However, the search functionality will be added as promised. Instead of using React & Redux and then static-rendering certain parts of the page, I will be creating my own custom scripts for compiling the documentation from Javascript Objects into static HTML. This will ensure that the site remains lightweight, as well as easy to maintain and update in the future, thus improving the current documentation situation immensely.
While the documentation is nowhere near ready yet, the new cards are starting to take shape and they look (in my opinion) pretty great:
All of the pieces shown on the card are represented by a Javascript object, meaning it's extremely easy to update and correct mistakes, so even though the difference is not extreme visually, the actual architecture behind this is something I'm quite proud of.
After almost a week's work, the documentation is almost complete (the .drawer
is the only thing that hasn't been documented yet). After I'm done documenting, I will still need to add in the search functionality and update the pages, polish them up and get them all ready for release. I was hoping to get the alpha up and running around Monday, 20th, but it may still take longer. Thank you all for you patience this far!
P.S: Codepen generation, copying to clipboard, migration documentation and the flavor tool are all coming in later alphas. I had to decide what to cut out to get a minimum viable product out there for people to test.
After a significant delay, here it is! Check out the live documentation and website and let me know what you think!
There is more work being done behind the scenes and a lot of stuff being added and evaluated, but it might be a little while until the next alpha is out. The current plan is to release one more alpha with one or two important modules in it (probably contextual
and table
) and then move to a beta phase, which will release with pretty much everything afterwards. After a couple of beta releases, I will rebase the master branch and use Gluon as the stable branch. This is still a long way down the road and I'm pretty sure a ton of bugs will pop up everywhere, but this is what alphas are for!
I like the new site a lot. It looks a lot more like most documentation websites I have seen before and the search is a great addition.
So far I have encountered a few problems when combining headers and grids after testing the alpha for about an hour. I'll try and understand what might be wrong there, but I think that columns in the header need to be styled separately from normal buttons. Fluid columns work well so far, but it seems that columns with preset width sometimes exceed the container. This might be a padding issue as far as I understand it or a flexines problem.
On the subject of the icon set, get rid of the X
, add the telephone like you said and you're good to go. Most of these icons would work for a lot of designs and websites, so I guess you don't need more than that. You could also drop the menu
icon for something more useful, as you already use an icon in your drawer component, so this one is pretty much redundant.
Thanks @Zorba1987, the whole point of the new website was to provide better UX for devs, while keeping it simple and all in one place.
Headers and grids have given me some trouble, too. I could use a helping hand with those, as they are really a mindbender to me at times and I have a bunch of things I am working on in the meantime. These bugs will be ironed out before the beta release one way or another.
Good point on the icons, both the X
and menu
have no particular use-case except for the ones I have already covered with Unicode symbols. I'll probably find a replacement for menu
and I think it should all be good to go afterwards. Icons are still a little bit away, but the icon set is pretty much decided already, so there's one less concern for me.
I just started working on the contextual
, progress
, table
trifecta (contextual
is first) today. If all goes well, contextual
and progress
should be done by the end of next week, then I'll take a break for the holidays etc. and get table
and documentation done until mid-January. No promises, as things tend to slow down seemingly at random, because other responsibilities get in the way, but the sure thing is that the next alpha
will contain all three of these modules.
The contextual
module is coming along nicely, all the previous components are already written and I will document them over the course of the next few days. I will also take some time to move the old vertical version of tabs
into the contextual
module as a spoiler
component (name not set yet), so that I can eliminate the extra module and combine the vertical tab component into it. The old-school tab system will be an external module and examples will be provided to allow people to build a tab-based layout, utilizing some Javascript for better results.
After contextual
is done, I will jump into coding the progress
module, as it is probably the tiniest one and the one that requires the fewest changes and little work in general. Bear in mind that there will probably be some stylistic changes to the module's components.
Last thing before the next alpha is the table
module, which could take a little while to work on, as there are far too many hacks in that module and a few things need to be clarified. Apart from that, it is pretty important that the table
styling is modernized. Expect this module to be complete by mid-January, just in time for the launch of the next alpha version.
Tools, such as the promised flavor tool, will be pushed back to the beta release most likely, but I will try to get working Codepen links for code snippets from the documentation. You can also expect some examples that might involve Javascript (i.e. responsive tooltips etc.) under the Best practices sections of components (just a few basic ones should do the trick, I think).
Finally, I will try to troubleshoot any bugs I find and clean up the code before this alpha, so that most of the framework is up and running by mid-January, missing only icons, UX changes and tooling.
These past two weeks have been pretty crazy, due to me working on 30 seconds of code and taking a short vacation. However, I'm starting to have more spare time to work on the framework, so I should resume working on the contextual
module and then the progress
module, as promised. If everything goes well, both modules should be done by the end of next week and I might have managed to put some time into the table
module.
What this means for the next alpha release is that there might be a short delay (a week or two), so expect the next alpha to ship around mid-January to late-January, at which point it will have what was promised previously. I understand that this delay is sub-optimal, but the alternative (rushing through these updates and releasing on time) is even worse as I do not want to ship a broken product. That being said, I'm doing my best to tackle as many issues as possible and keep the quality of code and documentation high.
I'm really sorry that I got carried away and had so much work on my other project, but I promise to deliver exactly what I promised. The contextual
module should be fully documented today and I will start working on the rest of the modules for this alpha release as soon as I can and as much as I can. Stay tuned for more information and updates!
So, even with so many delays, it seems like the next alpha will be out next week. The table
module is complete, fully documented and has a couple of new features in it, only thing left to do is ~document it properly and check if there are any lurking bugs anywhere in the code (pretty sure there are) and make some minor changes to the website.
As soon as the next alpha is out, I will focus on adding in the utility
module and the icon pack. At that point, it will be time to start working on the flavor and icon tools, which should not take very long. I would estimate that everything except the tools should be done by the end of February and the tools should take about 20 days each at most. This means the beta
version should release by the end of March or early April (that's the worst-case scenario, possibly earlier).
Bear in mind that mini.css is also the focus of my MSc dissertation, so expect improvements in terms of UI/UX for both developers and end-users before the launch of the stable Gluon version.
Due to a lot of things happening and a lot of projects I need to tend to, I might not launch a blog for the framework after all, as there is a lot of stuff to take care as it is already. However, planned articles and complementary examples will be published eventually on Medium (probably on one of the publications I am part of already, such as Hackernoon or FreeCodeCamp).
-alpha.2
release)Yesterday, much to everyone's surprise, -alpha.2
was released with all the features promised, so everything should be on schedule so far. Today, I coded all of the utility
module (as of yet undocumented) and it seems like a lot of progress has been already made in terms of getting to the beta
stage. I will start working on the iconset in the next couple of weeks and see what kind of functionality I can add based on it.
I'm going to be working on the utility
module documentation today, just to get that out of the way. After that, I will start working on the icon set right away to get a rough prototype up and running and see how icons will affect the size of the framework. Expect some pictures or codepens later this week, as icons are added and tested!
Documentation of all elements and components is finally complete. The utility
and icon
modules are tested and ready for use. There will be an -alpha.3
release sometime this week, marking the final alpha
release. I'm not yet calling this a beta
, as I would rather have some more things in the docs and possibly a prototype of the flavor and icon tools before we move to -beta.1
(which is probably not gonna be long).
After this release, I will start working on anything left over in the roadmap and especially the new tools for developers. Expect this to take a little while, but everything should be pretty much complete next time the Gluon branch gets a new release. I'm also going to be working on my dissertation, which is sort of a case study of UX/UI practices in mini.css, so expect to see minor changes across the board, improving the asesthetics and usability of the framework.
It's been a little while and I have been working on a ton of other projects, while I also finally got a day job. The last piece left over before the next version is released is to add the flavor and icon tools. I am going to set a schedule for myself and work on them over the course of this month, so that we can hope for a release around early April (Easter holiday, should be a good time to debug any left over problems and iron out any issues there might be). Hopefully, everything will go smoothly and you will hear from me again very soon (probably next week). Thank you all for you patience, more goodies are coming and they are gonna be pretty cool if everything goes according to plan!
After a prolonged absence from the project, I am happy to announce that work on the flavor tool has already begun. There's a rough draft ready for the whole of the flavor tool, but so far only the first module's inputs have been added to the form. I hope that the tool (and subsequently the whole of Gluon) will be ready for release sometime this month. Sorry for the delay, but other things got in the way and I didn't want to deliver a half-baked product in the end.
As an added bonus, here's what a flavor's variables will include and a rough draft of what I'm planning to do with them:
var flavorData = {
core: {
baseRootFontSize: 16, // in px
baseLineHeight: 1.5, // unitless
foreColor: '#111',
backColor: '#f8f8f8',
secondaryForeColor: '#444',
secondaryBackColor: '#f0f0f0',
borderColor: '#aaa',
secondaryBorderColor: '#ddd',
universalMargin: 0.5, // in rem
universalPadding: 0.5, // in rem
universalBorderRadius: 0.125, // in rem
universalBoxShadow: 0, // uses presets
headingLineHeight: 1.2, // unitless
headingRatio: 1.19, // unitless
headingFontWeight: 500, // unitless (weight)
subheadingFontSize: 0.75, // in em
subheadingTopMargin: -0.25, // in rem
smallFontSize: 0.75, // in em
boldFontWeight: 700, // unitless (weight)
horizontalRuleLineHeight: 1.25, // in em
blockquoteSidebarColor: '#f57c00',
blockquoteQuoationSize: 3, // in rem
blockquoteCiteSize: 0.75, // in rem
codeFontSize: 0.85, // in em
preSidebarColor: '#1565c0',
supTop: -0.5, // in em
subBottom: -0.25, // in em
aLinkColor: '#0277bd',
aVisitedColor: '#01579b',
mobileBreakpoint: 768, // in px, generally needed in other modules
largeScreenBreakpoint: 1280, // in px, generally needed in other modules
},
// Also needs to build on top of mixins
layout: {
enabled: true,
gridColumnCount: 12, // unitless (count)
gridMediumBreakpoint: 768, // in px, auto-ties to mobileBreakpoint
gridLargeBreakpoint: 1280, // in px, auto-ties to largeScreenBreakpoint
cardNormalWidth: 320, // in px
cardSectionMediaHeight: 200, // in px
cardForeColor: '#111', // Tied to foreColor, auto-updates if defaulted
cardBackColor: '#f8f8f8', // Tied to backColor, auto-updates if defaulted
cardBorderColor: '#ddd', // Tied to secondaryBorderColor, auto-updates
},
// Also needs to build on top of mixins
inputControl: {
enabled: true,
formBackColor: '#f0f0f0', // Tied to secondaryBackColor, auto-updates
formForeColor: '#111', // Tied to foreColor, auto-updates
formBorderCoor: '#ddd', // Tied to secondaryBorderColor, auto-updates
inputBackColor: '#f8f8f8', // Tied to backColor, auto-updates
inputForeColor: '#111', // Tied to foreColor, auto-updates
inputBorderColor: '#ddd', // Tied to secondaryBorderColor, auto-updates
inputFocusColor: '#0288d1',
inputInvalidColor: '#d32f2f',
buttonBackColor: '#e2e2e2',
buttonForeColor: '#212121',
buttonHoverBackColor: '#dcdcdc',
buttonBorderColor: 'transparent',
buttonHoverBorderColor: 'transparent',
buttonGroupBorderColor: 'rgba(124,124,124,0.54)', // Probably needs a decent control
},
navigation: {
enabled: true,
headerHeight: 3.1875, // in rem, probably auto-calculate from line heights
headerBackColor: '#f8f8f8', // Tied to backColor, auto-updates
headerForeColor: '#444', // Tied to secondaryForeColor, auto-updates
headerHoverBackColor: '#f0f0f0', // Tied to secondaryBackColor, auto-updates
headerBorderColor: '#ddd', // Tied to secondaryBorderColor, auto-updates
headerLogoFontSize: 1.75, // in rem
navBackColor: '#f8f8f8', // Tied to backColor, auto-updates
navForeColor: '#444', // Tied to secondaryForeColor, auto-updates
navHoverBackColor: '#f0f0f0', // Tied to secondaryBackColor, auto-updates
navBorderColor: '#ddd', // Tied to secondaryBorderColor, auto-updates
navLinkColor: '#0277bd', // Tied to aLinkColor, auto-updates
navSublinkDepth: 2, // unitless (count)
footerBackColor: '#f8f8f8', // Tied to backColor, auto-updates
footerForeColor: '#444', // Tied to secondaryForeColor, auto-updates
footerBorderColor: '#ddd', // Tied to secondaryBorderColor, auto-updates
footerLinkColor: '#0277bd', // Tied to aLinkColor, auto-updates
footerFontSize: 0.875, // in rem
drawerBackColor: '#f8f8f8', // Tied to backColor, auto-updates
drawerHoverBackColor: '#f0f0f0', // Tied to secondaryBackColor, auto-updates
drawerBorderColor: '#ddd', // Tied to secondaryBorderColor, auto-updates
drawerCloseColor: '#444', // Tied to secondaryForeColor, auto-updates
drawerToggleFontSize: 1.5, // in em
drawerWidth: 320, // in px
drawerCloseSize: 2, // in rem
},
table: {
enabled: true,
maxHeight: 400, // in px
captionFontSize: 1.5, // in rem
mobileCardLabel: 'data-label',
mobileLabelFontWeight: 600, // unitless (weight),
borderColor: '#aaa', // Tied to borderColor, auto-updates
borderSeparatorColor: '#666',
thBackColor: '#e6e6e6',
thForeColor: '#111', // Tied to foreColor, auto-updates
tdBackColor: '#f8f8f8', // Tied to backColor, auto-updates
tdForeColor: '#111', // Tied to foreColor, auto-updates
tdAltBackColor: '#eee',
tdHoverBackColor: '#90caf9',
},
// Also needs to build on top of mixins
contextual: {
enabled: true,
markBackColor: '#0277bd',
markForeColor: '#fafafa',
markFontSize: 0.95, // in em
markLineHeight: 1, // in em
toastBackColor: '#424242',
toastForeColor: '#fafafa',
tooltipBackColor: '#212121',
tooltipForeColor: '#fafafa',
modalOverlayColor: 'rgba(0, 0, 0, 0.45)', // Probably needs a decent control
modalCloseColor: '#444', // Tied to secondaryForeColor, auto-updates
modalCloseHoverBackColor: '#f0f0f0', // Tied to secondaryBackColor, auto-updates
modalCloseSize: 1.75, // in rem
collapseLabelHeight: 1.5, // in rem
collapseContentMaxHeight: 400, // in px
collapseContentBackColor: '#fafafa',
collapseLabelBackColor: '#e8e8e8',
collapseLabelForeColor: '#212121',
collapseLabelHoverBackColor: '#f0f0f0', // Tied to secondaryBackColor, auto-updates
collapseSelectedLabelBackColor: '#ececec',
collapseBorderColor: '#ddd', // Tied to secondaryBorderColor, auto-updates
collapseSelectedLabelBorderColor: '#0277bd', // Tied to aLinkColor, auto-updates
},
// Also needs to build on top of mixins
progress: {
enabled: true,
backColor: '#ddd', // Tied to secondaryBorderColor, auto-updates
foreColor: '#555',
height: 0.75, // in rem
maxValue: 1000, // unitless (count),
inlineWidth: 60, // percentage
spinnerDonutSize: 1.25, // in rem
spinnerDonutBorderThickness: 0.25, // in rem
spinnerDonutBackColor: '#ddd', // Tied to progress.backColor, auto-updates
spinnerDonutForeColor: '#555', // Tied to progress.foreColor, auto-updates
},
icon: {
enabled: true,
},
utility: {
enabled: true,
genericBorderColor: 'rgba(0, 0, 0, 0.3)', // Probably needs a decent control
genericBoxShadowColor: 'rgba(0, 0, 0, 0.125)', // Probably needs a decent control
}
}
I'm excited for the flavor tool! I'm using mini on a project at work, and the only customization I really have to make is colors (to match our 'brand'), which right now means I'm sort of making my own flavor, and this tool looks like it will make that task much nicer!
Hey, everyone! I'm still working on the flavor tool. So far, the structure of most of the form controls for it are complete, except dynamic elements for mixins. I have started hooking up the forms to variables and generating the Sass code, later I will have to compile that code into a flavor file and then produce the final CSS file. So far core
, icon
and module
are fully hooked up and I am hoping to get at least another 1-2 modules done until Monday. Hopefully, I won't be slowed down by work, so I expect to have most modules (except dynamic fields/mixins) hooked up to variables and Sass generation by the end of next week.
Flavor tool is ready to rock. It generates the .zip
file with all of the framework, flavor file and compiled CSS files. If everything goes according to plan, I will polish everything up, add some missing flavors and release during this week. After the longest time, Gluon will be released! 😄
After almsot 8 months in the making, Gluon has been finally released. Hope you'll enjoy using it in your projects! 😃
Fermion will be considered a legacy branch, but it will still be supported and its documentation will be available for a long time.
Maybe this is something obvious I'm missing, but how do we get to the Fermion documentation now? I am unable to find it.
@andrewharris-workstate The docs are still available at https://minicss.org/v2/.
ahhh thank you @Chalarangelo! i was trying different permutations of "minicss.org/docs/v2" to no avail...much appreciated!
Overview
v3.0.0 (Gluon) is going to be a step in a different direction from Fermion, as it will be built from the ground up, with certain differences in focus and scope. Many breaking changes will be present, however some core concepts and ideas will be staying the same.
Some of the key features that will be present in the new Gluon branch are support for CSS3 variables, which will impact most aspects of the current codebase, possible support for CSS3 grid, additional components and replacement components, as well as many UI/UX improvements, which will be the focus of the next major release. To meet these goals, the framework will be rebuilt with a focus on better aesthetics, easier customization and better user experience, even if this impacts adoption rates, due to the discontinuation of support for legacy and proxy browsers, as Gluon will be built with a focus on the future. There is also the slight possibility that Gluon will be a bit larger than 7KB in certain of its flavors, however there will always be some light flavor meeting the core goal of 7KB.
That being said, the current Fermion branch will be supported actively, with fixes and possibly updates rolling out regularly, while Gluon is in development. After Gluon is released (estimated release date is Q1 2018 for now - this is subject to change), Fermion will be considered a legacy branch, but it will still be supported and its documentation will be available for a long time. On a side note, if you are reading this and use a Fermion build in production, make sure to point to a link with v2.x.x in its name and not the default one which loads from the last commit of the
master
branch.Finally, the Neutrino branch will not be supported any further, as it is hereafter considered a legacy version.
Gluon - List of changes, updates, features
Note that all of this is subject to change and that it is very importan to get as much feedback as possible to provide the best possible experience for everyone. The lists below will be populated as progress is being made in each module.
core
module, featuring less legacy fixes, along with restyling of multiple elements.-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Ubuntu, "Helvetica Neue", Helvetica, sans-serif
).code
,pre
,kbd
andblockquote
.pre
elements.blockquote
elements.hr
element styling.padding-left
in lists should be based on--universal-margin
or if it should use--universal-padding
instead.grid
module. There might be something like a tile system as well, utilizing CSS grid.xs
screen size, it will now be three sizes only.navigation
elements, with focus on mobile usability.nav
element'smargin
etc. are optimized to work with.drawer
component..drawer
component.header
styling andpadding
.header
linksuppercase
.footer
element.input_control
to allow for easier customization and better user experience.form
,fieldset
,legend
).margin
values forlabel
and reevaluate to work with UX and icons (customized variants).radio
andcheckbox
. The next iteration will style theinput
s directly, instead of labels, making it significantly more accessible and less complex in the coding behind it..input-group
s included by default as a whole, not as individual pieces, use a hidden variable..button-group
s and figure out if pagination can be added to the whole thing (possibly just as examples).table
module, utilizing flexbox and infinitely scrollable tables for a better user experience..hoverable
tables.card
layout, allowing for more versatile layouts.card
module intolayout
, which will include it, alongsidegrid
.padding
in.double-padded
.section
s.tab
systems or even removal of tabs in favor of a better, easier-to-use system.tab
module entirely, move the vertical version intocontextual
to be used as aspoiler
component. Tabs are not going to be part of the Gluon release, as their use-cases are reasonably limited and cause a whole lot of problems. Javascript examples with proper navigation will be provided, instead.contextual
module with more components that are easier to use and customize.mark
elements..modal
,.tooltip
and.toast
elements. No legacy support and variables, as well as some changes (possibly) to make sure the are easy to use and maintain.progress
module, mainly removing legacy support and slightly improving on the aesthetics of components.progress
and.spinner-donut
and a.primary
variant to replace the old default.utility
module..breadcrumbs
andclose
.Javascript examples and support scripting, allowing users to get more bang for their buck, if they need in specific components (e.g. table sorting).Dynamic mixin addition for each module (up to a specific limit)Predefined mixins customization.Compatibility
As stated in the Overview section, the Gluon update will be a brand new framework, meaning a lot of the existing conventions and semantics will be changed. If you are using a previous version of Fermion, remember to point to a version-specific link.
Migrating to Gluon might take a little bit of effort, but I will try to make it as smooth as possible, by providing guidelines and help every step of the way.
Release date
It's too soon to tell, but the aim is to release sometime in the first quarter of 2018.