<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Capin Judicael Akpado </title>
    <description>The latest articles on DEV Community by Capin Judicael Akpado  (@capjud95).</description>
    <link>https://dev.to/capjud95</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3279314%2Fcf9d8539-20bc-49e0-87fa-1c16342196f9.png</url>
      <title>DEV Community: Capin Judicael Akpado </title>
      <link>https://dev.to/capjud95</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/capjud95"/>
    <language>en</language>
    <item>
      <title>ScopeGuard : Stop scope creep before it costs you</title>
      <dc:creator>Capin Judicael Akpado </dc:creator>
      <pubDate>Mon, 26 Oct 2026 06:48:44 +0000</pubDate>
      <link>https://dev.to/capjud95/scopeguard-stop-scope-creep-before-it-costs-you-4fe0</link>
      <guid>https://dev.to/capjud95/scopeguard-stop-scope-creep-before-it-costs-you-4fe0</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/hacktoberfest-week3-2026-10-19"&gt;Hacktoberfest Open-Source AI Challenge Week 3: Slow and Steady&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;ScopeGuard - Scope &amp;amp; Creep Defense&lt;/p&gt;

&lt;p&gt;Scope creep is one of the most frustrating problems in client projects. A simple website project can gradually turn into an entirely different product through extra requests buried in emails, chats, and meeting notes.&lt;/p&gt;

&lt;p&gt;ScopeGuard helps developers, freelancers, agencies, and project managers turn messy client conversations into clear, actionable project scope information.&lt;/p&gt;

&lt;p&gt;It analyzes conversations to identify:&lt;/p&gt;

&lt;p&gt;Project scope: What was originally agreed upon.&lt;/p&gt;

&lt;p&gt;Decisions and action items: What needs to happen next.&lt;/p&gt;

&lt;p&gt;Out-of-scope requests: New requirements that may exceed the original agreement.&lt;/p&gt;

&lt;p&gt;Scope risks: Potential misunderstandings before they become costly disputes.&lt;/p&gt;

&lt;p&gt;It also aims to help teams prepare evidence-based, diplomatic responses when a client requests additional work.&lt;/p&gt;

&lt;p&gt;The goal is simple: spend less time manually reviewing conversations, reduce misunderstandings, and protect time that would otherwise disappear into unpaid work.&lt;/p&gt;

&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;p&gt;Try ScopeGuard here:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://sope-guard.netlify.app/" rel="noopener noreferrer"&gt;https://sope-guard.netlify.app/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Open the Conversation Analyzer and test it with a client email containing both original project requirements and additional feature requests.&lt;/p&gt;

&lt;h2&gt;
  
  
  Code
&lt;/h2&gt;

&lt;p&gt;Explore the source code on GitHub:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/Judakp/scopeguards" rel="noopener noreferrer"&gt;https://github.com/Judakp/scopeguards&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;ScopeGuard is built as a web application, with a React and TypeScript frontend and an AI analysis service powered by a Supabase Edge Function.&lt;/p&gt;

&lt;h2&gt;
  
  
  How I Built It
&lt;/h2&gt;

&lt;p&gt;I built ScopeGuard around Gemma, an open-weight AI model, accessed through OpenRouter.&lt;/p&gt;

&lt;p&gt;The application uses a React and TypeScript interface to let users analyze client conversations in the context of a project. The analysis request is sent to a Supabase Edge Function, which handles the connection to the AI provider without exposing the OpenRouter secret key in the frontend.&lt;/p&gt;

&lt;p&gt;The intended workflow is:&lt;/p&gt;

&lt;p&gt;Select a project and provide a client conversation.&lt;/p&gt;

&lt;p&gt;Send the conversation for AI-powered analysis.&lt;/p&gt;

&lt;p&gt;Extract structured information about scope, decisions, and potential scope changes.&lt;/p&gt;

&lt;p&gt;Review the findings and use them to make better-informed project decisions.&lt;/p&gt;

&lt;p&gt;I also built the application to demonstrate the experience with realistic project scenarios, including a website redesign where a client requests features that were not included in the initial agreement.&lt;/p&gt;

&lt;p&gt;One of the key challenges was connecting the deployed frontend to the AI service correctly. Since the application is hosted on Netlify, I routed the analysis requests directly to the Supabase Edge Function rather than relying on an Express endpoint that Netlify does not automatically run as a persistent server.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Does Open Innovation Matter?
&lt;/h2&gt;

&lt;p&gt;ScopeGuard is built around the idea that useful AI tools should not depend entirely on a single closed AI provider.&lt;/p&gt;

