Skip to content

mshemeel/java-learning

Repository files navigation

Java Learning Platform

A comprehensive documentation platform for Java developers covering core concepts to advanced microservices architecture.

Overview

The Java Learning Platform is a static documentation site built with MkDocs and hosted on GitHub Pages. It provides comprehensive guides and tutorials on:

  • Java Core
  • Spring Boot
  • Microservices
  • Kubernetes
  • Design Patterns

Deployment

The documentation is automatically deployed to GitHub Pages using GitHub Actions. Here's how to work with this project:

Prerequisites

  • Python 3.8+
  • pip
  • Git

Local Development

  1. Clone the repository:

    git clone https://github.com/mshemeel/java-learning.git
    cd java-learning
  2. Install dependencies:

    pip install -r requirements.txt
  3. Run the local development server:

    mkdocs serve
  4. Open your browser and navigate to http://127.0.0.1:8000/

Deployment Process

The documentation is automatically deployed to GitHub Pages when changes are pushed to the main branch. The deployment process is handled by GitHub Actions as configured in .github/workflows/deploy.yml.

To manually trigger a deployment:

  1. Go to the GitHub repository
  2. Navigate to Actions
  3. Select the "Deploy Documentation" workflow
  4. Click "Run workflow"

Custom Domain (Optional)

To set up a custom domain:

  1. Update the CNAME in the GitHub workflow file
  2. Configure your DNS settings as per the deployment guide
  3. Enable HTTPS in the GitHub Pages settings

Project Structure

java-learning/
├── java/
│   ├── java-basics.md
│   ├── java-oop.md
│   └── java-collections.md
├── spring-boot/
│   └── (Spring Boot documentation files)
├── kubernetes/
│   ├── kubernetes-basics.md
│   ├── kubernetes-deployment.md
│   ├── kubernetes-services.md
│   ├── kubernetes-config-secrets.md
│   ├── kubernetes-storage.md
│   ├── kubernetes-scaling.md
│   ├── kubernetes-monitoring.md
│   ├── kubernetes-security.md
│   ├── kubernetes-networking.md
│   ├── kubernetes-troubleshooting.md
│   └── kubernetes-best-practices.md
├── microservices/
│   └── (Microservices documentation files)
└── design-patterns/
    ├── design-patterns-principles.md
    ├── design-patterns-best-practices.md
    ├── design-patterns-j2ee.md
    ├── design-patterns-behavioral.md
    ├── design-patterns-structural.md
    └── design-patterns-creational.md

Documentation Index

Java Core

  • Java Basics - Fundamental Java concepts, syntax, and basic operations
  • Java OOP - Object-oriented programming concepts in Java
  • Java Collections - Java Collections Framework guide

Kubernetes

Design Patterns

Getting Started

  1. Begin with the Java Core section if you're new to Java
  2. Progress to Design Patterns to understand software design principles
  3. Move on to Spring Boot for web application development
  4. Learn Microservices architecture and patterns
  5. Finally, master Kubernetes for container orchestration

Learning Path

Beginner Level

  1. Java Basics
  2. Java OOP
  3. Java Collections
  4. Basic Design Patterns

Intermediate Level

  1. Spring Boot Basics
  2. J2EE Design Patterns
  3. Microservices Fundamentals
  4. Basic Kubernetes Concepts

Advanced Level

  1. Advanced Design Patterns
  2. Complex Microservices Patterns
  3. Advanced Kubernetes Features
  4. Production Best Practices

Contributing

Please see CONTRIBUTING.md for details on how to contribute to this project.

License

This project is licensed under the MIT License - see the LICENSE.md file for details.

Feedback

We value your feedback! Please submit any comments or suggestions through our feedback form or by creating an issue in this repository.

Acknowledgments

  • Thanks to all contributors who have helped build this learning platform
  • Special thanks to the open-source community for valuable resources
  • Credits to various authors and organizations whose work has inspired this content

About

No description, website, or topics provided.

Resources

License

Contributing

Stars

11 stars

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors