diff options
author | Mike Crute <mike@crute.us> | 2021-11-15 23:27:21 -0800 |
---|---|---|
committer | Mike Crute <mike@crute.us> | 2021-11-15 23:27:21 -0800 |
commit | 22b90e9deb1f706a3e1e01c64b3fd256112a5ede (patch) | |
tree | 7006672c7ba4b27251242104414eb80665278157 /README.md | |
parent | 3d7f26e200d1edefe68eac3b761acde57e244e42 (diff) | |
download | golib-22b90e9deb1f706a3e1e01c64b3fd256112a5ede.tar.bz2 golib-22b90e9deb1f706a3e1e01c64b3fd256112a5ede.tar.xz golib-22b90e9deb1f706a3e1e01c64b3fd256112a5ede.zip |
Add license and readme
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/README.md b/README.md new file mode 100644 index 0000000..f32c1e7 --- /dev/null +++ b/README.md | |||
@@ -0,0 +1,50 @@ | |||
1 | # Go Extension Library | ||
2 | |||
3 | This library contains extensions to the Go standard library that are | ||
4 | occasionally useful and shared across multiple projects. | ||
5 | |||
6 | ## Versioning | ||
7 | |||
8 | This project and the contained modules use semantic versioning. No effort is | ||
9 | made to keep sub-module versions in sync. | ||
10 | |||
11 | ## Dependency Philosophy | ||
12 | |||
13 | The root library is meant to be an extension of the Go standard library and | ||
14 | therefore does not depend on anything but the standard library itself and | ||
15 | golang.org/x repositories. | ||
16 | |||
17 | Other modules within the repository may pull in other dependencies outside of | ||
18 | the core standard library. For those cases go modules are used to isolate the | ||
19 | dependency to the sub-module. Wherever possible the sub-modules are designed to | ||
20 | reduce the dependency graph of that module to just the scope of dependencies | ||
21 | needed for its proper function. | ||
22 | |||
23 | ## Modules | ||
24 | |||
25 | - **core (no prefix)** provides some extensions to standard library and | ||
26 | golang.org/x functionality | ||
27 | - **cli** provides some wrapper functionality for creating command line | ||
28 | interfaces with [cobra](https://github.com/spf13/cobra). | ||
29 | - **db/mongodb** provides a wrapper around the lower level [mongodb driver | ||
30 | libraries](https://pkg.go.dev/go.mongodb.org/mongo-driver) to make it easier | ||
31 | to use them. | ||
32 | - **echo** is a grab-bag of extensions around the [labstack echo web | ||
33 | framework](https://echo.labstack.com/guide/) designed to make it easier to | ||
34 | use. These extensions are starting to look like a fully fledged web framework | ||
35 | in their own right with echo as the foundation. The opinions in this module are | ||
36 | pretty heavy handed, use at your own risk. | ||
37 | - **vault** provides some wrappers around the [Hashicorp | ||
38 | Vault](https://pkg.go.dev/github.com/hashicorp/vault/api) API. | ||
39 | |||
40 | ## Contributing | ||
41 | |||
42 | If you find anything here useful and would like to submit patches please email | ||
43 | the patch (in git format-patch format) or a repository location and branch name | ||
44 | that the maintainers can pull and merge. We reserve the right to request | ||
45 | changes to patches or reject them outright but are most likely to willing and | ||
46 | thankfully merge them if they fit into the general theme here. | ||
47 | |||
48 | ## Contributors | ||
49 | |||
50 | - [Mike Crute](https://mike.crute.us) email: mike-at-crute-dot-us | ||