&lt;p&gt;Open-weight models such as Gemma give developers more flexibility in how they build, deploy, evaluate, and integrate AI-powered applications. They make it possible to experiment with different inference providers and deployment strategies while keeping the product's architecture under the developer's control.&lt;/p&gt;

&lt;p&gt;For ScopeGuard, that flexibility matters because project conversations can contain sensitive business information. Having greater control over the model and inference architecture creates opportunities to explore deployment options that better fit different privacy, cost, and infrastructure requirements.&lt;/p&gt;

&lt;p&gt;Open innovation also lowers the barrier for independent developers to build practical AI products. I was able to focus on a specific business problem and integrate an open-weight model into a working application without building a language model from scratch.&lt;/p&gt;

&lt;p&gt;The bigger vision is to make AI useful not just for generating content, but for helping people protect their time, make better decisions, and run their businesses more effectively.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Lazy Payoff
&lt;/h2&gt;

&lt;p&gt;ScopeGuard is designed to reduce the manual work involved in reviewing long client conversations, reconstructing the original agreement, and identifying requests that may expand a project's scope.&lt;/p&gt;

&lt;p&gt;Instead of rereading an entire email thread and manually separating agreed requirements from new demands, a project professional can use the analyzer to obtain a structured starting point for review.&lt;/p&gt;

&lt;p&gt;The time savings have not yet been formally measured. The value I am targeting is fewer overlooked requirements, faster scope reviews, and less time spent resolving misunderstandings after they become problems.&lt;/p&gt;

&lt;h2&gt;
  
  
  Prize Categories
&lt;/h2&gt;

&lt;p&gt;Best Use of Gemma&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
    </item>
    <item>
      <title>Are web fonts ruining your lighthouse score?</title>
      <dc:creator>Capin Judicael Akpado </dc:creator>
      <pubDate>Mon, 12 Oct 2026 12:37:08 +0000</pubDate>
      <link>https://dev.to/capjud95/are-web-fonts-ruining-your-lighthouse-score-4b9a</link>
      <guid>https://dev.to/capjud95/are-web-fonts-ruining-your-lighthouse-score-4b9a</guid>
      <description>&lt;p&gt;Web fonts can make a site look sleek, but they often come with a hidden performance cost. If your page layout jumps while loading or your main heading takes seconds to appear, your custom typography strategy might be the culprit.&lt;/p&gt;

&lt;p&gt;Slow-loading fonts directly impact two key Core Web Vitals :&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;LCP (Largest Contentful Paint): When render-blocking fonts delay text rendering.&lt;/li&gt;
&lt;li&gt;CLS (Cumulative Layout Shift): When unstyled fallback fonts suddenly swap into custom fonts, causing layout shifts.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;FOUT vs FOIT: A design &amp;amp; UX trade-off&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Handling web fonts often comes down to choosing between two rendering behaviors :&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;FOIT (Flash of invisible text)&lt;/strong&gt; : The browser hides the text until the custom font loads. It maintains brand consistency and prevents layout jumps, but risks leaving users staring at blank spaces on slow networks.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;FOUT (Flash of Unstyled Text) :&lt;/strong&gt; The browser shows a system fallback font immediately and swaps it once the custom font is ready. It prioritizes instant readability, but can cause layout shifts.&lt;/p&gt;

&lt;h4&gt;
  
  
  The strategic choice with font-display
&lt;/h4&gt;

&lt;p&gt;You can control this behavior in CSS using the font-display property depending on your priorities :&lt;/p&gt;

&lt;p&gt;`&lt;/p&gt;

&lt;p&gt;&lt;code&gt;css&lt;br&gt;
CSS&lt;br&gt;
@font-face {&lt;br&gt;
  font-family: 'CustomFont';&lt;br&gt;
  src: url('/fonts/custom-font.woff2') format('woff2');&lt;br&gt;
  /* Use 'swap' for instant readability (FOUT), &lt;br&gt;
     or 'block' to preserve visual identity first (FOIT) */&lt;br&gt;
  font-display: swap; &lt;br&gt;
}&lt;br&gt;
&lt;/code&gt;&lt;br&gt;
`&lt;/p&gt;

