<?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: Riyanshika</title>
    <description>The latest articles on DEV Community by Riyanshika (@riyanshika_6bd35779c6cf4d).</description>
    <link>https://dev.to/riyanshika_6bd35779c6cf4d</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%2F4036590%2F6a96dc22-e259-4de8-bd58-92acb4659604.png</url>
      <title>DEV Community: Riyanshika</title>
      <link>https://dev.to/riyanshika_6bd35779c6cf4d</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/riyanshika_6bd35779c6cf4d"/>
    <language>en</language>
    <item>
      <title>Planning an event sounds fun until you're juggling budgets, and a dozen scattered notes.</title>
      <dc:creator>Riyanshika</dc:creator>
      <pubDate>Mon, 26 Oct 2026 06:47:58 +0000</pubDate>
      <link>https://dev.to/riyanshika_6bd35779c6cf4d/planning-an-event-sounds-fun-until-youre-juggling-budgets-and-a-dozen-scattered-notes-1ok</link>
      <guid>https://dev.to/riyanshika_6bd35779c6cf4d/planning-an-event-sounds-fun-until-youre-juggling-budgets-and-a-dozen-scattered-notes-1ok</guid>
      <description>&lt;h1&gt;
  
  
  EventPilot AI 🦥 — Less Planning Chaos, More Celebrating | Hacktoberfest Week 3
&lt;/h1&gt;

&lt;p&gt;What if we could make that process a little less exhausting?&lt;/p&gt;

&lt;p&gt;That's the idea behind &lt;strong&gt;EventPilot AI&lt;/strong&gt; — an AI-assisted event-planning companion built to turn scattered ideas into a more organised starting point, so you can spend less time managing details and more time enjoying the occasion.&lt;/p&gt;

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

&lt;p&gt;EventPilot AI is designed for students and small-to-medium event organisers who want to plan something memorable without getting overwhelmed by the logistics.&lt;/p&gt;

&lt;p&gt;It focuses on three everyday planning problems:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;📝 &lt;strong&gt;Planning:&lt;/strong&gt; Organise an event idea, guest count, budget, and preferred atmosphere into a structured starting point.&lt;/li&gt;
&lt;li&gt;💸 &lt;strong&gt;Budgeting:&lt;/strong&gt; Calculate a 7% contingency reserve and estimate the budget per guest instead of doing repetitive calculations manually.&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Staying organised:&lt;/strong&gt; Keep planning considerations such as timelines, checklists, vendor details, and next steps together.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The philosophy is simple: &lt;strong&gt;less planning chaos, more room for the celebration.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Rather than making organisers start with a blank page, the goal is to help them get moving with a plan they can review, customise, and improve.&lt;/p&gt;

&lt;h2&gt;
  
  
  Demo: &lt;a href="https://eventpilot-8z66.onrender.com/" rel="noopener noreferrer"&gt;https://eventpilot-8z66.onrender.com/&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;The current project includes an interactive planner preview that demonstrates the budgeting workflow.&lt;/p&gt;

&lt;p&gt;A public deployment or video walkthrough has not been verified for this submission, so I don't want to link an unrelated demo or misrepresent the preview as a live AI-powered application.&lt;/p&gt;

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

&lt;p&gt;💻 &lt;strong&gt;GitHub repository:&lt;/strong&gt; &lt;a href="https://github.com/riyanshika7/EVENTPILOT" rel="noopener noreferrer"&gt;https://github.com/riyanshika7/EVENTPILOT&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The project is built with a lightweight web stack, with an emphasis on maintainability, practical calculations, and a clear separation between the interface and backend.&lt;/p&gt;

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

&lt;p&gt;The current project architecture uses:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Python and FastAPI&lt;/strong&gt; for backend routes and application logic.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;HTML, CSS, and JavaScript&lt;/strong&gt; for the frontend.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;SQLite&lt;/strong&gt; for data storage.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Pytest&lt;/strong&gt; for automated testing.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Gemma integration&lt;/strong&gt; as the intended open-weight AI component, with live endpoint connectivity still requiring verification.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;One important design choice is to keep calculations deterministic wherever possible. For example, the contingency reserve and estimated cost per guest should be calculated by application code rather than left to an AI model to guess.&lt;/p&gt;

