<?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: hehe</title>
    <description>The latest articles on DEV Community by hehe (@aashita_singh_55c32bb92b5).</description>
    <link>https://dev.to/aashita_singh_55c32bb92b5</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%2F4161673%2F9a99f132-4895-4f99-b1f0-595e5cf6a000.png</url>
      <title>DEV Community: hehe</title>
      <link>https://dev.to/aashita_singh_55c32bb92b5</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/aashita_singh_55c32bb92b5"/>
    <language>en</language>
    <item>
      <title>NightRoute - Build for a Friend</title>
      <dc:creator>hehe</dc:creator>
      <pubDate>Mon, 05 Oct 2026 06:01:02 +0000</pubDate>
      <link>https://dev.to/aashita_singh_55c32bb92b5/nightroute-build-for-a-friend-55op</link>
      <guid>https://dev.to/aashita_singh_55c32bb92b5/nightroute-build-for-a-friend-55op</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/hacktoberfest-weekend-2026-10-01"&gt;Hacktoberfest Weekend Challenge: Build for a Friend&lt;/a&gt;&lt;/em&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4gxkzuph1zdwwgz9extd.png" 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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4gxkzuph1zdwwgz9extd.png" alt=" " width="800" height="460"&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fh68x2e7jyx3566d5v7dn.png" 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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fh68x2e7jyx3566d5v7dn.png" alt=" " width="800" height="445"&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fvn4el7d6cj28l3htt400.png" 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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fvn4el7d6cj28l3htt400.png" alt=" " width="800" height="443"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  NightRoute: A Route Planner That Cares About How You Get Home
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;Hacktoberfest Weekend Challenge: Build for a Friend&lt;/strong&gt;&lt;br&gt;
A friend sometimes has to travel alone in the evening.&lt;br&gt;
That got us thinking about a pretty simple question:&lt;br&gt;
&lt;strong&gt;When you're going home at night, do you always want the fastest route?&lt;/strong&gt;&lt;br&gt;
Maybe not.&lt;br&gt;
Sometimes you might be completely fine taking an extra 5 minutes if the other route has more shops, public places, transport, pharmacies, or other things around it.&lt;br&gt;
Most navigation apps are really good at answering:&lt;br&gt;
&lt;strong&gt;What's the fastest way to get there?&lt;/strong&gt;&lt;br&gt;
We wanted to explore a slightly different question:&lt;br&gt;
&lt;strong&gt;What do the different routes actually look like?&lt;/strong&gt;&lt;br&gt;
So we built NightRoute.&lt;/p&gt;

&lt;h2&gt;
  
  
  What does NightRoute do?
&lt;/h2&gt;

&lt;p&gt;You enter a starting point and destination.&lt;br&gt;
NightRoute gets multiple route options and looks at what's around each route.&lt;br&gt;
Things like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Shops and businesses&lt;/li&gt;
&lt;li&gt;Restaurants and cafés&lt;/li&gt;
&lt;li&gt;Bus stops and public transport&lt;/li&gt;
&lt;li&gt;Pharmacies&lt;/li&gt;
&lt;li&gt;Hospitals&lt;/li&gt;
&lt;li&gt;Police stations&lt;/li&gt;
&lt;li&gt;Opening hours, where available&lt;/li&gt;
&lt;li&gt;Route characteristics&lt;/li&gt;
&lt;li&gt;Available traffic and activity indicators
It then combines these signals into a Route Context Score.
And this part was really important to us:
&lt;strong&gt;NightRoute doesn't say that a route is safe.&lt;/strong&gt;
The available data simply isn't enough to make a claim like that.
Instead, it gives you more context about the routes so you can decide for yourself.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  How to try it
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Live Demo:&lt;/strong&gt; &lt;a href="https://architect-cholesterol-dis-beauty.trycloudflare.com/" rel="noopener noreferrer"&gt;https://architect-cholesterol-dis-beauty.trycloudflare.com/&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;GitHub:&lt;/strong&gt; &lt;a href="https://github.com/aashitas987-spec/NightRoute---Build-for-a-Friend" rel="noopener noreferrer"&gt;https://github.com/aashitas987-spec/NightRoute---Build-for-a-Friend&lt;/a&gt;&lt;/p&gt;

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

&lt;h3&gt;
  
  
  1. Get the routes
&lt;/h3&gt;

&lt;p&gt;We use the Google Routes API to get route alternatives and their geometry.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Look around the routes
&lt;/h3&gt;

&lt;p&gt;We sample the route geometry and use OpenStreetMap and Overpass to find things around each route.&lt;br&gt;
For example, if one route passes through an area with several shops, restaurants and bus stops while another has very little mapped activity, NightRoute can capture that difference.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Calculate the score
&lt;/h3&gt;