&lt;p&gt;**1. font-display: swap (FOUT): Best for performance and readability. Text appears instantly using a fallback font.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;/li&gt;
&lt;li&gt;font-display: block (FOIT): Best for strict design integrity. Briefly hides text (up to 3s) to prevent a sudden font swap.&lt;/li&gt;
&lt;li&gt;
&lt;/li&gt;
&lt;li&gt;font-display: optional: A balanced approach that lets the browser skip the custom font if the connection is too slow, avoiding layout shifts entirely.**&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I wrote a complete step-by-step guide covering all these optimization techniques on my blog:&lt;/p&gt;

&lt;p&gt;👉 &lt;a href="https://capinakpado.com/en/blog/fout-and-foit-the-web-font-optimization-guide" rel="noopener noreferrer"&gt;Read the full guide to web font optimization here&lt;/a&gt;&lt;/p&gt;

</description>
      <category>css</category>
      <category>foutandfoit</category>
      <category>webfont</category>
      <category>webcomponents</category>
    </item>
    <item>
      <title>BugSnippet-vault : GitHub Copilot CLI Challenge</title>
      <dc:creator>Capin Judicael Akpado </dc:creator>
      <pubDate>Wed, 11 Feb 2026 03:25:17 +0000</pubDate>
      <link>https://dev.to/capjud95/bugsnippet-vault-github-copilot-cli-challenge-1ild</link>
      <guid>https://dev.to/capjud95/bugsnippet-vault-github-copilot-cli-challenge-1ild</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/github-2026-01-21"&gt;GitHub Copilot CLI Challenge&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Overview of BugSnippet-Vault&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;BugSnippet-Vault is a high-performance, minimalist dashboard designed to centralize and track technical debt. Built with a black and white aesthetic, it serves as a secure digital ledger where developers can report bugs, link them directly to GitHub source code, and monitor their progress through real-time analytics.&lt;/p&gt;

&lt;p&gt;Key features include :&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Dynamic Dashboard: Visual statistics that calculate resolution rates and bug frequency.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Interactive Bug Cards: Each entry features status toggling (Open/Closed), direct GitHub URL referencing, and a deletion system.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Wisdom System: Every bug card displays "Cryptic Wisdom" phrases in the footer. These are randomly generated mottos like "Errors are lessons in disguise", reminding the developer that every fix is a step toward mastery.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Persistent Storage: Using local storage to ensure that your vault remains intact across sessions.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;What it means to me, this application is more than just a bug tracker; it is a philosophy of growth. In the fast-paced environment of a hackathon, we often see bugs as failures or obstacles. I created the "Vault" to flip that narrative.&lt;/p&gt;

&lt;p&gt;The inclusion of wisdom phrases and the "Cryptic" footer reflects my belief that debugging is a form of digital alchemy—transforming the "noise" of an error into the "gold" of knowledge. This project represents my journey into building clean, functional, and resilient interfaces where every error becomes an opportunity to build a stronger vault of wisdom. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgxbwa4r1oicyklaan377.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgxbwa4r1oicyklaan377.JPG" alt=" " width="800" height="369"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Demo&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Deployment link : &lt;a href="https://idyllic-cobbler-27d563.netlify.app/" rel="noopener noreferrer"&gt;https://idyllic-cobbler-27d563.netlify.app/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Github link : &lt;a href="https://github.com/Judakp/Bugsnippet-vault.git" rel="noopener noreferrer"&gt;https://github.com/Judakp/Bugsnippet-vault.git&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frktkyweii4ya6ainvh2f.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frktkyweii4ya6ainvh2f.JPG" alt=" " width="800" height="372"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl245u85qsppy3fkf3mqq.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl245u85qsppy3fkf3mqq.JPG" alt=" " width="800" height="369"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuvfqo35592zk6efusen2.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuvfqo35592zk6efusen2.JPG" alt=" " width="799" height="368"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffq2te1jwnlgu4q0sx66u.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffq2te1jwnlgu4q0sx66u.JPG" alt=" " width="799" height="373"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fiumhtrgkvzpkvkyeyuzt.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fiumhtrgkvzpkvkyeyuzt.JPG" alt=" " width="800" height="398"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  My Experience with GitHub Copilot CLI
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;How I used GitHub Copilot CLI and its impact on my development experience&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Throughout the creation of the Bug &amp;amp; Snippet Vault, GitHub Copilot CLI was my primary architectural partner. I integrated it directly into my workflow, alternating between VS Code for core logic and PowerShell for rapid iteration and system commands. This hybrid environment allowed me to leverage the CLI’s power to debug, refactor, and refine the application in real-time.&lt;/p&gt;

