xtrp.io is my personal website, where you can find my blog, projects, and more. It is completely open-sourced, as this repository! xtrp.io is built with MVC architecture with PHP. It is not built with any PHP framework of any kind, and implements its own API (model), controllers, views, and routing system.
The site includes five main pages, which are:
- Home — the homepage of the site, which includes latest blog posts and coding projects
- About — a detailed about page with my history and experience
- Blog — my blog! I post on here every so often
- Code — my latest coding projects
- Résumé — what I've done, what I know, and what I offeR
xtrp.io is built with MVC architecture, and has separate directories for the routers, models, controllers, and views. A detailed list of directories and main files and their usages is below:
api— the model of the site. Handles communication with the "database", and returns information as JSON.
content— publishable content such as blog posts, lists of projects, etc. This acts as the database for the site.
resources— any backend resources used by the API.
views— the view of the site, which includes frontend HTML templates to be accessed by controllers.
assets— the static frontend assets for the site, such as favicons, scripts, and stylesheets.
resources— any frontend resources used by views, for example, Modernizr.js or a CSS plugin.
controller— the controller of the site. This includes all the controllers for each of the unique pages, such as the homepage, blog page, post pages, etc.
index.php— this is the entry point of the site. It calls the router, and subsequently, the controllers and views.
There are several other files within the main directory, such as
robots.txt, but those are pretty self-explanatory.
Note that the
api/content directory is not included publicly, as content is edited on the web server and site directly.
- Parsedown and ParsedownExtra by erusev on GitHub. Used for parsing markdown to HTML.
- PrismJS by many open source contributors on GitHub. Used for syntax highlighting on blog posts.
- Normalize.css by necolas on GitHub. Used for fast and responsive CSS resets.
- Skeleton by dhg on GitHub. Used as a CSS boilerplate file for the site.
- Animate.css by daneden on GitHub. Used for easy CSS animations.
xtrp.io was built by Fred Adams. All rights are reserved, and the code and/or other files that are part of xtrp.io are explicitly copyrighted and not available for reuse, redistribution, modification, or resell.