&lt;p&gt;The score is not generated by AI.&lt;br&gt;
It's calculated by the application using weighted signals:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Signal&lt;/th&gt;
&lt;th&gt;Weight&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Traffic / travel conditions&lt;/td&gt;
&lt;td&gt;25&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Activity&lt;/td&gt;
&lt;td&gt;30&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Safety services&lt;/td&gt;
&lt;td&gt;20&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Bus stops / public transport&lt;/td&gt;
&lt;td&gt;10&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Directness&lt;/td&gt;
&lt;td&gt;15&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Total&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;100&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;So if the same data goes into the system twice, the result is reproducible.&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  4. AI explains the result
&lt;/h3&gt;

&lt;p&gt;This was one of the most interesting parts of the project for us.&lt;br&gt;
We use Gemma 3 4B with Ollama to explain the result.&lt;br&gt;
The model gets the structured information from the scoring system and turns it into something easier to understand.&lt;br&gt;
The architecture is basically:&lt;br&gt;
&lt;strong&gt;Data → Scoring → Explanation&lt;/strong&gt;&lt;br&gt;
The AI isn't responsible for inventing the score or deciding whether a route is safe.&lt;br&gt;
We wanted it to explain the information rather than make the decision.&lt;/p&gt;

&lt;h2&gt;
  
  
  A Simple Example
&lt;/h2&gt;

&lt;p&gt;Imagine NightRoute finds two routes.&lt;/p&gt;

&lt;h3&gt;
  
  
  Route A
&lt;/h3&gt;

&lt;p&gt;25 minutes&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Shorter&lt;/li&gt;
&lt;li&gt;More direct&lt;/li&gt;
&lt;li&gt;Fewer businesses along parts of the route&lt;/li&gt;
&lt;li&gt;Less public transport nearby&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Route B
&lt;/h3&gt;

&lt;p&gt;30 minutes&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Slightly longer&lt;/li&gt;
&lt;li&gt;More listed businesses&lt;/li&gt;
&lt;li&gt;More public transport&lt;/li&gt;
&lt;li&gt;More nearby services
A traditional navigation system might naturally favour the faster route.
NightRoute shows the trade-off.
Maybe you take Route A because you don't care about the extra context.
Maybe you take Route B because you're travelling alone late at night and would rather have more activity around you.
That's your choice.
NightRoute just tries to make that choice a little more informed.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Why We Wanted to Build This
&lt;/h2&gt;

&lt;p&gt;This project came from a very normal situation.&lt;br&gt;
Someone you care about texts:&lt;br&gt;
&lt;strong&gt;I'm leaving now.&lt;/strong&gt;&lt;br&gt;
And your brain immediately goes:&lt;br&gt;
&lt;strong&gt;Okay... which route are you taking?&lt;/strong&gt;&lt;br&gt;
We didn't want to build another emergency button or another system that constantly tracks someone.&lt;br&gt;
We wanted something much simpler.&lt;br&gt;
&lt;strong&gt;Just give us more information before we leave.&lt;/strong&gt;&lt;br&gt;
That's basically where NightRoute started.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Part We Were Careful About
&lt;/h2&gt;

&lt;p&gt;While building this, we kept running into the same question:&lt;br&gt;
&lt;strong&gt;Can we actually call a route safe?&lt;/strong&gt;&lt;br&gt;
The answer is no.&lt;br&gt;
If OpenStreetMap has a restaurant listed, that doesn't mean it's definitely open.&lt;br&gt;
If there are 10 shops nearby, that doesn't mean there will definitely be people around.&lt;br&gt;
A nearby police station doesn't automatically make a road safe.&lt;br&gt;
And a score of 85/100 definitely doesn't mean 85% safe.&lt;br&gt;
So we decided to call it a Route Context Score instead.&lt;br&gt;
The score is basically saying:&lt;br&gt;
&lt;strong&gt;Here are some things we found around this route.&lt;/strong&gt;&lt;br&gt;
Not that nothing bad will happen there.&lt;br&gt;
That distinction matters a lot for a project like this.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Use an Open Model?
&lt;/h2&gt;

&lt;p&gt;We also wanted to experiment with using an open and local model instead of sending everything to a closed AI API.&lt;br&gt;
That's where Gemma and Ollama came in.&lt;br&gt;
During development, the explanation layer can run locally.&lt;br&gt;
We liked that architecture because the application doesn't need AI to do everything.&lt;br&gt;
The maps provide the data.&lt;br&gt;
The scoring system does the calculations.&lt;br&gt;
The LLM explains the result.&lt;br&gt;
Each part has a clear job.&lt;/p&gt;

