Welcome to my
Port-
folio

More than just code

Formulating experiences by translating thoughts into keystrokes

Marvin Ramirez

Constant Evolution

Not many love constantly being challenged. Not many love being out of their comfort zone.

Change has always been and will always be a constant. How you decide to deal with that change is what truly determines your path in this world.

In the realm of technology the above statement definitely applies due to the tremendoeous rate of change that occurs. Trends are one thing, but revolutionary disruption and new ways of thinking on how to use or build on the existing status quo is what moves everything forward.

Staying current with the constant stream of new web technologies is a challange, but determining what are the best tools and the best processes is where the magic happens.

Projects

CampDev API

A backend API built using Node, Express and MongoDB

CampDev API

A backend API built using Node, Express and MongoDB

CampDev API is an extensive, in-depth backend API for CampDev, a bootcamp directory app.

CampDev | Github Repo

From HTTP essentials to deployment with PM2, NGINX and SSL on a VPS, this project touched on several key aspects when creating a RESTful API. Aside from tying in various technologies and ensuring that they all worked together, designing the routes to cover all scenarios was the main ingredient simply due to the fact of what was trying to be accomplished. Once that was in place, routing and controller methods, pagination, filtering, models and relationships, user roles, permissions and authentication were all pieces of the puzzle that had to come together.

Of all the technologies used, I believe that Postman was an invaluable tool in allowing this project to move forward. Postman not only allows for immediate feedback on the routes created, but also provides the option to run through different scenarios with ease. (Generating the documentation from the collections was immensely helpful)

This RESTful API project for CampDev encompassed the following:

  • HTTP Fundamentals (Req/Res Cycle, Status Codes, etc)
  • Advanced Mongoose Queries
  • JWT/Cookie Authentication
  • Express & Mongoose Middleware (Geocoding, Auth, Error Handling, etc)
  • API Security (NoSQL injection, XSS protection, Rate Limiting)
  • API Documentation & Deployment

Dev Shareposts

A simple social network built on a MVC PHP Framework

Dev Shareposts

A simple social network built on a MVC PHP Framework

Dev Shareposts is an application built on top of a complete custom MVC (Model View Controller) framework using object oriented PHP.

Dev Shareposts | Github Repo

This framework includes a core library class to load controllers & methods from the URL (Also using .htaccess), a base controller class to load models and views, and a custom database library using PDO for all models to interact with the database using prepared statements

Dev Shareposts includes:

  1. Full user authentication
  2. Access control for posts
  3. Server side form validation
  4. Bootstrap 4 UI
  5. Posts CRUD
  6. Helper functions (flash messaging & redirects)

This overall project touched on

  • Building a custom MVC Framework from absolute scratch
  • Building an application using the custom framework
  • Creating a custom PDO class to handle database interactions
  • Complete user authentication using OOP & PDO
  • Deploying the custom PHP application

MR Mini Apps

A short description

MR Mini Apps

Small applications built with different technolgies

This section is for applications on a smaller scale to explore new technologies and gain a better understanding of the ones already in use.


1. CONTACT MANAGER - REACT, MONGODB, EXPRESS, NODE.JS

Contact Manager | Github Repo

Contact Manager is an app built with React, MongoDB, Express.js and Node.js which is deployed on Heroku. The intent of the app is straight forward which allows users to register on the site and to create and maintain their contacts. A user is able to filter, edit and delete contacts as they require. Due to the authentication, users only see contacts that they have added.

This application is building on the foundation of the Github Finder app but includes a database to interact with so that the users are able to create, read, update and delete their contacts. This project provides insight on the path to the building blocks of an application on a larger scale.



2. GITHUB FINDER - REACT

Github Finder | Github Repo

Github Finder is a small app built with React and deployed on Netlify. The app allows you to search users via the Githhub API and returns the user's details along with the 5 latest repositories sorted by date in descending order. The application was built to reinforce React fundamentals (components, props, state, etc...) along with exploring React hooks (useState, useEffect, useContext, useReducer).

As with anything, having a strong understanding of the basics allows you to confidently explore deeper and do more. Github Finder is a great application to gain a strong understanding of the fundementals and is a great launchpad for more.

MR Thoughts

A short description

Contact me