Add TimeStamped and Firestored to your objects, eg:
type X struct {
firetils.Firestored
firetils.TimeStamped
}You can do pre-saving and after-loading by adding PreSave(ctx context.Context) and/or AfterLoad(ctx context.Context) function to your models.
Authenticate function will validate an auth token.
Or use FireAuth middleware to do it automatically.