Skip to content

Latest commit

 

History

History
115 lines (77 loc) · 3.56 KB

README.md

File metadata and controls

115 lines (77 loc) · 3.56 KB

Payday Trade 💰📈

Welcome to Payday Trade – the ultimate trading solution that empowers you to purchase stocks from partner brokers through your bank account. This platform offers a seamless and secure trading experience like never before.

This project utilizes a variety of tools and technologies including:

  • JWT for secure authentication
  • Spring Security for enhancing application security
  • Docker for containerization
  • Feign Client for API communication
  • Spring Email for sending email notifications
  • Validation for input validation
  • PostgreSQL as the main relational database
  • JPA/Hibernate for data persistence
  • H2 Database for local development and testing
  • Lombok for reducing boilerplate code

Table of Contents

Background 🌄

Payday Trade revolutionizes trading by enabling direct stock purchases through your bank account. Say goodbye to complex processes and say hello to simplicity, security, and scalability.

Features 🚀

  • Secure user authentication and profile management 🔐
  • Real-time listing of available stocks with the latest prices 📊
  • Hassle-free cash deposits into user accounts 💸
  • Seamless placement of buy and sell orders on external exchanges 🔄
  • Email notifications for filled orders 📬

User Stories 👥

Sign Up 📝

As a potential enterprise customer, easily sign up and create your organization profile to manage your staff effectively.

Acceptance Criteria:

  1. Open to anyone with app access 📱
  2. Provide user name, email, and password 🔑
  3. Activate your account by clicking the received activation link in the email 📧

Sign In 🔑

Effortlessly sign into the system to access your customer profile details.

Acceptance Criteria:

  • Use passwords with 6 or more alphanumeric characters 🔐

List Stocks 📈

View all available stocks along with their latest prices.

Acceptance Criteria:

  1. Log in to your organization 👤
  2. List available stock symbols with current prices 📊

Deposit Cash 💰

Load cash into your account effortlessly.

Acceptance Criteria:

  • Log into your account and deposit any desired amount to your cash balance 💸

Place an Order 🔄

Place buy and sell orders on external exchanges with ease.

Acceptance Criteria:

  1. Create a buy/sell order with a target price 📉📈
  2. Orders are filled automatically once the stock price reaches the target 🎯

Email Notification 📬

Receive email notifications when your BUY/SELL orders are filled on the exchange.

Acceptance Criteria:

  • Get notified by email for filled orders 📧

Getting Started 🚀

To embark on your Payday Trade journey, follow these simple steps:

  1. Clone the repository
  2. Install the required dependencies
  3. Set up your environment variables
  4. Run the application

For detailed instructions, refer to the Getting Started Guide.

Local Development 🛠️

Learn how to contribute to Payday Trade and make local developments by checking out our Contribution Guidelines.

Testing 🧪

We prioritize code quality and maintainability through comprehensive testing.

  • Achieve at least 80% unit test coverage
  • Optional integration tests

For testing information, refer to the Testing Guide.