&lt;p&gt;One of the most significant impacts of the CLI was its assistance in design refactoring. Initially, the project used auto-generated Tailwind CSS, which felt too bloated for the minimalist "Vault" aesthetic I envisioned. Using the CLI, I systematically converted the generated Tailwind utility classes into pure, custom CSS equivalents. Copilot helped me map complex utility chains to clean, maintainable CSS rules, allowing me to achieve a bespoke monochrome look while keeping the codebase lightweight and readable.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is the impact of Github Copilot CLI ?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The impact on my development experience was profound :&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Efficiency in PowerShell: I used gh copilot suggest to handle state management logic and complex SVG attribute fixes (like the NaN errors in my dashboard) directly from the terminal.&lt;/li&gt;
&lt;li&gt;Bridge between Code and Command Line: Working across VS Code and PowerShell, I could ask for shell-specific solutions or code snippets without leaving my flow, which significantly accelerated the implementation of features like the GitHub link integration and status toggling.&lt;/li&gt;
&lt;li&gt;Learning Curve: It acted as a mentor, guiding me through the implementation of React hooks while ensuring my manual CSS was as optimized as the original framework-driven code.
Ultimately, GitHub Copilot CLI turned the daunting task of manual CSS conversion and state debugging into a structured, educational, and highly productive experience.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkwvlxxi8c9k0caih85es.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkwvlxxi8c9k0caih85es.JPG" alt=" " width="800" height="415"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3hrhsvtsmyvef5chwq7j.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3hrhsvtsmyvef5chwq7j.JPG" alt=" " width="800" height="420"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0jj8qxz3bxj8i9hee0zk.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0jj8qxz3bxj8i9hee0zk.JPG" alt=" " width="800" height="421"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxr3ije6kj0qb1kj4az2g.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxr3ije6kj0qb1kj4az2g.JPG" alt=" " width="800" height="416"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fshprvdmxu8nxclagos5s.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fshprvdmxu8nxclagos5s.JPG" alt=" " width="800" height="418"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>githubchallenge</category>
      <category>cli</category>
      <category>githubcopilot</category>
    </item>
    <item>
      <title>Beyond Customer Bots: Building an Internal AI Coach for HR 🚀</title>
      <dc:creator>Capin Judicael Akpado </dc:creator>
      <pubDate>Thu, 08 Jan 2026 19:55:36 +0000</pubDate>
      <link>https://dev.to/capjud95/beyond-customer-bots-building-an-internal-ai-coach-for-hr-iaj</link>
      <guid>https://dev.to/capjud95/beyond-customer-bots-building-an-internal-ai-coach-for-hr-iaj</guid>
      <description>&lt;p&gt;Most people focus on AI for customer service, but the real productivity killer is internal: bottlenecks in knowledge sharing.&lt;/p&gt;

&lt;p&gt;I built a web app model to solve this. Instead of constantly interrupting managers, employees can now get instant, context-aware guidance from an AI agent.&lt;/p&gt;

&lt;p&gt;The Project: "Good Pasta" Coach 🧑‍⚖️&lt;br&gt;
It's an AI-driven internal support system designed for a fictional premium pasta company.&lt;/p&gt;

&lt;p&gt;Key Tech Features:&lt;/p&gt;

&lt;p&gt;🌍 Multilingual: Currently supports English &amp;amp; French.&lt;br&gt;
🏢 Department-Specific: Tailored logic for logistics, production, or management.&lt;/p&gt;

&lt;p&gt;🛠️ Fully Customizable: Can be fed with any company’s specific SOPs and data.&lt;/p&gt;

&lt;p&gt;Why it matters:&lt;/p&gt;

&lt;p&gt;Conversational AI is useless if your internal team is struggling to find information. This tool bridges the gap between company policy and daily execution.&lt;/p&gt;

&lt;p&gt;🔗 Try the Demo here: &lt;a href="https://lighthearted-madeleine-7ef1dc.netlify.app/" rel="noopener noreferrer"&gt;https://lighthearted-madeleine-7ef1dc.netlify.app/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I'd love to hear your thoughts! How are you implementing AI for internal workflows?&lt;/p&gt;

&lt;p&gt;🎯 Looking for a custom AI solution for your business? Let's connect!&lt;/p&gt;

</description>
      <category>ai</category>
      <category>rh</category>
      <category>webapp</category>
      <category>webdev</category>
    </item>
    <item>
      <title>🎄 3 tips to wrap up your projects before the holidays</title>
      <dc:creator>Capin Judicael Akpado </dc:creator>
      <pubDate>Sun, 30 Nov 2025 18:32:24 +0000</pubDate>
      <link>https://dev.to/capjud95/3-tips-to-wrap-up-your-projects-before-the-holidays-37l0</link>
      <guid>https://dev.to/capjud95/3-tips-to-wrap-up-your-projects-before-the-holidays-37l0</guid>
      <description>&lt;p&gt;La version française de cette publication est ci-dessous 🇨🇵&lt;/p&gt;

