/go-api-template

A TODO list, in my opinion, is the Hello World of API development.

Primary LanguageGoMIT LicenseMIT

go-api-template

A TODO list, in my opinion, is the Hello World of API development, so why not develop one but with more steps?

TODO:

Misc:

  • Makefile
  • GoDoc
  • API Endpoint documentation

Services

API

  • Task
    • CRUD
      • Create
      • Read
      • Update
      • Delete
    • Implement Cascade
    • Soft Delete
  • List
    • CRUD
      • Create
      • Read
      • Update
      • Delete
    • Implement Cascade
    • Soft Delete
    • [ ]
  • User
    • CRUD
      • Create
      • Read
      • Update
      • Delete
    • Implement Cascade
    • Soft Delete
  • Relationships
    • List <-> Tasks
    • User <-> Lists

Authentication

  • OAuth2

Channels

  • Telegram

Front

  • ReasonML/ReScript
  • TailwindCSS

Possible ideas

  • Add notification into Telegram

Infra

  • WebServer
    • Nginx
  • Database
    • PostgreSQL
    • Redis
  • Containers
    • Docker
  • Containers Orchestration
    • Kubernetes
  • CI/CD
    • DroneCI
  • Configuration Management
    • Ansible
  • Infrastructure Provisioning
    • Terraform
  • Service Mesh
    • Istio

Monitoring

  • Infrastructure Monitoring
    • Prometheus
    • Grafana
  • Application Monitoring
    • Jaeger
    • New Relic
  • Logs Management
    • Elastic Stack

Deployment

  • Cloud Provider
    • AWS
    • GCP
    • Digital Ocean