π° Modern Enterprise Banking Platform - Complete Financial Infrastructure
A next-generation enterprise banking platform providing comprehensive financial services, treasury management, secure banking integration, and multi-account management with a modern Qonto-inspired consumer interface.
π Quick Start β’ π What's New β’ π Current Status β’ π οΈ Tech Stack β’ π Architecture β’ π€ Contributing
Aether Bank is a comprehensive enterprise banking platform that has evolved significantly from its initial concept. Starting as a hybrid Go/TypeScript architecture, it has grown into a complete ecosystem featuring authentication, multi-language support, user banking dashboards, and enterprise-ready admin capabilities.
- π Hybrid Architecture - Go 1.21+ backend + TypeScript 5 frontend
- π° Complete Banking Features - Accounts, transactions, cards, transfers, savings, credits
- π’ Multi-Tenant Platform - User dashboard + Admin platform
- β‘ High-Performance Backend - Go-based server with Gin + GORM + PostgreSQL
- π¨ Modern Frontend - Next.js 16 + React 19 + shadcn/ui + Tailwind CSS v4
- π Internationalization - Multi-language support (FR, EN, ES, DE, CH, BE)
- π Secure Authentication - JWT-based system with login/register forms and context
- ποΈ Enterprise-Ready Design - Scalable, secure, and maintainable architecture
- π Comprehensive Documentation - Complete API references and guides
- π οΈ Developer-Friendly - Make commands, hot reload, TypeScript strict mode
- β User Banking Dashboard - Complete account management interface
- β Transaction Management - Full transaction history and filtering
- β Card Management - Virtual and physical card controls
- β Transfer System - Internal and external transfer capabilities
- β Savings Accounts - Savings goals and interest tracking
- β Credit Management - Credit lines and loan tracking
- β Team Management - Multi-user team access control
- β Admin Dashboard - Comprehensive platform statistics
- β Real-time Analytics - Charts and transaction monitoring
- β Alert Management - System alerts and notifications
- β User Management - Complete platform user administration
- β Qonto-Inspired Design - Modern French banking interface
- β Responsive Sidebar - Fixed sidebar with independent scroll
- β Mega Menu Navigation - Comprehensive navigation system
- β Dark Mode Support - Theme provider integration
- β Multi-Language Support - French, English, Spanish, German, Swiss French, Belgian Dutch
- β Localized Content - Country-specific banking content
- β RTL Support Preparation - Future-proof architecture
β Rapid Evolution: From basic hybrid architecture to complete banking platform with admin dashboard.
- β Hybrid Monorepo Architecture - Go backend + TypeScript frontend workspaces
- β Go Backend Server - High-performance Gin API with GORM + PostgreSQL
- β Next.js 16 Frontend - Modern React 19 with shadcn/ui + Tailwind CSS v4
- β Database Layer - GORM with PostgreSQL and user models
- β JWT Authentication - Complete implementation with login/register forms
- β Auth Context - Global authentication state management in React
- β User Dashboard - Complete account overview with balance display
- β Account Management - IBAN/BIC display with copy functionality
- β RIB Download - PDF bank details export
- β Transaction History - Full transaction list with filtering
- β Card Management - Virtual card display and controls
- β Transfer System - Money transfer interface
- β Savings Accounts - Savings goals and tracking
- β Credit Lines - Credit management interface
- β Team Management - Multi-user team features
- β Platform Dashboard - Comprehensive statistics view
- β Analytics Charts - Visual data representation
- β Transaction Monitoring - Real-time transaction feed
- β Alert System - Platform alerts and notifications
- β Multi-Language Support - 6 languages supported
- β Localized Navigation - Country-specific content
- β Translation System - next-intl integration
- β Development Environment - Hot reload, TypeScript strict mode, Go modules
- β Docker Deployment - Production-ready containers
- β Security Implementation - CORS, rate limiting, security headers
- β Structured Logging - Pino-based logging with correlation
- Payment Processing - Integration with payment gateways
- Advanced Analytics - Deeper financial insights
- API Documentation - Comprehensive API docs and testing
- Testing Suite - Unit and integration tests
- Mobile Application - React Native companion app
- Advanced Security - 2FA, biometrics, fraud detection
- Investment Features - Stock and crypto trading
- Insurance Products - Integrated insurance offerings
- Accounting Integration - Bookkeeping software connection
- Go 1.21.0 or higher (for backend)
- Node.js 18.0.0 or higher (for frontend)
- pnpm 9.0.0 or higher (recommended package manager)
- PostgreSQL 14.0 or higher (for database)
- Docker (optional, for deployment)
- Make (for command shortcuts - included with most systems)
-
Clone the repository
git clone https://github.com/skygenesisenterprise/aether-bank.git cd aether-bank -
Quick start (recommended)
# One-command setup and start make quick-start -
Manual setup
# Install Go dependencies cd server && go mod download && cd .. # Install Node.js dependencies make install # Environment setup make env-dev # Database initialization make db-migrate # Start development servers make dev
Once running, you can access:
- Frontend: http://localhost:3000
- API Server: http://localhost:8080
- Health Check: http://localhost:8080/health
- Public Homepage: http://localhost:3000/fr
- User Dashboard: http://localhost:3000/user/home
- Platform Admin: http://localhost:3000/dashboard
# π Quick Start & Development
make quick-start # Install, migrate, and start dev servers
make dev # Start all services (frontend + backend)
make dev-frontend # Frontend only (port 3000)
make dev-backend # Backend only (port 8080)
# ποΈ Building & Production
make build # Build all packages
make build-frontend # Frontend production build
make start # Start production servers
# ποΈ Database
make db-studio # Open Prisma Studio
make db-migrate # Run migrations
make db-seed # Seed development data
# π§ Code Quality & Testing
make lint # Lint all packages
make typecheck # Type check all packages
make format # Format code with Prettier
# π οΈ Utilities
make help # Show all available commands
make status # Show project status
make health # Check service healthπ‘ Tip: Run
make helpto see all available commands organized by category.
Next.js 16 + React 19 + TypeScript 5
βββ π¨ Tailwind CSS v4 + shadcn/ui (Styling & Components)
βββ π JWT Authentication (Complete Implementation)
βββ π£οΈ Next.js App Router (Routing)
βββ π TypeScript Strict Mode (Type Safety)
βββ π next-intl (Internationalization)
βββ π React Context (State Management)
βββ π Recharts (Data Visualization)
βββ π§ ESLint + Prettier (Code Quality)
Go 1.21+ + Gin Framework
βββ ποΈ GORM + PostgreSQL (Database Layer)
βββ π JWT Authentication (Complete Implementation)
βββ π‘οΈ Middleware (Security, CORS, Logging)
βββ π HTTP Router (Gin Router)
βββ π¦ JSON Serialization (Native Go)
βββ π Structured Logging (Zerolog)
PostgreSQL + GORM
βββ ποΈ Schema Management (Auto-migration)
βββ π Query Builder (Type-Safe Queries)
βββ π Connection Pooling (Performance)
βββ π€ User Models (Complete Implementation)
βββ π Seed Scripts (Development Data)
Make + pnpm Workspaces + Go Modules
βββ π¦ app/ (Next.js Frontend - TypeScript)
βββ βοΈ server/ (Gin API - Go)
βββ ποΈ models/ (Data Models)
βββ ποΈ prisma/ (Database Schema)
βββ π³ docker/ (Container Configuration)
aether-bank/
βββ app/ # Next.js 16 Frontend Application (TypeScript)
β βββ app/ # Next.js App Router
β β βββ (public)/ # Public marketing pages
β β β βββ [locale]/ # Localized homepage
β β β βββ compte-pro/
β β β βββ compte-particulier/
β β β βββ epargne/
β β β βββ cartes/
β β β βββ credit/
β β β βββ pgp/
β β βββ (user)/ # User banking dashboard
β β β βββ user/
β β β βββ home/
β β β βββ account/
β β β βββ transactions/
β β β βββ cards/
β β β βββ transferts/
β β β βββ savings/
β β β βββ credit/
β β β βββ team/
β β β βββ security/
β β β βββ management/
β β β βββ settings/
β β β βββ help/
β β βββ (platform)/ # Admin platform
β β β βββ dashboard/
β β βββ (auth)/ # Authentication pages
β β βββ login/
β β βββ register/
β βββ components/ # React components
β β βββ ui/ # shadcn/ui component library
β β βββ bank/ # Banking components
β β βββ user/ # User dashboard components
β β βββ platform/ # Admin platform components
β βββ context/ # React contexts
β β βββ JwtAuthContext.tsx
β β βββ AuthContext.tsx
β β βββ LocaleContext.tsx
β βββ lib/ # Utility functions
β βββ hooks/ # Custom React hooks
β βββ config/ # Configuration
β βββ messages/ # Translation files
β β βββ fr.json # French
β β βββ en.json # English
β β βββ es.json # Spanish
β β βββ de.json # German
β β βββ ch_fr.json # Swiss French
β β βββ be_nl.json # Belgian Dutch
β β βββ be_fr.json # Belgian French
β βββ styles/ # Global styles
βββ server/ # Go Backend Server
β βββ cmd/
β β βββ server/
β β βββ main.go # CLI entry point
β βββ src/
β β βββ config/ # Database and server configuration
β β βββ controllers/ # HTTP request handlers
β β βββ middleware/ # Gin middleware
β β βββ models/ # Data models and structs
β β βββ routes/ # API route definitions
β β βββ services/ # Business logic
β β βββ utils/ # Utility functions
β βββ prisma/ # Database schema
β βββ main.go # Main server entry point
β βββ go.mod # Go modules file
β βββ go.sum # Go modules checksum
βββ models/ # Shared Data Models
βββ services/ # Core Services
βββ docker/ # Docker Configuration
βββ Makefile # Build automation
βββ README.md # Project documentation
βββββββββββββββββββ ββββββββββββββββββββ βββββββββββββββββββ
β Next.js App β β Gin API β β PostgreSQL β
β (Frontend) βββββΊβ (Backend) βββββΊβ (Database) β
β Port 3000 β β Port 8080 β β Port 5432 β
β TypeScript β β Go β β β
βββββββββββββββββββ ββββββββββββββββββββ βββββββββββββββββββ
β β β
βΌ βΌ βΌ
JWT Tokens API Endpoints User/Account Data
React Context Authentication GORM ORM
shadcn/ui Components Business Logic Auto-migrations
β β
βΌ βΌ
βββββββββββββββββββ ββββββββββββββββββββ
β User Dashboard β β Platform Admin β
β Banking Featuresβ β Analytics β
β Transactions β β User Management β
β Cards & Transfersβ β Alerts β
βββββββββββββββββββ ββββββββββββββββββββ
- β Hybrid Monorepo Setup - Go backend + TypeScript frontend workspaces
- β Authentication System - Complete JWT implementation with forms
- β Frontend Framework - Next.js 16 + React 19 + shadcn/ui
- β Go Backend API - Gin with authentication endpoints
- β Database Layer - GORM with PostgreSQL and user models
- β Development Environment - TypeScript strict mode, Go modules, hot reload
- β User Dashboard - Complete banking interface
- β Account Management - IBAN/BIC display and RIB download
- β Transaction System - Full transaction history
- β Card Management - Virtual card interface
- β Transfer System - Money transfer capabilities
- β Savings & Credit - Financial product interfaces
- β Admin Dashboard - Platform statistics
- β Analytics Charts - Visual data representation
- β Alert Management - System notifications
- β User Administration - Platform user management
- π Payment Processing - Payment gateway integration
- π Advanced Analytics - Deeper financial insights
- π API Documentation - Comprehensive API docs
- π Testing Suite - Unit and integration tests
- π Mobile Application - React Native companion app
- π Advanced Security - 2FA, biometrics, fraud detection
- π Investment Features - Stock and crypto trading
- π Insurance Products - Integrated insurance offerings
# New developer setup
make quick-start
# Daily development
make dev # Start working (Go + TypeScript)
make lint-fix # Fix code issues
make typecheck # Verify types
# Go-specific development
cd server
go run main.go # Start Go server
go test ./... # Run Go tests
go fmt ./... # Format Go code
go mod tidy # Clean dependencies
# TypeScript-specific development
make dev-frontend # Frontend only
make lint # Check code quality
make typecheck # Verify types
# Before committing
make format # Format code
make lint # Check code quality
make typecheck # Verify types
# Database changes
make db-migrate # Apply migrations
make db-studio # Browse database
# Production deployment
make build # Build everything
make docker-build # Create Docker image
make docker-run # Deploy- Make-First Workflow - Use
makecommands for all operations - Go Best Practices - Follow Go conventions for backend code
- TypeScript Strict Mode - All frontend code must pass strict type checking
- Conventional Commits - Use standardized commit messages
- Component Structure - Follow established patterns for React components
- API Design - RESTful endpoints with proper HTTP methods
- Error Handling - Comprehensive error handling and logging
- Security First - Validate all inputs and implement proper authentication
The authentication system is fully implemented with Go backend and TypeScript frontend:
- JWT Tokens - Secure token-based authentication with refresh mechanism
- Login/Register Forms - Complete user authentication flow with validation
- Auth Context - Global authentication state management in React
- Protected Routes - Route-based authentication guards
- Go API Endpoints - Complete authentication API with Gin framework
- Password Security - bcrypt hashing for secure password storage
- Session Management - LocalStorage-based session persistence
// Go Backend Registration Process
1. User submits registration β API validation
2. Password hashing with bcrypt β Database storage
3. JWT tokens generated β Client receives tokens
4. Auth context updates β User logged in
// Go Backend Login Process
1. User submits credentials β API validation
2. Password verification β JWT token generation
3. Tokens stored β Auth context updated
4. Redirect to dashboard β Protected route access
// Token Refresh
1. Background token refresh β Automatic renewal
2. Invalid tokens β Redirect to login
3. Session expiration β Clean logout
Aether Bank supports multiple languages for international users:
- π«π· French (fr) - Primary language
- π¬π§ English (en)
- πͺπΈ Spanish (es)
- π©πͺ German (de)
- π¨π Swiss French (ch_fr)
- π§πͺ Belgian Dutch (be_nl)
- π§πͺ Belgian French (be_fr)
// Using next-intl for translations
import { useTranslations } from 'next-intl';
const t = useTranslations('Navigation');
return <h1>{t('home')}</h1>;We're looking for contributors to help build this comprehensive banking platform! Whether you're experienced with Go, TypeScript, React, banking systems, web development, or security, there's a place for you.
- Fork the repository and create a feature branch
- Check the issues for tasks that need help
- Join discussions about architecture and features
- Start small - Documentation, tests, or minor features
- Follow our code standards and commit guidelines
- Go Backend Development - API endpoints, business logic, security
- TypeScript Frontend Development - React components, UI/UX design, dashboard
- Banking Features - Payment processing, transaction handling
- Database Design - Schema development, migrations, optimization
- Security Specialists - Authentication, encryption, fraud detection
- DevOps Engineers - Docker, deployment, CI/CD for hybrid stack
- UI/UX Designers - Banking interface design, user experience
- Documentation - API docs, user guides, tutorials
- Choose an area - Core server, frontend, or specific feature
- Read the docs - Understand project conventions
- Create a branch with a descriptive name
- Implement your changes following our guidelines
- Test thoroughly in all relevant environments
- Submit a pull request with clear description and testing
- Address feedback from maintainers and community
- π Documentation - Comprehensive guides and API docs
- π GitHub Issues - Bug reports and feature requests
- π‘ GitHub Discussions - General questions and ideas
- π§ Email - support@skygenesisenterprise.com
When reporting bugs, please include:
- Clear description of the problem
- Steps to reproduce
- Environment information (Go version, Node.js version, OS, etc.)
- Error logs or screenshots
- Expected vs actual behavior
| Component | Status | Technology | Notes |
|---|---|---|---|
| Hybrid Architecture | β Working | Go + TypeScript | Monorepo with workspaces |
| Authentication System | β Working | JWT (Go/TS) | Full implementation with forms |
| Go Backend API | β Working | Gin + GORM | High-performance with PostgreSQL |
| Frontend Framework | β Working | Next.js 16 + React 19 | shadcn/ui + Tailwind CSS v4 |
| User Dashboard | β Working | TypeScript + React | Complete banking interface |
| Platform Admin | β Working | TypeScript + React | Admin dashboard with analytics |
| Banking Features | β Working | TypeScript | Accounts, cards, transfers |
| Internationalization | β Working | next-intl | 7 languages supported |
| UI Component Library | β Working | shadcn/ui + Tailwind CSS | Complete component set |
| Database Layer | β Working | GORM + PostgreSQL | Auto-migrations + user models |
| Docker Deployment | β Working | Multi-Stage | Production-ready containers |
| Payment Processing | π In Progress | Go/TS | Gateway integration |
| Mobile Application | π Planned | React Native | Future companion app |
| Testing Suite | π Planned | Go/TS | Unit and integration tests |
| Documentation | β Working | Go/TS | README and guides |
Development led by Sky Genesis Enterprise
We're looking for sponsors and partners to help accelerate development of this open-source banking platform.
This project is licensed under the MIT License - see the LICENSE file for details.
MIT License
Copyright (c) 2025 Sky Genesis Enterprise
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
- Sky Genesis Enterprise - Project leadership and evolution
- Go Community - High-performance programming language and ecosystem
- Gin Framework - Lightweight HTTP web framework
- GORM Team - Modern Go database library
- Next.js Team - Excellent React framework
- React Team - Modern UI library
- shadcn/ui - Beautiful component library
- Tailwind CSS - Utility-first CSS framework
- pnpm - Fast, disk space efficient package manager
- Make - Universal build automation and command interface
- Docker Team - Container platform and tools
- Open Source Community - Tools, libraries, and inspiration
β Star This Repo β’ π Report Issues β’ π‘ Start a Discussion
π° Modern Enterprise Banking Platform with Complete Financial Infrastructure!
Made with β€οΈ by the Sky Genesis Enterprise team
Building the future of enterprise banking with complete authentication, banking features, and admin capabilities