&lt;p&gt;The end of the year often feels like a sprint to “finish everything before the holidays.”&lt;/p&gt;

&lt;p&gt;It’s also the time when the smallest oversight can turn into an unexpected bug right when everyone is offline.&lt;/p&gt;

&lt;p&gt;Here are 3 simple tips to secure your projects ahead of the break and start 2025 with peace of mind.&lt;/p&gt;

&lt;p&gt;🔐 1. Security&lt;/p&gt;

&lt;p&gt;Scan for vulnerabilities (Dependabot, Snyk, etc.).&lt;/p&gt;

&lt;p&gt;Review active API keys and remove unnecessary permissions.&lt;/p&gt;

&lt;p&gt;Double-check access rights from former team members.&lt;/p&gt;

&lt;p&gt;💰 2. Cost Optimization&lt;/p&gt;

&lt;p&gt;Disable unused cloud resources.&lt;/p&gt;

&lt;p&gt;Set up spending budgets and consumption alerts.&lt;/p&gt;

&lt;p&gt;Monitor pay-as-you-go services closely.&lt;/p&gt;

&lt;p&gt;Anticipate holiday traffic spikes and prepare accordingly.&lt;/p&gt;

&lt;p&gt;📚 3. Documentation &amp;amp; Handoff&lt;/p&gt;

&lt;p&gt;Write a short “project status” summary.&lt;/p&gt;

&lt;p&gt;List all essential links and resources.&lt;/p&gt;

&lt;p&gt;Document key dependencies.&lt;/p&gt;

&lt;p&gt;Define simple emergency procedures in case something unexpected happens.&lt;/p&gt;




&lt;p&gt;🎄 3 astuces pour bien clôturer ses projets avant les fêtes&lt;/p&gt;

&lt;p&gt;La fin d’année, c’est souvent un sprint pour “tout finir avant les fêtes”.&lt;/p&gt;

&lt;p&gt;Mais c’est aussi la période où la moindre négligence peut générer un bug inattendu pendant que tout le monde est loin du clavier.&lt;/p&gt;

&lt;p&gt;Voici 3 astuces simples pour sécuriser vos projets avant la trêve et commencer 2025 sereinement.&lt;/p&gt;

&lt;p&gt;🔐 1. Sécurité&lt;/p&gt;

&lt;p&gt;Scanner les vulnérabilités (Dependabot, Snyk…).&lt;/p&gt;

&lt;p&gt;Vérifier les clés API actives et les permissions inutiles.&lt;/p&gt;

&lt;p&gt;Contrôler les accès des anciens membres.&lt;/p&gt;

&lt;p&gt;💰 2. Optimisation des coûts&lt;/p&gt;

&lt;p&gt;Désactiver les ressources cloud inutiles.&lt;/p&gt;

&lt;p&gt;Paramétrer des budgets et alertes de consommation.&lt;/p&gt;

&lt;p&gt;Surveiller les services facturés à l’usage.&lt;/p&gt;

&lt;p&gt;Anticiper les pics de trafic.&lt;/p&gt;

&lt;p&gt;📚 3. Documentation &amp;amp; Handoff&lt;/p&gt;

&lt;p&gt;Rédiger un mini “état du projet”.&lt;/p&gt;

&lt;p&gt;Lister les liens essentiels.&lt;/p&gt;

&lt;p&gt;Documenter les dépendances clés.&lt;/p&gt;

&lt;p&gt;Décrire et prévoir des procédures d’urgence en cas d’imprévu.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>website</category>
      <category>mobile</category>
      <category>programming</category>
    </item>
    <item>
      <title>Web Accessibility: A business imperative, not just a technical detail</title>
      <dc:creator>Capin Judicael Akpado </dc:creator>
      <pubDate>Sun, 17 Aug 2025 17:40:04 +0000</pubDate>
      <link>https://dev.to/capjud95/web-accessibility-a-business-imperative-not-just-a-technical-detail-23d</link>
      <guid>https://dev.to/capjud95/web-accessibility-a-business-imperative-not-just-a-technical-detail-23d</guid>
      <description>&lt;p&gt;Web Accessibility: A business imperative, not just a technical detail&lt;/p&gt;