&lt;p&gt;AI can help with planning suggestions, but arithmetic should remain arithmetic.&lt;/p&gt;

&lt;p&gt;I'm also working on the reliability details that matter beyond a polished interface: configuration, input validation, useful error messages, accessibility, and deployment readiness.&lt;/p&gt;

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

&lt;p&gt;Open innovation makes it possible to experiment, learn, and build useful tools without treating AI as a closed black box.&lt;/p&gt;

&lt;p&gt;Open-weight models such as Gemma can give developers more flexibility to explore model behaviour, adapt integrations, and choose deployment approaches that fit their constraints. Open-source frameworks also make it easier for other developers to inspect the surrounding application and contribute improvements.&lt;/p&gt;

&lt;p&gt;For a student developer, that freedom matters. It creates room to learn by building, understand the moving parts, and improve a project incrementally.&lt;/p&gt;

&lt;p&gt;The important distinction is that using an open model is only part of the story: the integration must actually work, and the application around it must be reliable enough to be useful.&lt;/p&gt;

&lt;p&gt;That's the direction I'm working toward with EventPilot AI.&lt;/p&gt;

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

&lt;p&gt;The idea is to eliminate some of the repetitive work that makes event planning tiring.&lt;/p&gt;

&lt;p&gt;For example, given a budget of ₹8,000 and 30 guests, the planner can calculate:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Contingency reserve (7%):&lt;/strong&gt; ₹560&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Remaining planned-cost budget:&lt;/strong&gt; ₹7,440&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Approximate budget per guest:&lt;/strong&gt; ₹267&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That means fewer manual calculations before you even start refining the event.&lt;/p&gt;

&lt;p&gt;The bigger payoff would come from helping organisers move from an idea to a practical checklist without having to assemble everything from scratch. I haven't measured real-world time savings yet, so I'd rather test the workflow with an actual organiser than invent a productivity statistic.&lt;/p&gt;

&lt;p&gt;Slow and steady — one useful improvement at a time. 🌱&lt;/p&gt;




&lt;p&gt;Building EventPilot AI has reminded me that useful software isn't always about adding more features. Sometimes it's about removing friction, making a confusing process clearer, and giving people a little more breathing room.&lt;/p&gt;

&lt;p&gt;The vision is simple: &lt;strong&gt;your people, your moment, and a plan that gets you there.&lt;/strong&gt; ♡&lt;/p&gt;

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

&lt;p&gt;EventPilot AI is intended to make event planning less stressful by helping people organise their plans and budgets.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Categories I'm considering:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Best Use of Gemma ($200)&lt;/strong&gt; — for the open-weight AI integration, provided the Gemma model is successfully connected and meaningfully powers the project.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best Use of Render ($200)&lt;/strong&gt; — if EventPilot AI is deployed on Render and the deployed application demonstrates the project working.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best Use of Sentry Agent Tracing ($100)&lt;/strong&gt; — if Sentry Agent Tracing is configured and meaningfully used to trace the AI workflow.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I'm aiming to make open-source AI a meaningful part of EventPilot AI, not just an add-on. I'll include only the categories supported by the final implementation.&lt;/p&gt;

&lt;p&gt;The project is also eligible for consideration for the &lt;strong&gt;overall winner prize&lt;/strong&gt; if it meets the challenge requirements.&lt;/p&gt;

&lt;h1&gt;
  
  
  devchallenge #hf26challenge #Hacktoberfest #OpenSource #AI #FastAPI #Gemma
&lt;/h1&gt;

</description>
      <category>ai</category>
      <category>buildinpublic</category>
      <category>hacktoberfest</category>
      <category>productivity</category>
    </item>
    <item>
      <title>🌿 TrailMates: Less Scrolling, More Wandering | Open-Weight AI for Touching Grass</title>
      <dc:creator>Riyanshika</dc:creator>
      <pubDate>Sat, 10 Oct 2026 21:40:22 +0000</pubDate>
      <link>https://dev.to/riyanshika_6bd35779c6cf4d/trailmates-less-scrolling-more-wandering-open-weight-ai-for-touching-grass-2f3g</link>
      <guid>https://dev.to/riyanshika_6bd35779c6cf4d/trailmates-less-scrolling-more-wandering-open-weight-ai-for-touching-grass-2f3g</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/hacktoberfest-week1-2026-10-05"&gt;Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  🌿 TrailMates — Less Scrolling, More Wandering
