Skip to content

Gad-Ongoro/GO_Bank

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

80 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GOBank

GOBank is a banking application that provides seamless banking and investment services to users. It is built with Django for the backend API and React for the frontend. GOBank allows users to manage their accounts, view transactions, and perform various banking and investment operations seamlessly.

Table of Contents

Features

  • User authentication and authorization
  • Account creation and management
  • Join investment accounts
  • View account balances
  • Perform transactions (e.g., deposits, transfers, withdrawals)
  • Real-time transaction updates
  • Secure API endpoints using Django Rest Framework

Tech Stack

  • Frontend: React, JavaScript, HTML, Tailwind CSS
  • Backend: Django, Django Rest Framework, Python
  • Database: PostgreSQL
  • Containerization: Docker
  • CI/CD: GitHub Actions, DockerHub

Installation

Prerequisites

Backend Setup

  1. Clone the repository and navigate to the backend folder:
git clone https://github.com/Gad-Ongoro/GO_Bank.git
cd GO_Bank/server
  1. Create a virtual environment and install dependencies:
python3 -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
pip install -r requirements.txt
  1. Set up the database:
python manage.py makemigrations
python manage.py migrate
  1. Create a superuser:
python manage.py createsuperuser
  1. Start the backend server:
python manage.py runserver

Frontend Setup

  1. Navigate to the frontend folder:
cd GO_Bank/client
  1. Install the dependencies:
npm install
  1. Start the frontend development server:
npm start
The app should now be running at http://localhost:3000 (frontend) and http://localhost:8000 (backend).

Docker Setup

  1. Build and run the containers:
docker-compose up --build
  1. Access the app via http://localhost:3000 (frontend) and http://localhost:8000 (backend).

Environment Variables

The app requires the following environment variables to be set:

For the backend, create a .env file in the backend directory with the following:

SECRET_KEY=your-secret-key
DEBUG=True
DATABASE_URL=postgres://user:password@localhost:5432/gobank

For the frontend, create a .env file in the frontend directory with:

REACT_APP_API_URL=http://localhost:8000/api

API Documentation

The API is documented using Django Rest Framework's browsable API. Once the server is running, you can access the documentation at:

http://localhost:8000/api/

Contributing

Contributions are welcome! To contribute:

  1. Fork the repository
  2. Create a new branch (git checkout -b feature/your-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin feature/your-feature)
  5. Create a new Pull Request