&lt;p&gt;Accessibility isn’t a nice-to-have. It’s a strategic driver of performance, reputation, and impact.&lt;/p&gt;

&lt;p&gt;Yet too many websites still exclude millions of users, people with disabilities, older adults, and those with limited devices or slow connections. &lt;/p&gt;

&lt;p&gt;Every exclusion comes at a cost: lost SEO, weakened brand trust, missed opportunities.&lt;/p&gt;

&lt;p&gt;An accessible site works for everyone. It’s intuitive, inclusive, and future-ready.&lt;/p&gt;

&lt;p&gt;More than just compliance, it’s a bold statement: your company values equity, innovation, and digital excellence.&lt;/p&gt;

&lt;p&gt;Let’s stop treating accessibility as a checkbox and start seeing it as a competitive edge.&lt;/p&gt;

</description>
      <category>website</category>
      <category>sitereliabilityengineering</category>
      <category>webdev</category>
      <category>development</category>
    </item>
    <item>
      <title>ChatGPT 5: Revolution or Threat for Web Developers ?</title>
      <dc:creator>Capin Judicael Akpado </dc:creator>
      <pubDate>Sun, 10 Aug 2025 13:18:51 +0000</pubDate>
      <link>https://dev.to/capjud95/chatgpt-5-revolution-or-threat-for-web-developers--p3</link>
      <guid>https://dev.to/capjud95/chatgpt-5-revolution-or-threat-for-web-developers--p3</guid>
      <description>&lt;p&gt;The release of ChatGPT 5 marks a major leap in web development automation. Code generation, debugging, wireframing, AI seems to do it all. But behind the hype lie serious challenges for developers.&lt;/p&gt;

&lt;p&gt;The first: staying relevant. Technical skills alone aren’t enough anymore. Developers must now master the synergy between human creativity and AI efficiency, sharpen their product thinking, and design experiences that stand out.&lt;/p&gt;

&lt;p&gt;Then comes the pressure on jobs. Repetitive tasks are being automated, pushing developers to shift toward more creative, strategic roles.&lt;/p&gt;

&lt;p&gt;ChatGPT 5 isn’t a rival, it’s a catalyst. It’s reshaping our craft, forcing us to evolve, learn faster, and think bigger. The future of the web is being built with AI but never without us.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>ai</category>
      <category>chatgpt</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Thinking SEO from the Mockup Stage: An Underestimated Power Move</title>
      <dc:creator>Capin Judicael Akpado </dc:creator>
      <pubDate>Fri, 01 Aug 2025 13:04:00 +0000</pubDate>
      <link>https://dev.to/capjud95/thinking-seo-from-the-mockup-stage-an-underestimated-power-move-6cg</link>
      <guid>https://dev.to/capjud95/thinking-seo-from-the-mockup-stage-an-underestimated-power-move-6cg</guid>
      <description>&lt;p&gt;Designing a website isn’t just about esthetics, it’s a strategic act. Incorporation SEO at the mockup phase unlocks powerful advantages that many overlook. &lt;/p&gt;

&lt;p&gt;When layout, hierarchy, and content zones are mapped with search visibility in mind, the result is a site that’s both beautiful and discoverable.&lt;/p&gt;

&lt;p&gt;Starting early means crafting headings that signal intent, placing CTAs where crawlers, users linger, and building structures that load fast and rank higher. &lt;/p&gt;

&lt;p&gt;SEO-friendly mockups cut retrofitting costs and align designers, developers, and marketers from day one.&lt;/p&gt;

&lt;p&gt;Be proactive. A mockup that “thinks SEO” sets the tone for long-term growth, visibility, and user satisfaction.&lt;/p&gt;

</description>
      <category>design</category>
      <category>designsystem</category>
      <category>webdev</category>
      <category>website</category>
    </item>
    <item>
      <title>Application web : dématérialiser, c’est construire un cerveau digital</title>
      <dc:creator>Capin Judicael Akpado </dc:creator>
      <pubDate>Mon, 28 Jul 2025 13:45:14 +0000</pubDate>
      <link>https://dev.to/capjud95/application-web-dematerialiser-cest-construire-un-cerveau-digital-m7m</link>
      <guid>https://dev.to/capjud95/application-web-dematerialiser-cest-construire-un-cerveau-digital-m7m</guid>
      <description>&lt;p&gt;Dématérialiser un processus interne (exemple : validation de congés, suivi client, facturation) revient à modéliser la logique métier dans un outil fluide, centralisé et intelligent.&lt;/p&gt;

