summaryrefslogtreecommitdiffstats
path: root/golang/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'golang/README.md')
-rw-r--r--golang/README.md65
1 files changed, 0 insertions, 65 deletions
diff --git a/golang/README.md b/golang/README.md
deleted file mode 100644
index 9bcfdfb5..00000000
--- a/golang/README.md
+++ /dev/null
@@ -1,65 +0,0 @@
-
-This folder contains source for the fatcat API daemon ("fatcatd"), written in
-golang.
-
-
-## Structure
-
-fatcatd is essentially just glue between two declarative schemas:
-
-- a postgres-flavor SQL database schema
-- an OpenAPI/Swagger REST API definition
-
-## Dev Setup
-
-- postgres 9.6+ running locally
-- golang environment configured
- - https://github.com/golang/dep
-- checkout (or symlink) this repo to $GOPATH/src/git.archive.org/bnewbold/fatcat
-- dep ensure
-
-On debian/ubuntu:
-
- sudo -u postgres createuser -s `whoami`
- createdb -O `whoami` fatcat
- psql fatcat -f fatcat-schema.sql
-
-Build with:
-
- go build ./cmd/*/
-
-## Simplifications
-
-In early development, we'll make at least the following simplifications:
-
-- authentication (authn and authz) are not enforced and don't have user
- interfaces. actual authentication will be eased in via a microservice and/or
- oauth to gitlab/github/orcid.org
-- "extra" metadata is stored in-entity as JSONB. In the future this might be
- broken out to a separate table
-- libraries won't be vendored; in the future they will be via a git submodule
-
-
-## OpenAPI Code Generation
-
- cat fatcat-openapi2.yml | python3 -c 'import sys, yaml, json; json.dump(yaml.load(sys.stdin), sys.stdout, indent=4)' > fatcat-openapi2.json
-
-Install the go-swagger tool:
-
- go get -u github.com/go-swagger/go-swagger/cmd/swagger
-
-
-"Simple" server:
-
- swagger generate server -A Fatcat -f fatcat-openapi2.json
-
-"Custom" server:
-
- swagger generate server -A fatcat -f ./fatcat-openapi2.json --exclude-main -t gen
-
-## Future
-
-Could refactor the API side to use gRPC and grpc-gateway instead of swagger
-(which would result in a compatible REST JSON interface). For faster bots and
-import, and lower latency between webface and backend.
-