&lt;h2&gt;
  
  
  Tech Stack
&lt;/h2&gt;

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

&lt;ul&gt;
&lt;li&gt;React&lt;/li&gt;
&lt;li&gt;TypeScript&lt;/li&gt;
&lt;li&gt;Vite&lt;/li&gt;
&lt;li&gt;Tailwind CSS&lt;/li&gt;
&lt;li&gt;React Leaflet&lt;/li&gt;
&lt;/ul&gt;

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

&lt;ul&gt;
&lt;li&gt;Python&lt;/li&gt;
&lt;li&gt;FastAPI&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Maps and Data
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Google Routes API&lt;/li&gt;
&lt;li&gt;OpenStreetMap&lt;/li&gt;
&lt;li&gt;Overpass API&lt;/li&gt;
&lt;li&gt;Nominatim&lt;/li&gt;
&lt;/ul&gt;

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

&lt;ul&gt;
&lt;li&gt;Gemma 3 4B&lt;/li&gt;
&lt;li&gt;Ollama&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Other
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Caching&lt;/li&gt;
&lt;li&gt;Rate limiting&lt;/li&gt;
&lt;li&gt;Route geometry processing&lt;/li&gt;
&lt;li&gt;Deterministic scoring&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  What We Learned
&lt;/h2&gt;

&lt;p&gt;Probably the biggest thing we learned from this project is that AI doesn't always need to be the thing making the decision.&lt;br&gt;
When we started thinking about the project, it would have been very easy to say:&lt;br&gt;
&lt;strong&gt;Let's use AI to predict whether a route is dangerous.&lt;/strong&gt;&lt;br&gt;
But that immediately raises some questions.&lt;br&gt;
Based on what?&lt;br&gt;
How do we verify it?&lt;br&gt;
What happens when the model is wrong?&lt;br&gt;
Instead, we ended up with something we liked more:&lt;br&gt;
&lt;strong&gt;Give the system real data, calculate something reproducible, and let AI explain it.&lt;/strong&gt;&lt;br&gt;
That made us think differently about AI projects in general.&lt;br&gt;
Sometimes the interesting part isn't making the model do more.&lt;br&gt;
It's figuring out where the model actually belongs.&lt;/p&gt;

&lt;h2&gt;
  
  
  What's Next?
&lt;/h2&gt;

&lt;p&gt;This is still a hackathon MVP, so there is a lot we'd like to improve.&lt;br&gt;
Some things on our list:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Better route segmentation&lt;/li&gt;
&lt;li&gt;Better activity indicators&lt;/li&gt;
&lt;li&gt;More detailed opening-hour handling&lt;/li&gt;
&lt;li&gt;Better confidence estimates when map data is limited&lt;/li&gt;
&lt;li&gt;More useful route explanations&lt;/li&gt;
&lt;li&gt;More open geographic data&lt;/li&gt;
&lt;li&gt;Better evaluation of the scoring system
And probably the biggest one:
&lt;strong&gt;Figure out which signals actually make NightRoute more useful without giving people a false sense of security.&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Team
&lt;/h2&gt;

&lt;p&gt;NightRoute was built by:&lt;/p&gt;

&lt;h3&gt;
  
  
  AASHITA SINGH
&lt;/h3&gt;

&lt;p&gt;&lt;a class="mentioned-user" href="https://dev.to/aashita_singh_55c32bb92b5"&gt;@aashita_singh_55c32bb92b5&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  BHOOMI VAITY
&lt;/h3&gt;

&lt;p&gt;&lt;a class="mentioned-user" href="https://dev.to/xbhoomi-ar"&gt;@xbhoomi-ar&lt;/a&gt; &lt;/p&gt;

&lt;h3&gt;
  
  
  PURVA SHINDE
&lt;/h3&gt;

&lt;p&gt;&lt;a class="mentioned-user" href="https://dev.to/igot_this"&gt;@igot_this&lt;/a&gt; &lt;/p&gt;

&lt;h2&gt;
  
  
  One Last Thing
&lt;/h2&gt;

&lt;p&gt;NightRoute started with a pretty simple thought.&lt;br&gt;
When someone you care about says they're heading home, sometimes you don't need another alarm.&lt;br&gt;
You just want to know a little more about the road they're taking.&lt;br&gt;
That's what we wanted NightRoute to do.&lt;br&gt;
Because getting home isn't always just about getting there as fast as possible.&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>weekendchallenge</category>
      <category>hf26challenge</category>
    </item>
  </channel>
</rss>
