Skip to content

Commit

Permalink
docs: add spell checker to ci
Browse files Browse the repository at this point in the history
Adds cspell to CI to catch typos in code and docs.
  • Loading branch information
achingbrain committed Feb 23, 2025
1 parent 2c7185c commit f620b57
Show file tree
Hide file tree
Showing 42 changed files with 520 additions and 176 deletions.
42 changes: 42 additions & 0 deletions .github/cspell.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
{
// Enable your dictionary by adding it to the list of `dictionaries`
"dictionaries": ["custom-words"],

// Tell CSpell about your dictionary
"dictionaryDefinitions": [{
// The name of the dictionary is used to look it up.
"name": "custom-words",
// Path to the custom word file. Relative to this `cspell.json` file.
"path": "./wordlist.txt",
// Some editor extensions will use `addWords` for adding words to your
// personal dictionary.
"addWords": true
}],

"files": [
"**/*.{ts,js,md}",
"!**/dist/**",
"!**/node_modules/**",
"!**/CHANGELOG.md"
],

"ignoreRegExpList": [
// ignore import names (e.g. `import foo from 'module-name-with-typo'`)
"/from\\s+(['\"]).*\\1/",

// ignore anything in backticks
"/`.*`/",

// multiaddrs are not spell checked
"/multiaddr(.*)/",

// peer ids are not spell checked
"/peerIdFromString(.*)/",

// string encoded binary is not spell checked
"/uint8ArrayFromString(.*)/",

// CIDs are not spell checked
"/CID(.*)/"
]
}
270 changes: 270 additions & 0 deletions .github/wordlist.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,270 @@
achingbrain
additionals
addr
addrs
aegir
alanshaw
autodial
autodialer
autonat
bafyfoo
bafzaa
bavail
bfree
bitfield
bitswap
blockstore
BLPOP
bootstrapper
bufs
buildx
casttree
cbor
cborg
cd
certhash
certhashes
chainsafe
chunker
ci
cid
cids
cidv
ciphertext
cjs
cms
cnames
codecov
comms
composable
config
const
createLibp
crypto
cryptographically
dagcbor
dagjson
datagrams
datastore
dcutr
dedupe
dek
deps
DER
dev
devcon
devs
devtools
dht
dhts
dialability
dialable
dialer
discv
dnsaddr
dnsaddrs
dnslink
Dout
dumbsub
encrypter
Encrypters
esm
ethereum
EventEmitter
eventloop
fanout
FIL
filecoin
filecoinv
firewalled
floodsub
fs
garply
gater
getbit
getValue
github
GOLOG
gossipsub
graphana
graphsync
hacky
hamt
hashers
helia
hopr
hopstr
ihave
implementers
Impls
incrby
io
ipcidr
ipfs
ipfsd
ipld
ipni
ipns
ipshipyard
IPv
iterable
iterables
iwant
kad
kadDHT
kademlia
KBUCKET
keychain
keypair
keypairs
keystore
kubo
ldelim
libjuice
libp
maconn
mafmt
marshaled
matcher
mdns
mDNS
meshsub
millis
misconfigurations
monorepo
mplex
multiaddr
multiaddrs
multibase
multicodec
multicodecs
multidim
multiformats
multihash
multihashes
multistream
muxed
muxer
muxerfactory
muxers
muxing
namespace
namesys
nat
NATed
nim
nist
nodejs
nothrow
npm
nsecs
onboarding
opensource
osi
p's
pbes
pbkdf
pblink
pbstr
pc
peerbit
pem
perf
pinset
pkcs
pkix
plaintext
pmp
pnet
polyfill
pre
priv
productionization
programmatically
protobuf
protos
protoschool
provs
PRs
PSK
pubsub
pushable
Qmfoo
quic
QUICV
removeObservedAddr
Reprovide
Reprovider
RequireJS
responder
retimeable
rlflx
roadmap
routable
rpc
rpush
rsa
runtimes
sdp
secio
secp
semver
seqno
setbit
sha
sparsearray
SSDP
SSL
stablelib
startable
startables
statfs
stopstr
stringified
stringifies
stringifying
subarray
sublist
subnet
supercop
tdigest
testdata
timespec
toc
TODO
topologies
tsconfig
tutorialkit
ufrag
uint
unconfirm
undialable
undialables
unhandle
unixfs
unmarshal
unmarshaled
unmarshaling
unmarshals
untake
unwant
upgradability
upgrader
upnp
upnpnat
urlpad
useragent
varint
vyzo
Waku
wantlist
weakcb
weald
webapp
webrtc
webrtcdirect
webtransport
wnfs
XSalsa
xxbloom
yamux
4 changes: 4 additions & 0 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,10 @@ jobs:
- run: npm run --if-present lint
- run: npm run --if-present dep-check
- run: npm run --if-present doc-check
- uses: streetsidesoftware/cspell-action@ef95dc49d631fc2a9e9ea089ae2b2127b7c4588e # v6.10.0
with:
config: .github/cspell.json
use_cspell_files: true

