Coder Social home page Coder Social logo

kuldeepkeshwar / filbert-js Goto Github PK

View Code? Open in Web Editor NEW
175.0 3.0 9.0 4.61 MB

A lightweight(~1kb) css-in-js framework

Home Page: https://filbert-js.vercel.app/docs/introduction

License: MIT License

JavaScript 89.05% HTML 6.30% CSS 4.56% Shell 0.09%
css-in-js light-weight 1kb-library react preact css filbert-js styled-components emotion styling

filbert-js's Introduction

version

All Contributors

gzip size downloads Discord




Filbert
A light weight (~1KB) css-in-js solution (framework) ๐ŸŽจ


Getting started

It is an alternative to styled-components(~12.51kB) or emotion(~11.3kB) with similar API surface.

Features

Name Status
CSS โœ…
Nested Selectors โœ…
Dynamic Styling(Prop based) โœ…
Override Component Style โœ…
Global โœ…
Pseudo Selector โœ…
Media Queries โœ…
Keyframe โœ…
Theming โœ…
Component Selector โœ…
Styles As Object Literals ๐Ÿ”œ
Server-side Rendering โœ…
Client-side Hydration โœ…
Vendor Prefixing โœ…
Extract CSS File โœ…
React Native ๐Ÿ”œ
Integration(Create React App) โœ…
Integration(Preact) โœ…
Integration(Gatsby) โœ…
Integration(Next.js) โœ…

Benchmarks

๐Ÿค How to Contribute

Whether you're helping us fix bugs, improve the docs, or spread the word, we'd love to have you as part of the community! ๐Ÿ’ช๐Ÿ’œ

Check out our Contributing Guide

Contributors โœจ

Thanks goes to these wonderful people (emoji key):


Vijay Singh

๐Ÿ–‹

anotherjsguy

๐Ÿ’ป

Vivek T A

๐Ÿ’ป

Dane David

๐Ÿ’ป

Vignesh Elangovan

๐Ÿ’ป

This project follows the all-contributors specification. Contributions of any kind welcome!

Backers

Thank you to all our backers! ๐Ÿ™

Sponsors

Support this project by becoming a sponsor. Your logo will show up here with a link to your website.

Acknowledgements

Without styled-components/emotion, filbert wouldn't exist. Thanks to all the wonderful people who have contributed towards these projects ๐Ÿ™

filbert-js's People

Contributors

allcontributors[bot] avatar danedavid avatar darth-koder007 avatar dependabot[bot] avatar devevignesh avatar github-actions[bot] avatar kamleshchandnani avatar kuldeepkeshwar avatar vivek32ta avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

filbert-js's Issues

Non-react support?

Quick question if the library could support/work with non React but but other jsx libraries that use the DOM instead of Virtual DOM implementation.

Support object syntax for styling

Right now filbert-js is only supporting tag template based styles.
As other libraries out there are supporting object based styled, object based styles has gain alot of popularity among the developer.

Write Tests

To release filbert-js without breaking existing stuff, We encourage writing more test(at-least cover the top level API).

Note: currently we are not doing a very good job on writing test(blame is on me).

Below are the packages where you can start.

  • @filbert-js/core
  • @filbert-js/theming
  • @filbert-js/server-stylesheet
  • @filbert-js/browser-stylesheet
  • @filbert-js/autoprefixer
  • @filbert-js/css-ast
  • @filbert-js/style-sheet-context
  • @filbert-js/css-parser
  • @filbert-js/stylesheet
  • @filbert-js/types
  • @filbert-js/macro
  • babel-plugin-filbert
  • gatsby-plugin-filbert

).

If you want to start fresh, We have a [todo list](https://filbert-js.vercel.app/docs/todo).
## Issues
Issues are very valuable to this project.


This issue was generated by todo based on a todo comment in 54f5a15. It's been assigned to @kuldeepkeshwar because they committed the code.

Add more description in documentation

Currently most examples(feature shown in website) are just in form of code + output.

We can be more verbose to that user can understand the intent behind the example.

Improve docs for usage of & with filbert.

Currently, we don't have proper docs for the usage of &(selector) with filbert. There are chances people get confused with &(selector) as a parent selector and not as how it is used in filbert.

Make Global styles theme aware

Right now, Global component doesn't support the theme prop.
i.e

<Global styles={`
 color: {({theme)=>theme.colors.brand}
`}/>

doesn't work.

Expectation:

Make Global component theme aware like styled.

Background Image appending a semi colon?

Hi there, so me again, apparently when importing an image in react and using the base64 iamge as background, at the end there is a : being added that breaks the image.

https://cad-overlay.netlify.app/

Here's the app, right under the div root, you should have a div with the background image that is not being set properly, if you want to check out my repo:

https://github.com/jenaro94/cad-overlay

If you inspect the css and remove that : the background image will show correctly.

Explain trade-offs

Considering that a lot of developers might already know styled-components, I think that it would be great to explain how Filbert is different. For instance, the readme could details the different tradeoff taken to shrink the bundle size.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.