&lt;p&gt;Plutôt que d’imposer aux humains les caprices d’outils génériques, on conçoit une application qui pense comme votre entreprise :&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Avec vos priorités&lt;/li&gt;
&lt;li&gt;Votre vocabulaire&lt;/li&gt;
&lt;li&gt;Vos rituels d’équipe&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;🚀 Pourquoi c’est stratégique ?&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Gain de temps : moins de friction, plus de concentration sur l’essentiel
&lt;/li&gt;
&lt;li&gt;Clarté des rôles : chaque collaborateur sait où agir et comment suivre
&lt;/li&gt;
&lt;li&gt;Traçabilité &amp;amp; transparence : idéal pour les audits, les décisions rapides
&lt;/li&gt;
&lt;li&gt;Image interne forte : vos équipes sentent que l’outil est pensé pour elles.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>applicationweb</category>
      <category>webapp</category>
      <category>website</category>
      <category>startup</category>
    </item>
    <item>
      <title>ChezElle Intranet : Frontend Challenge Office Edition</title>
      <dc:creator>Capin Judicael Akpado </dc:creator>
      <pubDate>Sun, 27 Jul 2025 05:49:38 +0000</pubDate>
      <link>https://dev.to/capjud95/chezelle-intranet-frontend-challenge-office-edition-ckp</link>
      <guid>https://dev.to/capjud95/chezelle-intranet-frontend-challenge-office-edition-ckp</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for &lt;a href="https://dev.to/challenges/frontend/axero"&gt;Frontend Challenge: Office Edition sponsored by Axero, Holistic Webdev: Office Space&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;I built a dynamic and engaging intranet homepage using only HTML, CSS, and JavaScript. The interface includes a personalized welcome message that greets users based on the time of day and their name, stored locally for a consistent experience across visits. It also features a floating virtual assistant icon that opens a helpful panel with quick-access internal resources. This design provides a user-friendly, modern look while remaining lightweight and accessible without a backend. It contains again news sections, archives highlights and other thing.&lt;/p&gt;

&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy9xr5jlidakw3cen1anv.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy9xr5jlidakw3cen1anv.JPG" alt=" " width="800" height="408"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnr604yv433ls3o18t3i0.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnr604yv433ls3o18t3i0.JPG" alt=" " width="800" height="406"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9kbgvpmssdgx6tar06tz.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9kbgvpmssdgx6tar06tz.JPG" alt=" " width="800" height="406"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftuui02kbnfix4j2klhjc.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftuui02kbnfix4j2klhjc.JPG" alt=" " width="800" height="409"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwiyzddhyemlen1us4llm.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwiyzddhyemlen1us4llm.JPG" alt=" " width="799" height="423"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyx0isgwtdmpsjkdd4wuu.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyx0isgwtdmpsjkdd4wuu.JPG" alt=" " width="799" height="421"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyicqdqviwnh5q9p3quoo.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyicqdqviwnh5q9p3quoo.JPG" alt=" " width="800" height="424"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Link of deployment : &lt;a href="https://frabjous-twilight-eeed40.netlify.app/" rel="noopener noreferrer"&gt;https://frabjous-twilight-eeed40.netlify.app/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Github link with MIT License : &lt;a href="https://github.com/Judakp/FrontendChallenge-Axero.git" rel="noopener noreferrer"&gt;https://github.com/Judakp/FrontendChallenge-Axero.git&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Journey
&lt;/h2&gt;

&lt;p&gt;I started by designing a clean layout, prioritizing user engagement and usability. The first component I implemented was the dynamic welcome message, using JavaScript to greet users according to the current hour and storing their name via localStorage. This makes the experience feel personal and consistent.&lt;/p&gt;

&lt;p&gt;Next, I added a virtual assistant bubble that stays fixed at the bottom corner. When clicked, it reveals a compact panel with helpful internal links like accessing documents, contacting HR, or checking the schedule. I used smooth hover effects and light shadows to make the interface visually appealing and intuitive. I finally created news sections , archives highlights and other thing.&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>frontendchallenge</category>
      <category>css</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Centralized Data Is No Longer a Luxury, It’s a Performance Driver</title>
      <dc:creator>Capin Judicael Akpado </dc:creator>
      <pubDate>Thu, 24 Jul 2025 15:06:04 +0000</pubDate>
      <link>https://dev.to/capjud95/centralized-data-is-no-longer-a-luxury-its-a-performance-driver-57jb</link>
      <guid>https://dev.to/capjud95/centralized-data-is-no-longer-a-luxury-its-a-performance-driver-57jb</guid>
      <description>&lt;p&gt;Thanks to modern web development, data centralization is no longer abstract. It's sophisticated and actionable.&lt;/p&gt;

