<?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: Chia Voltaire</title>
    <description>The latest articles on DEV Community by Chia Voltaire (@voltage).</description>
    <link>https://dev.to/voltage</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%2F4024492%2F51887adc-58c8-4ca3-85cf-e1bbcc30210e.jpg</url>
      <title>DEV Community: Chia Voltaire</title>
      <link>https://dev.to/voltage</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/voltage"/>
    <language>en</language>
    <item>
      <title>LewaHub: Building a School Discovery Platform for Cameroon</title>
      <dc:creator>Chia Voltaire</dc:creator>
      <pubDate>Fri, 14 Aug 2026 16:45:32 +0000</pubDate>
      <link>https://dev.to/voltage/lewahub-building-a-school-discovery-platform-for-cameroon-1o24</link>
      <guid>https://dev.to/voltage/lewahub-building-a-school-discovery-platform-for-cameroon-1o24</guid>
      <description>&lt;h2&gt;
  
  
  What We Built
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;LewaHub&lt;/strong&gt; is a platform designed to make discovering and comparing schools in Cameroon easier, faster, and more reliable.&lt;/p&gt;

&lt;p&gt;Education is a fundamental part of society, but finding trustworthy information about schools in Cameroon can still be difficult. Many parents and learners rely heavily on word of mouth from friends, family members, school staff, or advertisements encountered while moving from place to place.&lt;/p&gt;

&lt;p&gt;While these methods can be useful, they can also make it difficult to access &lt;strong&gt;consistent, credible, and comprehensive information&lt;/strong&gt; about available schools.&lt;/p&gt;

&lt;p&gt;LewaHub was built to help close that gap between &lt;strong&gt;choosing the next step in an academic journey and having the information needed to make that decision confidently&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Our goal is simple:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Make reliable school information accessible whenever and wherever parents and learners need it.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Instead of visiting multiple schools or relying entirely on recommendations, LewaHub brings relevant information together in one platform.&lt;/p&gt;

&lt;p&gt;Users can discover schools across Cameroon and explore information such as:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;School location and contact information&lt;/li&gt;
&lt;li&gt;Administrative structure&lt;/li&gt;
&lt;li&gt;Curriculum and programs offered&lt;/li&gt;
&lt;li&gt;Available facilities&lt;/li&gt;
&lt;li&gt;School fees&lt;/li&gt;
&lt;li&gt;Academic sections and tracks&lt;/li&gt;
&lt;li&gt;Reviews and evaluations&lt;/li&gt;
&lt;li&gt;Other information useful when comparing schools&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;What started as an unfinished idea is now a real product with a &lt;strong&gt;polished user experience, functional backend, search, verification workflows, and review functionality&lt;/strong&gt; brought together into one system.&lt;/p&gt;




&lt;h2&gt;
  
  
  🚀 The Comeback Story
&lt;/h2&gt;

&lt;p&gt;LewaHub did not start as a finished product.&lt;/p&gt;

&lt;p&gt;It began as a prototype built around a real problem. The idea was strong, but the product needed more structure, a cleaner interface, better user experience, and reliable end-to-end functionality before it could genuinely serve its intended users.&lt;/p&gt;

&lt;p&gt;For this internship project, we came back with a different mindset.&lt;/p&gt;

&lt;p&gt;We decided to treat LewaHub &lt;strong&gt;as a real product rather than simply a demo&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;That meant focusing on the things that matter when building something people can actually use:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Creating a consistent and unified experience across the platform&lt;/li&gt;
&lt;li&gt;Improving the UI and overall user experience&lt;/li&gt;
&lt;li&gt;Making the product feel trustworthy and accessible&lt;/li&gt;
&lt;li&gt;Building reliable backend flows for search and verification&lt;/li&gt;
&lt;li&gt;Bringing the different features together into a coherent user journey&lt;/li&gt;
&lt;li&gt;Moving from a prototype toward a functional product&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The biggest difference is that LewaHub is no longer just an idea or prototype.&lt;/p&gt;

&lt;p&gt;It now has a &lt;strong&gt;clear user journey, real functionality, structured data, and a foundation that can continue evolving into a larger platform for education discovery in Cameroon.&lt;/strong&gt;&lt;/p&gt;




