A modern, fast, and AI-powered note-taking application built with Go, Gin, PostgreSQL, Redis, and Google Gemini AI. Features a beautiful blue pastel UI theme and follows clean architecture principles.
- User Authentication - Secure JWT-based authentication system
- CRUD Operations - Create, Read, Update, and Delete notes effortlessly
- Redis Caching - Lightning-fast note retrieval with intelligent caching
- AI-Powered Summaries - Generate instant summaries using Google Gemini 2.0 Flash
- Lazy Loading - Efficient pagination for handling large note collections
git clone https://github.com/lauhemahfus/gonote.git
cd gonote# Create database
createdb gonote
# Run migrations
psql -d gonote -f backend/migrations/001_init.sql# Start Redis server
redis-server# Copy the example environment file
cp .env.example .env
# Edit .env with your credentialscd backend
# Download dependencies
go mod download
# Tidy up modules
go mod tidyOr install manually:
go get github.com/gin-gonic/gin@v1.9.1
go get github.com/gin-contrib/cors@v1.4.0
go get github.com/go-redis/redis/v8@v8.11.5
go get github.com/golang-jwt/jwt/v4@v4.5.0
go get github.com/joho/godotenv@v1.5.1
go get github.com/lib/pq@v1.10.9
go get golang.org/x/crypto@v0.14.0go run cmd/server/main.goYou should see:
Server starting on http://localhost:8080
Open your browser and visit:
http://localhost:8080