Skip to content

Commit 84154af

Browse files
committed
document more
1 parent 45a9ed1 commit 84154af

File tree

1 file changed

+32
-1
lines changed

1 file changed

+32
-1
lines changed

README.md

Lines changed: 32 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,35 @@ Primitive core and composite elements serve just like expansive DOM elements of
1212

1313
## Structure
1414

15-
`web3-elements` is a scoped monorepo packaging: primitive elements as web components compiled with SolidJS, while wrapped and higher order components built in react and vue.
15+
`web3-elements` is a scoped monorepo packaging: primitive elements as web components compiled with SolidJS, while wrapped and higher order components built in react and vue.
16+
17+
## Elements: early ideas
18+
19+
### Core
20+
21+
- Address field and display (user and contract support)
22+
23+
### Wallet-Network Handling
24+
25+
- Wallet provider multi-select
26+
- Address / Network Switcher
27+
28+
### Transactions
29+
30+
- Bridges
31+
- Swaps
32+
- Transfers
33+
34+
## Thoughts on metadata
35+
36+
Elements are to binded with data, arbitrary at times, making certain manifests a dependency. If this wasn't a reality of building frontends for web3, `web3-elements` wouldn't have been a challenge at all.
37+
38+
A relevant overview blog: https://www.thinktecture.com/en/web-components/dependency-injection/
39+
40+
About the data to be injected, an intuitive workflow would be to model the types, then compile data from various sources, transform, hydrate static manifests, then publish in the repo, as well as distribute across decentralized storage options.
41+
42+
The manifests can be anywhere from very-slow to slow-changing.
43+
44+
## Need for a mental framework to model primitives
45+
46+
The purpose of primitives is to house the minimum of traits and qualities, to be consumed by reactive components, that provide styling, and data. Understanding the DX with existing libraries is crucial.

0 commit comments

Comments
 (0)