test-node:
needs: build
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -232,7 +232,7 @@ There are several other modules available outside this repo:
- [`@helia/delegated-routing-v1-http-api`](https://github.com/ipfs/helia-delegated-routing-v1-http-api) An implementation of the [Delegated Routing v1 HTTP API](https://specs.ipfs.tech/routing/http-routing-v1/) including a server and a client
- [Helia WNFS](https://github.com/shovelers/helia-wnfs) a [WNFS](https://guide.fission.codes/developers/webnative/file-system-wnfs) implementation built on top of Helia
- [`@helia/remote-pinning`](https://github.com/ipfs/helia-remote-pinning) A Helia client for communicating with [IPFS Pinning Services](https://ipfs.github.io/pinning-services-api-spec/)
- [`@helia/http-gateway`](https://github.com/ipfs/helia-http-gateway) An implentation of the [IPFS HTTP Gateway API](https://docs.ipfs.tech/concepts/ipfs-gateway/#gateway-types) built with Helia
- [`@helia/http-gateway`](https://github.com/ipfs/helia-http-gateway) An implementation of the [IPFS HTTP Gateway API](https://docs.ipfs.tech/concepts/ipfs-gateway/#gateway-types) built with Helia

# 📣 Project status

Expand Down
8 changes: 4 additions & 4 deletions ROADMAP.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ https://github.com/ipfs/helia/issues/5
- [Q2](#q2)
- [Drive Adoption](#drive-adoption)
- [Q3](#q3)
- [Support Fully Speced Delegated Routing Protocols and Endpoints](#support-fully-speced-delegated-routing-protocols-and-endpoints)
- [Support Fully Specified Delegated Routing Protocols and Endpoints](#support-fully-specified-delegated-routing-protocols-and-endpoints)
- [PL Delegate and Preload Nodes Will Be Shutting Down](#pl-delegate-and-preload-nodes-will-be-shutting-down)
- [Past Milestones](#past-milestones)
- [2022](#2022)
Expand All @@ -44,17 +44,17 @@ Improve "hospitality" of the project: https://github.com/ipfs/helia/issues/35

After Helia is functional and users can adopt it, Protocol Labs EngRes ceases maintaining the legacy js-ipfs project. Issue for tracking js-ipfs deprecation with roadsigns to Helia: https://github.com/ipfs/js-ipfs/issues/4336

Port over examples from js-ipfs-examples to helia-examples to help with onramping: https://github.com/ipfs/helia/issues/29
Port over examples from js-ipfs-examples to helia-examples to help with on-ramping: https://github.com/ipfs/helia/issues/29

Demonstrate a practical example of Helia in a service worker as a fallback for HTTP gateways: https://github.com/ipfs/in-web-browsers/issues/207

Setup mechanism for measuring adoption: https://github.com/ipfs/helia/issues/41

### Q3

#### Support Fully Speced Delegated Routing Protocols and Endpoints
#### Support Fully Specified Delegated Routing Protocols and Endpoints

While it will be possible from a connectivity perspective to make DHT queries from a browser, we expect various applications will want to still delegate out routing. [HTTP Routing v1](https://github.com/ipfs/specs/blob/main/routing/ROUTING_V1_HTTP.md) is a protocol for delegated routing that other IPFS implementations like Kubo have implemented. While it currently uses HTTP as a transport, it is speced and not tied to the Kubo RPC API.
While it will be possible from a connectivity perspective to make DHT queries from a browser, we expect various applications will want to still delegate out routing. [HTTP Routing v1](https://github.com/ipfs/specs/blob/main/routing/ROUTING_V1_HTTP.md) is a protocol for delegated routing that other IPFS implementations like Kubo have implemented. While it currently uses HTTP as a transport, it is specified and not tied to the Kubo RPC API.

#### PL Delegate and Preload Nodes Will Be Shutting Down

Expand Down
Loading

0 comments on commit f620b57

Please sign in to comment.