The Application
Documentation
Currency Converter is a small PHP project I built to demonstrate how I structure and write code without relying on frameworks or dependencies.
The goal isn't complexity. It is clarity. Even a simple application can show how someone thinks about architecture, APIs and clean code.
This project has two parts:
Server Side (Internal API)
The server exposes two JSON endpoints:
- Converter: https://currencyconverter.xman.gr/Server/converter.php
- Available Currencies: https://currencyconverter.xman.gr/Server/available_currencies.php
The internal API fetches real exchange rates from an external source and returns them in a clean JSON format.
Client Side
The client runs on a separate domain.
Because of that, instead of calling the service API directly (and dealing with CORS), the client sends requests to a small PHP proxy.
The proxy communicates with the internal API and returns the result back to the browser.
When the page loads:
- The client asks the proxy for the list of currencies
- The dropdowns are populated
- When the user clicks Convert, the proxy sends the request to the converter endpoint and returns the converted amount
Development Notes
I built the UI using a lightweight HTML template and wrote all the backend logic myself.
The point of this project is to present a clean, simple example of how I like to organize code: small files,
clear responsibilities, and easy-to-follow structure.