&lt;/h1&gt;

&lt;p&gt;What if AI didn't try to keep you on your screen, but helped you step away from it?&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;TrailMates&lt;/strong&gt; is an open-source outdoor adventure companion that turns spare time into small, screen-free adventures.&lt;/p&gt;

&lt;p&gt;Ever wanted to go outside but had absolutely no idea what to do? TrailMates helps you get started.&lt;/p&gt;

&lt;p&gt;Choose your available time, energy level, preferred setting, and interests. The app generates a personalized outdoor plan with practical activity steps, items to bring, safety reminders, a phone-free challenge, and a reflection question for afterward.&lt;/p&gt;

&lt;p&gt;Maybe you have 30 minutes and low energy. Maybe you want to explore a nearby park, notice birds, photograph tiny details, or simply take a mindful walk.&lt;/p&gt;

&lt;p&gt;You don't need a complicated itinerary. Sometimes, you just need a little nudge.&lt;/p&gt;

&lt;p&gt;I designed TrailMates to feel like a playful nature journal, with earthy colors, hand-drawn doodles, and a friendly interface that makes going outside feel inviting.&lt;/p&gt;

&lt;p&gt;The real goal? Make the app feel useful enough that you can put your phone away and enjoy the adventure. 🌱&lt;/p&gt;

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

&lt;p&gt;🌿 &lt;strong&gt;Live app:&lt;/strong&gt; &lt;a href="https://trailmates-89sz.onrender.com/" rel="noopener noreferrer"&gt;https://trailmates-89sz.onrender.com/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;🔍 &lt;strong&gt;Health check:&lt;/strong&gt; &lt;a href="https://trailmates-89sz.onrender.com/health" rel="noopener noreferrer"&gt;https://trailmates-89sz.onrender.com/health&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;📊 &lt;strong&gt;AI status:&lt;/strong&gt; &lt;a href="https://trailmates-89sz.onrender.com/api/status" rel="noopener noreferrer"&gt;https://trailmates-89sz.onrender.com/api/status&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The application is hosted on Render, with a Python FastAPI backend.&lt;/p&gt;

&lt;p&gt;The AI experience depends on the configured model and inference provider. If inference is unavailable, the app can fall back to a clearly labeled rule-based demo plan rather than pretending that a model generated it.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Note: The first request may take longer if the hosted service has been idle.&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;💻 &lt;strong&gt;GitHub repository:&lt;/strong&gt; &lt;a href="https://github.com/riyanshika7/TRAILMATES" rel="noopener noreferrer"&gt;https://github.com/riyanshika7/TRAILMATES&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The project uses a lightweight architecture built around HTML, CSS, JavaScript, and Python FastAPI.&lt;/p&gt;

&lt;p&gt;Some key files:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://github.com/riyanshika7/TRAILMATES/blob/main/app/services/hf_service.py" rel="noopener noreferrer"&gt;&lt;code&gt;app/services/hf_service.py&lt;/code&gt;&lt;/a&gt; — model inference and AI response handling.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/riyanshika7/TRAILMATES/blob/main/static/index.html" rel="noopener noreferrer"&gt;&lt;code&gt;static/index.html&lt;/code&gt;&lt;/a&gt; — the landing page and adventure-planning interface.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/riyanshika7/TRAILMATES/blob/main/static/app.js" rel="noopener noreferrer"&gt;&lt;code&gt;static/app.js&lt;/code&gt;&lt;/a&gt; — frontend interactions and API communication.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/riyanshika7/TRAILMATES/blob/main/render.yaml" rel="noopener noreferrer"&gt;&lt;code&gt;render.yaml&lt;/code&gt;&lt;/a&gt; — Render deployment configuration.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/riyanshika7/TRAILMATES/blob/main/tests/test_api.py" rel="noopener noreferrer"&gt;&lt;code&gt;tests/test_api.py&lt;/code&gt;&lt;/a&gt; — backend API tests.&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;Open-weight model — Hugging Face Inference Providers&lt;/p&gt;

