bank
Bank is an open source full-stack web application that simulates professional banking software used in financial institutions. Built with React.js on the frontend and Node.js with Nest.js and TypeScript on the backend, it uses PostgreSQL for data storage and follows SOLID, DRY, and KISS design principles. Key features include double-entry bookkeeping for accurate account balance calculation, support for multiple currencies with real-time exchange rates via external API, and internationalization for English, German, and Polish languages. The application supports PWA functionality, responsive web design for all modern browsers and mobile devices, and integrates Google Analytics with GDPR-compliant cookie consent. The frontend uses JavaScript, React.js, Redux, Redux-Saga, Reselect, immer, Ant Design, and styled-components. The backend exposes a REST API with Swagger documentation, runs on Node.js with Nest.js and TypeScript, and connects to a PostgreSQL database. The project is split into separate client and ser