> SYSTEM_BLUEPRINT

From source code to a secured public application.

Pathwaays combines frontend development, Java application logic, cloud infrastructure, DNS, encryption and server configuration. This blueprint explains how those systems communicate.

How new code reaches the server

Pathwaays begins as code on a development computer. Each approved version moves through several systems before becoming the live website visitors see.

01 Development workspace

Eclipse

Where the Java and frontend code is written and tested.

Eclipse is the local development environment used to edit the Java classes, Thymeleaf templates, CSS and JavaScript that make up Pathwaays.

02 Version tracking

Git and GitHub

Records changes and stores approved versions of the project.

Git records the project’s development history. Updated code is committed and pushed to GitHub, creating a controlled source from which the server can retrieve the latest version.

03 Cloud computing

AWS EC2

Hosts the live Pathwaays application.

An AWS EC2 instance acts as the project’s remote Linux server. The server retrieves the approved code through its authenticated Git connection.

04 Application builder

Maven

Packages the project into an executable Java application.

Maven resolves the project’s dependencies, runs the configured build process and packages Pathwaays as a Spring Boot JAR.

05 Running service

Spring Boot

Starts the application on the server.

The built JAR starts Spring Boot and its embedded Tomcat server. The application listens internally on port 8080 while NGINX handles public traffic.

PasswordAnalyzer Java source code displayed in Eclipse
Java development PasswordAnalyzer source code being developed inside Eclipse.
Pathwaays deployment commands running in a terminal
Application deployment Building and launching the Spring Boot application on its AWS EC2 server.

How a visitor reaches Pathwaays

When someone enters pathwaays.com, their browser follows a secured path from the public domain to the application running inside AWS.

01 Website visitor

Browser

Requests pathwaays.com using HTTPS.

A visitor’s browser requests the website using an encrypted HTTPS connection.

02 Internet address book

DNS

Finds the server connected to the domain.

Namecheap DNS records connect pathwaays.com to the Elastic IP address assigned to the AWS infrastructure.

03 Stable public address

Elastic IP

Directs the request to the correct EC2 server.

The Elastic IP provides the EC2 instance with a stable public address, preventing the domain destination from changing when the instance is restarted.

04 Secure front door

NGINX

Secures and forwards the visitor’s request.

NGINX receives HTTPS traffic on port 443, applies the configured security headers and forwards the request internally to Spring Boot on localhost port 8080.

05 Application engine

Spring Boot

Processes the request and selects a page.

Spring Boot receives the internal request, selects the correct controller method and returns the appropriate Thymeleaf page.

DNS configuration used by Pathwaays
Domain connection DNS records connecting pathwaays.com to its AWS infrastructure.
NGINX and HTTPS configuration for Pathwaays
Secure reverse proxy NGINX forwarding public HTTPS traffic to the internal Spring Boot application.

What happens inside the password analyzer

After the website loads, Spring Boot coordinates the frontend form, Java controller, password-analysis logic and final result.

01 User interaction

HTML Form

Accepts a test value from the visitor.

The Thymeleaf page contains a password input that sends a POST request to the application’s password route.

02 Request coordinator

DemoController

Receives the request and coordinates the response.

DemoController receives the submitted value, passes it to PasswordAnalyzer and places the returned result into the Spring model.

03 Analysis logic

Password
Analyzer

Evaluates several password characteristics.

The Java class evaluates length, numerical characters, uppercase and lowercase letters and supported special characters. It converts those checks into one overall result.

04 Page generator

Thymeleaf

Places the result back into the webpage.

Thymeleaf reads the value stored in the model and safely renders the analyzer’s result inside the returned HTML page.

Spring Boot controller code for the password analyzer
Backend coordination DemoController connecting the webpage to PasswordAnalyzer.
Password analyzer running on Pathwaays
Completed request The password analyzer running as part of the publicly deployed application.

Technologies used

> Frontend

  • HTML
  • CSS
  • JavaScript
  • Thymeleaf

> Application

  • Java
  • Spring Boot
  • Apache Tomcat
  • Maven

> Infrastructure

  • AWS EC2
  • Elastic IP
  • NGINX
  • Namecheap DNS

> Security

  • HTTPS and TLS
  • Let’s Encrypt
  • Content Security Policy
  • Security headers

> Development

  • Eclipse
  • Git and GitHub
  • Ubuntu
  • SSH
PasswordAnalyzer Java source code displayed in Eclipse
Java development PasswordAnalyzer source code being developed inside Eclipse.
Pathwaays deployment commands running in a terminal
Application deployment Building and launching the Spring Boot application on its AWS EC2 server.

Development archive

Additional videos and development records will be added as Pathwaays continues to evolve.

[ DEVELOPMENT VIDEOS COMING SOON ]