Personal portfolio website showcasing software engineering projects, technical skills, and academic background. Designed with a lightweight, framework-free architecture for optimal performance and seamless static deployment.
Live Site: rah3.github.io
GitHub Repository: github.com/rah3/rah3.github.io
I am a fourth-year Computer Science student at Carleton University pursuing a Bachelor of Computer Science with a Minor in Mathematics.
Core technical interests and focus areas include:
- Software Engineering & System Design
- Linux Systems & Process Management
- Backend Development & APIs
- Database Design & Optimization
- Telecommunications Systems
- Automation & Scripting
The project relies on a modern, lightweight, and framework-free JavaScript architecture. It uses Node.js and Express solely for local development ergonomics, while the production assets are fully optimized for static delivery via GitHub Pages.
- HTML5 / CSS3: Semantic markup and modern custom styling.
- Vanilla JavaScript (ES6+): Modular, performant implementation without heavy framework overhead.
- Node.js & Express: Local development server and static asset proxying.
- Git & GitHub: Version control and CI/CD hosting via GitHub Pages.
- Nodemon: Hot-reloading utility during local development.
The codebase implements a modular component pattern and functional composition. Rather than relying on heavy client-side frameworks, the UI components are isolated into independent, testable modules.
Navigation.js: Manages mobile responsive toggle states and layout adjustments.ScrollSpy.js: Tracks user scroll position to dynamically highlight active navigation links.EmailClipboard.js: Handles user interactions for quick email copying with visual feedback.
Application startup and lifecycle management are initialized through a lightweight factory pattern:
createApp().init();My application has the following features:
- Fully Responsive: Mobile-first design adapting seamlessly across mobile, tablet, and desktop viewports.
- Active Section Highlighting: Real-time viewport tracking using intersection observers / scroll spy.
- Interactive Utilities: One-click email copy-to-clipboard functionality.
- Lightweight & Fast: Zero frontend framework bloat ensuring instant page load speeds.
- Express Development Server: Local mock environment mirroring production static behavior.
The project structure is as follows:
rah3.github.io/
│
├── index.html # Main entry markup
├── style.css # Global stylesheet
└── js/ # Modular frontend scripts
├── App.js # Core application factory
├── Navigation.js # Mobile menu & nav controller
├── ScrollSpy.js # Active section tracker
└── EmailClipboard.js # Clipboard utility
├── server.js # Express local development server
├── package.json # Node.js dependencies and scripts
└── README.md # Project documentation
Below are the showcased projects that I have worked on during my school term.
- Course: COMP 3005 (Database Management Systems)
- Technologies: SQLite, SQL, Relational Database Design
- Overview: Designed and implemented a robust relational database schema tailored for telecommunications routing and subscriber switching management.
- Course: COMP 3000 (Operating Systems)
- Technologies: Linux, Bash, System Calls, C
- Overview: Explored low-level OS primitives, process management (
fork,execve), environment variable handling, and remote SSH administration.
- Technologies: Node.js, Express, JavaScript, HTML5/CSS3
- Overview: This repository—built from scratch to highlight academic and practical engineering work.
To run the development environment locally:
- Clone the repository:
git clone [https://github.com/rah3/rah3.github.io.git](https://github.com/rah3/rah3.github.io.git)
cd rah3.github.io
- Install dependencies:
npm install
- Start the development server:
npm run dev
(Or standard start: npm start)
4. Open in your browser:
Navigate to http://localhost:3000.
This repository uses a decoupled deployment model:
- Production: The contents of the
public/directory are deployed statically to GitHub Pages. - Development: The
server.jsExpress backend is used exclusively for local testing and does not run in production.
Rahie Datta
- Carleton University — Bachelor of Computer Science (BCS)
- Expected Graduation: 2027
- GitHub Profile