An basic REST service (tasks) written in GO.
There's an basic UI for this service at: https://github.com/pedrocelso/go-task-ui A basic UI for this will be made using a create-react-app boilerplate.
My main goal for this project is to learn how to write Go code to be used on AppEngine, using the cloud datastore. I'm trying to add new useful things to the project, and learning them, for example, how to use JWT middleware on gin. You shouldn't expect anything advanced, as I'm struggling to keep this as simple as possible. I hope this helps new go programmers to ger started to AppEngine, and to write basic REST services.
An generic task abstraction. Users can have unlimited tasks, each task can have unlimited incidents: An incident can be any kind of interation between the user and its task. It can be observations from a phone call, an email body, even an numeric workflow (not implemented). This should be the first step for complex projects, for instance a Follow-up backend, an BPMS backend, etc.
Create basic routes and handlers;Add basic CRUD operations forUsers
;Do whatever is needed to make it GAE-compatible;Move the database from MySQL to Google Datastore?;Add JWT authentication;Add an new EntityTask
that will be assigned to a givenUser
See Task Endpoints- Add an new Entity
Incident
that will be assigned to a givenTask
See Incidents
https://cloud.google.com/free/docs/always-free-usage-limits
https://cloud.google.com/appengine/docs/standard/go/tools/localunittesting/
https://cloud.google.com/appengine/docs/standard/go/tools/localunittesting/reference
aetest is no longer needed, with the go111 runtime, it is now possible to write GO on a more idiomatic way. Now there's an interface that is implemented by Google Datastore and is easily mocked.