BUILDING BIT
Lessons learned in the trenches
Gilad Shoham
Dev & Open
Source Leader
@bit
shoham.gilad@gmail.com
gilad@bit.dev
https://github.com/GiladShoham
@shohamgilad
KEY FACTORS
Building an open source product
Prioritization of features
(community vs. organizations)
KEY FACTORS
Code quality is your quality
KEY FACTORS
Issue/task management
KEY FACTORS
Docs: users & developers
KEY FACTORS
Commercial features in OSS? (‘bit login’)
KEY FACTORS
Get and give (!) pull request
KEY FACTORS
Ecosystem compatibility
KEY FACTORS
“Building with components”
Sounds simple, right?
● Create & Share
● Team structure
● Versioning
● CI
APP VS COMPONENTS
● State
● Styling
● Config
● Bundling vs Transpiling
● Relative paths
● Dev env (build & test)
Dependencies
CREATE & SHARE
● Global
● Component is aware to outside
structure
STATE
“It’s hard to reuse stateful logic between
components” (react official docs)
● Global
● Breaks isolation (affect others)
● Support theming
● Consistency
STYLING
● Project coupling
● Components configuration
○ Dependencies
○ Metadata
○ Entry file
CONFIG
BUNDLING VS TRANSPILING
(Apps)
(Components)
RELATIVE PATHS
import Button from '../../../../../button';
import Button from '@my-org/button';
DEPENDENCIES
● Peer dependencies
● Duplications
● Bundle size
DEV ENV
AUTONOMOUS
TEAMS
VERSIONING
Individual vs entire component library
GRAPH CI
DEPLOYMENT
Continuous
Composition
DEMO
MEET BIT
CLI - (Open source) VS web (commercial)
VS
CLI - Isolate, sync, version management
KEY FACTORS
Web - discover, collaborate, experience
KEY FACTORS
DISCOVER
EXPERIENCE
Conclusion
Join the community
KEY FACTORS
10K 10K 10K
Thanks!

2020-02-09 - In.Dev - Building bit - Lessons Learned In The Trenches