FRE-680: Initial project scaffold with auth & API client

- Set up Go module with Cobra CLI skeleton
- Implemented login/logout/session commands with 2FA support
- Created ProtonMail API client with rate limiting
- Added config management for ~/.config/pop/
- Configured CI/CD pipeline with GitHub Actions
- Added Makefile for build/test/lint targets

Files:
- main.go, go.mod, go.sum
- cmd/root.go, cmd/auth.go
- internal/auth/session.go
- internal/config/config.go
- internal/api/client.go
- Makefile, README.md, .gitignore
- .github/workflows/ci.yml
This commit is contained in:
2026-04-26 09:45:10 -04:00
commit 25836e27b9
12 changed files with 646 additions and 0 deletions

17
main.go Normal file
View File

@@ -0,0 +1,17 @@
package main
import (
"fmt"
"os"
"github.com/frenocorp/pop/cmd"
)
func main() {
rootCmd := cmd.NewRootCmd()
if err := rootCmd.Execute(); err != nil {
fmt.Fprintf(os.Stderr, "Error: %v\n", err)
os.Exit(1)
}
}