&lt;p&gt;A well-crafted dashboard, powered by robust APIs, can bring together CRM, e-commerce, analytics, and more, into one seamless, scalable interface.&lt;/p&gt;

&lt;p&gt;Say goodbye to the endless back-and-forth between Excel and Drive. The web offers real-time synchronization, accessible from any device.&lt;/p&gt;

&lt;p&gt;Centralization is also protection.&lt;/p&gt;

&lt;p&gt;Security-first web infrastructure reduces data leaks and strengthens compliance (GDPR, etc.).&lt;/p&gt;

&lt;p&gt;From a UX perspective, it spares teams the frustration of fragmented and inconsistent systems.&lt;/p&gt;

&lt;p&gt;What’s your take?&lt;/p&gt;

</description>
      <category>data</category>
      <category>datascience</category>
      <category>webdev</category>
      <category>database</category>
    </item>
    <item>
      <title>PayGenius HR : Payslip Generator, built with Google AI Studio</title>
      <dc:creator>Capin Judicael Akpado </dc:creator>
      <pubDate>Sun, 20 Jul 2025 03:40:36 +0000</pubDate>
      <link>https://dev.to/capjud95/paygenius-hr-payslip-generator-3l3g</link>
      <guid>https://dev.to/capjud95/paygenius-hr-payslip-generator-3l3g</guid>
      <description>&lt;p&gt;&lt;em&gt;This post is my submission for &lt;a href="https://dev.to/deved/build-apps-with-google-ai-studio"&gt;DEV Education Track: Build Apps with Google AI Studio&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;I create an HR web application that generates, processes, and manages all employee payslips within a company. This web application can generate specific payslip for Canada or USA models payslips.&lt;/p&gt;

&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyjdwcf2kf7s7rr1s9qzh.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyjdwcf2kf7s7rr1s9qzh.JPG" alt=" " width="799" height="407"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm79tct4iiw9kz48wjdgf.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm79tct4iiw9kz48wjdgf.JPG" alt=" " width="800" height="403"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm46mwnd98hkj2zwy0if4.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm46mwnd98hkj2zwy0if4.JPG" alt=" " width="800" height="404"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp7yagzw8somhhw80jn67.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp7yagzw8somhhw80jn67.JPG" alt=" " width="800" height="403"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy4st9k7obok2qgdrnv31.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy4st9k7obok2qgdrnv31.JPG" alt=" " width="800" height="403"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Deployment links :&lt;/strong&gt; &lt;a href="https://fabulous-dieffenbachia-627f92.netlify.app/" rel="noopener noreferrer"&gt;https://fabulous-dieffenbachia-627f92.netlify.app/&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  My Experience
&lt;/h2&gt;

&lt;p&gt;I ask Google AI Studio to create HR Payslip Generator. I specified this : " I would like the differences between Canadian and U.S. payroll rules to be included as optional features, so that users can choose and apply the appropriate rules based on their country. I want download payslip in PDF. Don’t use tailwind CSS for style. Use only, directly CSS language for style. Don’t use react for building. &lt;br&gt;
Objective :&lt;br&gt;
Enable the company to automatically create monthly payslips based on entered or imported data, generate them in PDF format, send them to employees, and maintain an archive/history.&lt;br&gt;
Here are the modules I want :&lt;br&gt;
• Employee management (personal data, contract, gross salary)&lt;br&gt;
• Absence, leave, and overtime tracking&lt;br&gt;
• Automatic payroll calculation (net salary including bonuses and deductions)&lt;br&gt;
• Payslip generation in PDF format&lt;br&gt;
• HR dashboard (payroll tracking, anomaly alerts)&lt;br&gt;
• Employee portal to access and download their own payslips&lt;br&gt;
• Secure access control based on user roles (employee, HR, admin)&lt;br&gt;
 ". Google AI Studio generates all files and folders and built the web application. I downloaded the ZIP file and opened it locally to install the necessary dependencies for deployment on Netlify. Then, I pushed everything to GitHub via the VS Code terminal and deployed the web application on Netlify.&lt;/p&gt;

</description>
      <category>deved</category>
      <category>learngoogleaistudio</category>
      <category>ai</category>
      <category>gemini</category>
    </item>
  </channel>
</rss>