&lt;h1&gt;
  
  
  🛠️ Tech Stack
&lt;/h1&gt;

&lt;h3&gt;
  
  
  Frontend
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;React 18&lt;/strong&gt; : Building the interactive user interface&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;TypeScript&lt;/strong&gt; : Safer and more maintainable frontend development&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Vite&lt;/strong&gt; : Fast development and production builds&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Tailwind CSS&lt;/strong&gt; : Responsive and consistent UI styling&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;React Router&lt;/strong&gt; : Client-side navigation&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Leaflet &amp;amp; React Leaflet&lt;/strong&gt; : Interactive school maps&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Framer Motion&lt;/strong&gt; : Smooth UI animations&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;i18next / React-i18next&lt;/strong&gt; : Internationalization&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Lucide React&lt;/strong&gt; : Consistent interface icons&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Backend
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Node.js&lt;/strong&gt; : Backend runtime&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Express.js&lt;/strong&gt; : REST API and server architecture&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;JavaScript (ES Modules)&lt;/strong&gt; : Backend application logic&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Prisma ORM&lt;/strong&gt; : Database access and management&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Zod&lt;/strong&gt; : Data and request validation&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Redis&lt;/strong&gt; : Caching and fast data access&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Database &amp;amp; Geolocation
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;PostgreSQL&lt;/strong&gt; : Core relational database&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;PostGIS&lt;/strong&gt; : Geographic and spatial data&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Haversine Distance Calculation&lt;/strong&gt; : Distance-based school discovery&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;OpenStreetMap&lt;/strong&gt; : Geographic and mapping data&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  AI
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;OpenAI-compatible API&lt;/strong&gt; : AI-powered functionality&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Natural-Language Search&lt;/strong&gt; : Helping users find schools using conversational queries&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Security &amp;amp; Infrastructure
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Helmet&lt;/strong&gt; : HTTP security headers&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;CORS&lt;/strong&gt; : Cross-origin request management&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Express Rate Limit&lt;/strong&gt; : API abuse protection&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;dotenv&lt;/strong&gt; : Environment configuration&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Git &amp;amp; GitHub&lt;/strong&gt; : Version control and collaboration&lt;/li&gt;
&lt;/ul&gt;




&lt;h1&gt;
  
  
  🎥 Demo
&lt;/h1&gt;

&lt;h3&gt;
  
  
  Live Website
&lt;/h3&gt;


&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
      &lt;div class="c-embed__body flex items-center justify-between"&gt;
        &lt;a href="https://lewa-hub.vercel.app/" rel="noopener noreferrer" class="c-link fw-bold flex items-center"&gt;
          &lt;span class="mr-2"&gt;lewa-hub.vercel.app&lt;/span&gt;
          

        &lt;/a&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


&lt;h3&gt;
  
  
  GitHub Repository
&lt;/h3&gt;

&lt;p&gt;[&lt;a href="https://github.com/ChiaVoltaire07/LewaHub" rel="noopener noreferrer"&gt;https://github.com/ChiaVoltaire07/LewaHub&lt;/a&gt;]&lt;/p&gt;

&lt;h3&gt;
  
  
  Video Walkthrough
&lt;/h3&gt;

&lt;p&gt;[Add your video URL here]&lt;/p&gt;

&lt;h1&gt;
  
  
  👥 Project Members
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a class="mentioned-user" href="https://dev.to/mbonyiam"&gt;@mbonyiam&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;@kamerwizard99&lt;/li&gt;
&lt;li&gt;&lt;a class="mentioned-user" href="https://dev.to/michael_abel"&gt;@michael_abel&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="mentioned-user" href="https://dev.to/voltage"&gt;@voltage&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="mentioned-user" href="https://dev.to/ell-pastore"&gt;@ell-pastore&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="mentioned-user" href="https://dev.to/solicien_ndagoh"&gt;@solicien_ndagoh&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="mentioned-user" href="https://dev.to/alan532"&gt;@alan532&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="mentioned-user" href="https://dev.to/tdreamer"&gt;@tdreamer&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>opensource</category>
      <category>webdev</category>
      <category>github</category>
    </item>
  </channel>
</rss>
