An open API service indexing awesome lists of open source software.

https://github.com/morzhanov/neptune-example

AWS Neptune Go application example
https://github.com/morzhanov/neptune-example

Last synced: 4 months ago
JSON representation

AWS Neptune Go application example

Awesome Lists containing this project

README

        

# neptune-example

AWS Neptune Go application example.

## Graph Data Schema

### Vertexes

| Vertex | Description |
|----------|:---------------------:|
| Reader | User Reader |
| Book | A Book |
| Author | User Writer |

### Edges

| Edge | Source | Target |
|----------|:--------:|:--------:|
| read | Reader | Book |
| authored | Author | Book |

### Example

example graph

## How it works

Simple application which uses AWS Neptune database as persistent storage. Authors create Books, Readers read Books.

Application uses Gremlin language which is supported by grammes package. For more info about Gremlin language refer to the TinkerPop docs.

For this application we are using AWS Neptune publicity available WebSockets endpoint. For more information about setup refer to the AWS Docs.

## Structure

- `/cmd` - application setup
- `/config` - .env file with environment variables
- `/internal`
- `/config` - config module based on viper package
- `/logger` - application logger, creates file transport (for filebeat) and console transport
- `/db` - Neptune database connection
- `/service` - main app service