&lt;p&gt;The core AI is Qwen/Qwen2.5-7B-Instruct, one of the models recommended on the HF Inference Providers documentation. It is called via the official OpenAI-compatible router endpoint:&lt;/p&gt;

&lt;p&gt;POST &lt;a href="https://router.huggingface.co/v1/chat/completions" rel="noopener noreferrer"&gt;https://router.huggingface.co/v1/chat/completions&lt;/a&gt;&lt;br&gt;
Authorization: Bearer $HF_TOKEN&lt;br&gt;
The system prompt instructs the model to return a strict JSON schema (title, steps, items_to_bring, safety_tips, phone_free_challenge, reflection_question). The _extract_ai_result() method in hf_service.py validates the response — checking that choices[0].message.content is non-empty, ≥80 chars, parses as JSON, and contains title and steps — before setting is_ai_generated: true. A rule-based fallback runs if any of those checks fail and is always clearly labelled.&lt;/p&gt;

&lt;p&gt;TabPFN (Prior Labs)&lt;/p&gt;

&lt;p&gt;The tabpfn package is in requirements.txt. When it loads on Render, the suitability scorer is labelled "TabPFN (Prior Labs tabular model)". When it does not load (e.g. local CPU-only environment), it falls back to a heuristic scorer labelled "Heuristic rule-based scorer" — the label is set from self.has_official_tabpfn.&lt;/p&gt;

&lt;p&gt;ElevenLabs&lt;/p&gt;

&lt;p&gt;elevenlabs SDK is wired up in elevenlabs_service.py. When the API key is valid, it returns an audio URL for the plan briefing. When it returns 401 (expired key) or is unconfigured, the frontend falls back to window.speechSynthesis (browser Web Speech API) — users still get audio, just synthesised client-side.&lt;/p&gt;

&lt;p&gt;SerpApi&lt;/p&gt;

&lt;p&gt;serpapi_service.py calls the Google Maps engine for local park results when a key and location are provided. Results include a "source": "serpapi-live" tag. Static defaults include "source": "static-default" so the frontend can (and does) show which data is real.&lt;/p&gt;

&lt;p&gt;Sentry&lt;/p&gt;

&lt;p&gt;sentry_service.py wraps every service call in an AgentSpan context manager that records timing, inputs, and outputs in an in-memory list. When SENTRY_DSN is set in environment variables, the same spans are forwarded to Sentry's trace dashboard. The startup log is honest about which mode is active.&lt;/p&gt;

&lt;p&gt;Render&lt;/p&gt;

&lt;p&gt;The app is deployed as a Python web service on Render using render.yaml:&lt;/p&gt;

&lt;p&gt;Build: pip install -r requirements.txt&lt;br&gt;
Start: uvicorn app.main:app --host 0.0.0.0 --port $PORT&lt;br&gt;
Health check: /health returning {"status": "healthy"}&lt;br&gt;
All API keys stored as Render environment variables — never sent to the client browser&lt;/p&gt;

&lt;p&gt;This distinction matters: an application should be honest about when its AI is working.&lt;/p&gt;

&lt;h3&gt;
  
  
  ⚙️ The application stack
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Frontend:&lt;/strong&gt; HTML5, CSS3, and vanilla JavaScript.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Backend:&lt;/strong&gt; Python and FastAPI.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Model inference:&lt;/strong&gt; Hugging Face Inference Providers.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Hosting:&lt;/strong&gt; Render Web Services.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Version control:&lt;/strong&gt; Git and GitHub.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I chose a lightweight architecture that keeps the frontend and backend straightforward to understand and extend.&lt;/p&gt;

&lt;h3&gt;
  
  
  🚀 Why Render?
&lt;/h3&gt;

&lt;p&gt;Render provides the public hosting environment for TrailMates and runs the FastAPI application that handles requests from the frontend.&lt;/p&gt;

&lt;p&gt;The backend is responsible for communicating with the configured inference provider, handling responses, and returning structured plans to the user. API credentials remain in server-side environment variables rather than being embedded in browser code.&lt;/p&gt;

&lt;p&gt;The application also provides a health-check endpoint for deployment monitoring.&lt;/p&gt;

