go-api-boilerplate: github.com/vardius/go-api-boilerplate Index | Files | Directories

package goapiboilerplate

import "github.com/vardius/go-api-boilerplate"

Package goapiboilerplate provides Go Server/API boilerplate using best practices, DDD, CQRS, ES.

Index

Package Files

doc.go

Directories

PathSynopsis
cmd/auth
cmd/auth/applicationPackage application is a layer responsible for driving the workflow of the application, matching the use cases at hand.
cmd/auth/application/config
cmd/auth/application/eventhandler
cmd/auth/application/oauth2
cmd/auth/domainPackage domain is the heart layer of the software, and this is where the interesting stuff happens.
cmd/auth/domain/clientPackage client holds client domain logic
cmd/auth/infrastructure/repositoryPackage repository holds event sourced repositories
cmd/auth/interfacesPackage interfaces is a layer that holds everything that other systems interacts with - Primary/Driving Adapters.
cmd/auth/interfaces/grpcPackage grpc provides user grpc server
cmd/auth/interfaces/httpPackage http provides routes for http router
cmd/auth/interfaces/http/handlersPackage handlers provides http handlers
cmd/auth/internal/applicationPackage application is a layer responsible for driving the workflow of the application, matching the use cases at hand.
cmd/auth/internal/application/config
cmd/auth/internal/application/eventhandler
cmd/auth/internal/application/oauth2
cmd/auth/internal/domainPackage domain is the heart layer of the software, and this is where the interesting stuff happens.
cmd/auth/internal/domain/clientPackage client holds client domain logic
cmd/auth/internal/domain/tokenPackage token holds token domain logic
cmd/auth/internal/infrastructurePackage infrastructure is a layer that holds everything that interacts with other systems - Secondary/Driven Adapters.
cmd/auth/internal/infrastructure/persistencePackage persistence holds view models and repository interfaces
cmd/auth/internal/infrastructure/persistence/mysqlPackage mysql holds view model repositories
cmd/auth/internal/infrastructure/repositoryPackage repository holds event sourced repositories
cmd/auth/internal/interfacesPackage interfaces is a layer that holds everything that other systems interacts with - Primary/Driving Adapters.
cmd/auth/internal/interfaces/grpcPackage grpc provides user grpc server
cmd/auth/internal/interfaces/httpPackage http provides routes for http router
cmd/auth/internal/interfaces/http/handlersPackage handlers provides http handlers
cmd/auth/proto
cmd/user
cmd/user/applicationPackage application is a layer responsible for driving the workflow of the application, matching the use cases at hand.
cmd/user/application/config
cmd/user/application/eventhandler
cmd/user/application/security
cmd/user/domainPackage domain is the heart layer of the software, and this is where the interesting stuff happens.
cmd/user/domain/userPackage user holds user domain logic
cmd/user/infrastructurePackage infrastructure is a layer that holds everything that interacts with other systems - Secondary/Driven Adapters.
cmd/user/infrastructure/persistencePackage persistence holds view models and repository interfaces
cmd/user/infrastructure/persistence/mysqlPackage mysql holds view model repositories
cmd/user/infrastructure/repositoryPackage repository holds event sourced repositories
cmd/user/interfacesPackage interfaces is a layer that holds everything that other systems interacts with - Primary/Driving Adapters.
cmd/user/interfaces/grpcPackage grpc provides user grpc server
cmd/user/interfaces/httpPackage http provides routes for http router
cmd/user/interfaces/http/handlersPackage handlers provides http handlers
internal/application
internal/buildinfo
internal/commandbusPackage commandbus provides interfaces along with helper functions
internal/domainPackage domain is the heart layer of the software, and this is where the interesting stuff happens.
internal/errorsPackage errors implements functions to manipulate errors.
internal/eventbusPackage eventbus provides interfaces along with helper functions
internal/eventstorePackage eventstore provides interfaces along with helper functions
internal/eventstore/dynamodbPackage eventstore provides dynamodb implementation of domain event store
internal/eventstore/memoryPackage eventstore provides memory implementation of domain event store
internal/executioncontextPackage executioncontext provides context helper function so set and get execution flags
internal/grpc
internal/http/middlewarePackage middleware provides http middleware
internal/http/middleware/authenticatorPackage authenticator provides allows to authorize request
internal/http/middleware/firewallPackage firewall allow to guard handlers
internal/http/middleware/metadata
internal/http/responsePackage response provides helpers and utils for working with HTTP response
internal/identityPackage identity provides type that allows to authorize request
internal/logPackage log provides Logger
internal/mysql
pkg/buildinfo
pkg/domainPackage domain is the heart layer of the software, and this is where the interesting stuff happens.
pkg/eventbusPackage eventbus provides interfaces along with helper functions
pkg/eventstorePackage eventstore provides interfaces along with helper functions
pkg/eventstore/memoryPackage eventstore provides memory implementation of domain event store
pkg/http/request
pkg/http/responsePackage response provides helpers and utils for working with HTTP response
pkg/http/security/authenticatorPackage authenticator provides allows to authorize request
pkg/http/security/firewallPackage firewall allow to guard handlers
pkg/identityPackage identity provides type that allows to authorize request
pkg/logPackage log provides Logger
pkg/mysql

Updated 2019-11-22. Refresh now. Tools for package owners.