- 🌱 Graduate of Software Engineering from The African Leadership University.
- 📫 How to reach me: wainainajamesgatheru@gmail.com
- ⚡ Fun fact: comfort is the enemy of progress.
These are some of the projects I have been working on
- Click on the names to see the deployed versions
1. Horizon
- Description:
- This modern banking web application enables users to seamlessly manage their finances across multiple banks in one place. It provides a secure and user-friendly interface for tracking balances, transactions, and transfers, offering a centralized hub for managing personal or business finances. Built using Next.js for server-side rendering and efficient routing, ReactJS for a dynamic and responsive user interface, and MongoDB for scalable, high-performance data storage, the application ensures fast and reliable access to financial data. The platform emphasizes user experience, security, and efficiency, providing a comprehensive solution for multi-bank account management
2. Hawthorne
- Description:
- I developed a healthcare booking system that allows patients to easily schedule doctor appointments online. The platform provides a seamless, user-friendly interface where users can browse available doctors, view their profiles and specialties, and book appointments based on availability. Built using Java and Spring Boot for the back end, the system ensures robust and scalable performance, while React powers the front end, delivering a responsive and intuitive user experience. MongoDB is used for efficient storage and management of user and appointment data. The system also includes JUnit testing to ensure reliability and maintain code quality. This solution streamlines the healthcare appointment process, enhancing convenience for both patients and healthcare providers.
3. BillNasi
- Description:
- I developed a comprehensive billing and account management system for internet service providers, streamlining client account services, invoicing, and payment tracking. This platform enables ISPs to efficiently manage client subscriptions, automate billing processes, and track payment statuses with ease. The back-end is powered by Python and Flask, providing a lightweight yet powerful framework for handling data and processing requests. Nginx ensures high availability and load balancing for smooth server operations, while MySQL serves as the secure and reliable database for managing client and billing data. The front-end, built using HTML5, CSS3, and JavaScript, offers a clean and intuitive user interface for both administrators and customers, enhancing the overall user experience. This system improves operational efficiency and provides real-time insights into account and billing activities.
- To login -> username: demo -password: demo1234
4. Starends
-
Description:
I developed a dynamic website for a construction company to showcase their services, projects, and company profile. The website provides an interactive, visually appealing platform for potential clients to explore the company’s portfolio, view completed projects, and learn about the range of services offered. Built with TypeScript for type safety and robust application architecture, and powered by Next.js for optimized performance, server-side rendering, and smooth navigation, the website ensures a fast and seamless user experience. The design emphasizes a professional, user-friendly interface with responsive layouts, making it easy for visitors to browse the company’s work on any device. This solution helps the construction company improve its online presence, engage potential clients, and highlight its expertise in the industry.
5. MedDrone
- Description: MedDrone: Revolutionizing Medicine Delivery via Drones MedDrone is an innovative RESTful API designed to manage the entire lifecycle of drone-based medicine delivery systems. With MedDrone, healthcare providers can harness the power of autonomous drones to deliver life-saving medications with speed, accuracy, and reliability—especially in remote or hard-to-reach areas. Our API offers seamless management of the drone fleet, real-time tracking, and optimized delivery routes to ensure efficient and timely deliveries. By integrating cutting-edge technology, MedDrone not only enhances the logistics of medicine distribution but also helps reduce response times in emergencies, potentially saving countless lives.
5. KEYSPRING
- Description: is a Spring Boot-based application that integrates with Keycloak to provide secure, robust, and easy-to-manage authentication and authorization for users. This project demonstrates how to use Keycloak for identity and access management in a Spring Boot application, covering configuration, integration, and usage of OAuth2 and OpenID Connect protocols for seamless security management.
- Keycloak Integration: Secure user authentication and role-based access control (RBAC) with Keycloak.
- OAuth2/OpenID Connect: Leverage OAuth2 and OIDC for standardized, secure communication.
- Role-Based Access Control: Enforce access control based on user roles defined in Keycloak.
- Spring Boot: Built using the powerful Spring Boot framework for a fast, scalable, and modular solution.
- REST API Security: Protect REST endpoints using Keycloak authorization.
- Configurable Security: Easily configure Keycloak using Spring Boot's configuration properties.
- Description: This multi-threaded TCP server handles concurrent client connections and efficiently performs string searches within large files. The server can read configuration files to dynamically locate a file path and check if a specified string exists in that file. The system is optimized for performance and includes security features like SSL authentication for encrypted communication.
- Multi-threading Support: Handles a large number of concurrent client requests in parallel.
- String Search: Searches for an exact match of a string in a file, ensuring full line matches (not partial).
- Optimized Search: Configurable behavior to either re-read the file on every query (
REREAD_ON_QUERY=True
) or read it once at startup (REREAD_ON_QUERY=False
). - Large File Handling: Supports large files (up to 250,000 lines) with optimized search algorithms.
- SSL Authentication: Secure communication between the server and client using SSL (configurable to enable/disable).
- Logging and Debugging: Includes detailed logging for performance monitoring, such as query strings, timestamps, and execution times.
- Security: Protections against buffer overflows and other potential security issues.