&lt;p&gt;Using a single hosted application keeps the deployment relatively simple while leaving room to evolve the AI integration.&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;For TrailMates, open innovation is about keeping the technology adaptable.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I didn't want the future of this project to depend entirely on one proprietary model API.&lt;/p&gt;

&lt;p&gt;Open-weight models give developers opportunities to explore different models, compare their outputs, experiment with prompts, and adapt the behavior of an application to its users' needs.&lt;/p&gt;

&lt;p&gt;That flexibility matters for an outdoor companion. Someone with 15 minutes and low energy needs a different suggestion from someone looking for an active afternoon outdoors. I want to be able to experiment with how TrailMates plans those experiences without unnecessarily rewriting the entire application.&lt;/p&gt;

&lt;p&gt;Open innovation also encouraged me to think about transparency. When model inference is unavailable, the rule-based fallback can still provide a useful demo plan. But it should never be mislabeled as AI-generated.&lt;/p&gt;

&lt;p&gt;There are trade-offs. TrailMates currently relies on external inference infrastructure when using Hugging Face Inference Providers. Availability, latency, and cost depend on the configured provider and model. I am not claiming that the hosted application runs fully offline or that inference is free at scale.&lt;/p&gt;

&lt;p&gt;A future version could support local inference with a compatible model, giving users and contributors another way to run the planner and potentially reducing reliance on an external inference service. That would also introduce hardware and performance considerations.&lt;/p&gt;

&lt;p&gt;To me, open innovation isn't about claiming that open models are automatically better or cheaper in every situation. It's about having the freedom to investigate alternatives, learn from experimentation, and build something that can evolve.&lt;/p&gt;

&lt;p&gt;And that's what I like most about this project: the AI isn't meant to keep people interacting with AI. It's meant to help them discover something beyond their screens.&lt;/p&gt;

&lt;h2&gt;
  
  
  My Agent Session
&lt;/h2&gt;

&lt;p&gt;Built with Antigravity (AGY) — the full multi-session conversation is what produced the code in this repository, including the endpoint correction, honest attribution logic, and this submission.  I'm sharing the source code as the primary reference for the implementation.&lt;/p&gt;

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

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Best Use of Render&lt;/strong&gt; — TrailMates is deployed as a Render-hosted web application with a FastAPI backend and a health-check endpoint.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Best Use of a Hugging Face Open-Weight Model&lt;/strong&gt; — Qwen/Qwen2.5-7B-Instruct via &lt;a href="https://router.huggingface.co/v1/chat/completions" rel="noopener noreferrer"&gt;https://router.huggingface.co/v1/chat/completions&lt;/a&gt;. Attribution is only shown after response validation.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;*&lt;em&gt;Best Use of TabPFN *&lt;/em&gt;— Prior Labs tabpfn package installed; suitability scorer clearly reports "TabPFN (Prior Labs tabular model)" vs "Heuristic rule-based scorer" depending on what loaded.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;*&lt;em&gt;Best Use of ElevenLabs *&lt;/em&gt;— ElevenLabs SDK integrated for audio trail briefing with graceful browser Web Speech API fallback.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Best Use of Sentry&lt;/strong&gt; — AgentSpan context manager records timing and metadata for every service call; forwarded to Sentry when DSN is configured.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Best Use of SerpApi&lt;/strong&gt; — Google Maps engine search for real local parks and green spaces when SERPAPI_API_KEY and location are present; results tagged "source": "serpapi-live"&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;Technology doesn't always have to ask for more of our attention.&lt;/p&gt;

&lt;p&gt;Sometimes, it can help us give that attention back to the world around us.&lt;/p&gt;

&lt;p&gt;If you try TrailMates, generate a small adventure, put your phone away, and see what you notice outside.&lt;/p&gt;

&lt;p&gt;A little fresh air. A little curiosity. A little less scrolling.&lt;/p&gt;

&lt;p&gt;Even a tiny adventure counts. 🌿&lt;/p&gt;

&lt;h1&gt;
  
  
  devchallenge #hf26challenge
&lt;/h1&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
      <category>ai</category>
      <category>opensource</category>
    </item>
  </channel>
</rss>
