A simple pulse-survey application.
The goal of the project is to implement the Hexagonal Architecture
- Clone the repository.
git clone github.com/jbactad/loop.git
cd loop
- Install tools.
make setup
- Start the dependencies, i.e. database.
make dep-up
- Run the migrations.
make db-migrate
make db-seed # Optional
- Start the application.
make run
Go to http://localhost:8080 to view GraphQL Playground.
.
├── application
│ ├── commands
│ ├── ports
│ └── queries
├── cmd
│ ├── db
│ └── graphql
├── db
│ ├── migrations
│ └── seeds
├── domain
├── graph
│ ├── generated
│ ├── models
│ ├── resolvers
│ └── schemas
│ └── tests
└── infrastructure
└── repositories
application
: Contains the application layer. This layer contains the use cases, which are the application-specific business rules.cmd
: Contains different commands that can be run from the command line.db
: Contains the database migrations and seeds.domain
: Contains the domain layer. This layer contains the domain model and the domain services.graph
: Contains the GraphQL layer. This layer contains the generated code, the models, the resolvers, the schemas, and the tests.infrastructure
: Contains the infrastructure layer. This layer contains the implementation of the ports defined in the application layer.