Skip to content

Commit e144655

Browse files
committed
First commit.
0 parents  commit e144655

39 files changed

+2074
-0
lines changed

.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
/target
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
-----BEGIN PGP SIGNED MESSAGE-----
2+
Hash: SHA256
3+
4+
# Contributor License Agreement
5+
6+
Version 1.0
7+
8+
Name: `Wolf McNally`
9+
10+
11+
12+
Legal Jurisdiction: Wyoming, United States of America
13+
14+
Project: https://github.com/BlockchainCommons/bc-seedtool-cli
15+
16+
Date: `June 7, 2024`
17+
18+
## Purpose
19+
20+
This agreement gives Blockchain Commons, LLC the permission it needs in order to accept my contributions into its open software project and to manage the intellectual property in that project over time.
21+
22+
## License
23+
24+
I hereby license Blockchain Commons, LLC to:
25+
26+
1. do anything with my contributions that would otherwise infringe my copyright in them
27+
28+
2. do anything with my contributions that would otherwise infringe patents that I can or become able to license
29+
30+
3. sublicense these rights to others on any terms they like
31+
32+
## Reliability
33+
34+
I understand that Blockchain Commons will rely on this license. I may not revoke this license.
35+
36+
## Awareness
37+
38+
I promise that I am familiar with legal rules, like ["work made for hire" rules](http://worksmadeforhire.com), that can give employers and clients ownership of intellectual property in work that I do. I am also aware that legal agreements I might sign, like confidential information and invention assignment agreements, will usually give ownership of intellectual property in my work to employers, clients, and companies that I found. If someone else owns intellectual property in my work, I need their permission to license it.
39+
40+
## Copyright Guarantee
41+
42+
I promise not to offer contributions to the project that contain copyrighted work that I do not have legally binding permission to contribute under these terms. When I offer a contribution with permission, I promise to document in the contribution who owns copyright in what work, and how they gave permission to contribute it. If I later become aware that one of my contributions may have copyrighted work of others that I did not have permission to contribute, I will notify Blockchain Commons, in confidence, immediately.
43+
44+
## Patent Guarantee
45+
46+
I promise not to offer contributions to the project that I know infringe patents of others that I do not have permission to contribute under these terms.
47+
48+
## Open Source Guarantee
49+
50+
I promise not to offer contributions that contain or depend on the work of others, unless that work is available under a license that [Blue Oak Council rates bronze or better](https://blueoakconcil.org/list), such as the MIT License, two- or three-clause BSD License, the Apache License Version 2.0, or the Blue Oak Model License 1.0.0. When I offer a contribution containing or depending on others' work, I promise to document in the contribution who licenses that work, along with copies of their license terms.
51+
52+
## Disclaimers
53+
54+
***As far as the law allows, my contributions come as is, without any warranty or condition. Other than under [Copyright Guarantee](../../dcbor-cli/CLA.md#copyright-guarantee), [Patent Guarantee](../../dcbor-cli/CLA.md#patent-guarantee), or [Open Source Guarantee](../../dcbor-cli/CLA.md#open-source-guarantee), I will not be liable to anyone for any damages related to my contributions or this contributor license agreement, under any kind of legal claim.***
55+
-----BEGIN PGP SIGNATURE-----
56+
57+
iQIzBAEBCAAdFiEElDZS7jhEF2DD3DU2S2wvz4lHgK4FAmZj1WsACgkQS2wvz4lH
58+
gK5TCg//aEFVu0sfqlrM1iJ7/qR+lX6bLZSDuqtXhVQHic4/AhLQ4lnnk7gzF9oV
59+
xyfGVkeTH2lvORazoLTEbDHtZQ4kxjv+Py8arGHsJiudbW194GsPWk9Npo2A97yV
60+
t4iXX6T23+LwIqg65O/X68z+eibTZNz+l75D1xp1KLrZ0Y0Ng7c8kbKMq5xATfzk
61+
5WNF+NvhxO0AmA4thuYHrZG6m2Qh4nHis1k792Vt4/2kQAmfxY1wpzpC6l5ezG1t
62+
AjCeQvQAnm0/VhcXjCafAVwY+ag/C0+IeEAtHJU4JknwaYcx28wCZ4tOObJfNCfL
63+
BPtqKUpyIkVFlQxwYbzb3o8xLJXzBH7vMStqdPb9cG5cqeQcwidsKB9RytVPwY4b
64+
3QJQz+G9Y+aS38k1BQL3+40E+aEhQTkVf3gXYOJcY3FxBZz8YdvLDPJID+MI8dGw
65+
W3ThxZewxMwQeI2zS0HTgCgpTpkeVz+bs+nB8HHMOaNDOOlTY487ehetNvqu9usb
66+
flj86BIHcR/6wNm8iOrkzx4BTrS/GapK9cgovoEaEHGFqDRIx7DoyIXLr/8j5Cfv
67+
aMPQqEq2CPyJftTRmvw1WrkGgbLGILApiQPrKoWWlctHF23zDwXYfK0EajUJj64i
68+
/WQaOHjDZXw8AF3r1xBqBhey84OR0YDct81ivtosfZ+4j07act0=
69+
=nFXE
70+
-----END PGP SIGNATURE-----

CLA.md

+55
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
# Contributor License Agreement
2+
3+
Version 1.0
4+
5+
Name: `$name`
6+
7+
E-Mail: `$email`
8+
9+
Legal Jurisdiction: Wyoming, United States of America
10+
11+
Project: https://github.com/BlockchainCommons/bc-seedtool-cli
12+
13+
Date: `$date`
14+
15+
## Purpose
16+
17+
This agreement gives Blockchain Commons, LLC the permission it needs in order to accept my contributions into its open software project and to manage the intellectual property in that project over time.
18+
19+
## License
20+
21+
I hereby license Blockchain Commons, LLC to:
22+
23+
1. do anything with my contributions that would otherwise infringe my copyright in them
24+
25+
2. do anything with my contributions that would otherwise infringe patents that I can or become able to license
26+
27+
3. sublicense these rights to others on any terms they like
28+
29+
## Reliability
30+
31+
I understand that Blockchain Commons will rely on this license. I may not revoke this license.
32+
33+
## Awareness
34+
35+
I promise that I am familiar with legal rules, like ["work made for hire" rules](http://worksmadeforhire.com), that can give employers and clients ownership of intellectual property in work that I do. I am also aware that legal agreements I might sign, like confidential information and invention assignment agreements, will usually give ownership of intellectual property in my work to employers, clients, and companies that I found. If someone else owns intellectual property in my work, I need their permission to license it.
36+
37+
## Copyright Guarantee
38+
39+
I promise not to offer contributions to the project that contain copyrighted work that I do not have legally binding permission to contribute under these terms. When I offer a contribution with permission, I promise to document in the contribution who owns copyright in what work, and how they gave permission to contribute it. If I later become aware that one of my contributions may have copyrighted work of others that I did not have permission to contribute, I will notify Blockchain Commons, in confidence, immediately.
40+
41+
## Patent Guarantee
42+
43+
I promise not to offer contributions to the project that I know infringe patents of others that I do not have permission to contribute under these terms.
44+
45+
## Open Source Guarantee
46+
47+
I promise not to offer contributions that contain or depend on the work of others, unless that work is available under a license that [Blue Oak Council rates bronze or better](https://blueoakconcil.org/list), such as the MIT License, two- or three-clause BSD License, the Apache License Version 2.0, or the Blue Oak Model License 1.0.0. When I offer a contribution containing or depending on others' work, I promise to document in the contribution who licenses that work, along with copies of their license terms.
48+
49+
## Disclaimers
50+
51+
***As far as the law allows, my contributions come as is, without any warranty or condition. Other than under [Copyright Guarantee](#copyright-guarantee), [Patent Guarantee](#patent-guarantee), or [Open Source Guarantee](#open-source-guarantee), I will not be liable to anyone for any damages related to my contributions or this contributor license agreement, under any kind of legal claim.***
52+
53+
---
54+
55+
To sign this Contributor License Agreement, fill in `$name`, `$email`, and `$date` above. Then sign using GPG using the following command `gpg --armor --clearsign --output ./CLA-signed/CLA.YOURGITHUBNAME.YOURGPGFINGERPRINT.asc CLA.md`, then either submit your signed Contributor License Agreement to this repo as a GPG signed Pull Request or email it to [[email protected]](mailto:[email protected]).

CODEOWNERS

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
# These owners will be the default owners for everything in this repo.
2+
3+
* @ChristopherA
4+
* @WolfMcNally

CONTRIBUTING.md

+65
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
# Contributing
2+
3+
We love your input! We want to make contributing to this project as easy and transparent as possible, whether it's:
4+
5+
- Reporting a bug
6+
- Discussing the current state of the code
7+
- Submitting a fix
8+
- Proposing new features
9+
- Becoming a maintainer
10+
11+
## We Develop with Github
12+
We use GitHub to host code, to track issues and feature requests, and to accept Pull Requests.
13+
14+
## Report Bugs using Github's [issues](https://github.com/briandk/transcriptase-atom/issues)
15+
16+
If you find bugs, mistakes, or inconsistencies in this project's code or documents, please let us know by [opening a new issue](./src/issues), but consider searching through existing issues first to check and see if the problem has already been reported. If it has, it never hurts to add a quick "+1" or "I have this problem too". This helps prioritize the most common problems and requests.
17+
18+
### Write Bug Reports with Detail, Background, and Sample Code
19+
20+
[This is an example](http://stackoverflow.com/q/12488905/180626) of a good bug report by @briandk. Here's [another example from craig.hockenberry](http://www.openradar.me/11905408).
21+
22+
**Great Bug Reports** tend to have:
23+
24+
- A quick summary and/or background
25+
- Steps to reproduce
26+
- Be specific!
27+
- Give sample code if you can. [The stackoverflow bug report](http://stackoverflow.com/q/12488905/180626) includes sample code that *anyone* with a base R setup can run to reproduce what I was seeing
28+
- What you expected would happen
29+
- What actually happens
30+
- Notes (possibly including why you think this might be happening, or stuff you tried that didn't work)
31+
32+
People *love* thorough bug reports. I'm not even kidding.
33+
34+
## Submit Code Changes through Pull Requests
35+
36+
Simple Pull Requests to fix typos, to document, or to fix small bugs are always welcome.
37+
38+
We ask that more significant improvements to the project be first proposed before anybody starts to code as an [issue](./src/issues) or as a [draft Pull Request](./src/pulls), which is a [nice new feature](https://github.blog/2019-02-14-introducing-draft-pull-requests/) that gives other contributors a chance to point you in the right direction, give feedback on the design, and maybe discuss if related work is already under way.
39+
40+
### Use a Consistent Coding Style
41+
42+
* We indent using two spaces (soft tabs)
43+
* We ALWAYS put spaces after list items and method parameters ([1, 2, 3], not [1,2,3]), around operators (x += 1, not x+=1), and around hash arrows.
44+
* This is open-source software. Consider the people who will read your code, and make it look nice for them. It's sort of like driving a car: Perhaps you love doing donuts when you're alone, but with passengers the goal is to make the ride as smooth as possible.
45+
46+
### Use [Github Flow](https://guides.github.com/introduction/flow/index.html) for Pull Requests
47+
48+
We use [Github Flow](https://guides.github.com/introduction/flow/index.html). When you submit Pull Requests, please:
49+
50+
1. Fork the repo and create your branch from `master`.
51+
2. If you've added code that should be tested, add tests.
52+
3. If you've changed APIs, update the documentation.
53+
4. Ensure the test suite passes.
54+
5. Make sure your code lints.
55+
6. Issue that Pull Request!
56+
57+
### Submit Under the BSD-2-Clause Plus Patent License
58+
59+
In short, when you submit code changes, your submissions are understood to be available under the same [BSD-2-Clause Plus Patent License](./src/LICENSE.md) that covers the project. We also ask all code contributors to GPG sign the [Contributor License Agreement (CLA.md)](./src/CLA.md) to protect future users of this project. Feel free to contact the maintainers if that's a concern.
60+
61+
## References
62+
63+
Portions of this CONTRIBUTING.md document were adopted from best practices of a number of open source projects, including:
64+
* [Facebook's Draft](https://github.com/facebook/draft-js/blob/a9316a723f9e918afde44dea68b5f9f39b7d9b00/CONTRIBUTING.md)
65+
* [IPFS Contributing](https://github.com/ipfs/community/blob/master/CONTRIBUTING.md)

Cargo.toml

+38
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
[package]
2+
name = "seedtool-cli"
3+
version = "0.1.0"
4+
edition = "2021"
5+
description = "Gordian Seed Tool."
6+
authors = ["Blockchain Commons"]
7+
keywords = ["crypto", "random", "seed", "mnemonic", "bitcoin"]
8+
repository = "https://github.com/BlockchainCommons/bc-envelope-cli-rust"
9+
readme = "README.md"
10+
license = "BSD-2-Clause-Patent"
11+
categories = ["cryptography::cryptocurrencies", "command-line-utilities"]
12+
documentation = "https://docs.rs/bc-envelope-cli"
13+
14+
[[bin]]
15+
name = "seedtool"
16+
path = "src/main.rs"
17+
18+
[dependencies]
19+
dcbor = "^0.14.0"
20+
bc-ur = "^0.4.2"
21+
bc-envelope = "^0.17.5"
22+
bc-components = "^0.11.0"
23+
bc-rand = "^0.1.0"
24+
bc-crypto = "^0.3.0"
25+
sskr = "^0.3.4"
26+
27+
clap = { version = "^4.4.3", features = ["derive", "unstable-styles"] }
28+
anyhow = "^1.0.0"
29+
anstyle = "^1.0.1"
30+
hex = "^0.4.3"
31+
regex = "^1.9.5"
32+
clap-num = "1.1.1"
33+
bytes = "1.6.0"
34+
bip39 = "2.0.0"
35+
36+
[dev-dependencies]
37+
indoc = "^2.0.0"
38+
assert_cmd = "^2.0.12"

LICENSE.md

+21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
Unless otherwise noted (either in /README.md or in the file's header comments) the contents of this repository are released under the following license:
2+
3+
BSD-2-Clause Plus Patent License
4+
5+
SPDX-License-Identifier: [BSD-2-Clause-Patent](https://spdx.org/licenses/BSD-2-Clause-Patent.html)
6+
7+
Copyright © 2019 Blockchain Commons, LLC
8+
9+
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
10+
11+
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
12+
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
13+
Subject to the terms and conditions of this license, each copyright holder and contributor hereby grants to those receiving rights under this license a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except for failure to satisfy the conditions of this license) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer this software, where such license applies only to those patent claims, already acquired or hereafter acquired, licensable by such copyright holder or contributor that are necessarily infringed by:
14+
15+
(a) their Contribution(s) (the licensed copyrights of copyright holders and non-copyrightable additions of contributors, in source or binary form) alone; or
16+
(b) combination of their Contribution(s) with the work of authorship to which such Contribution(s) was added by such copyright holder or contributor, if, at the time the Contribution is added, such addition causes such combination to be necessarily infringed. The patent license shall not apply to any other combinations which include the Contribution.
17+
Except as expressly stated above, no rights or licenses from any copyright holder or contributor is granted under this license, whether expressly, by implication, estoppel or otherwise.
18+
19+
DISCLAIMER
20+
21+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

MANUAL.md

+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# 🌱 Seedtool
2+
3+
**Version 0.1.0**<br/>**June 16, 2024**
4+
5+
*Copyright © 2024 by Blockchain Commons, LLC*<br/>*Licensed under the "BSD-2-Clause Plus Patent License"*
6+
7+
---
8+
9+
*Forthcoming*

0 commit comments

Comments
 (0)