hackathon-advisor / data /quest_labels /in /borderless.json
JacobLinCool's picture
feat: add live project atlas
4791c0a verified
{
"id": "build-small-hackathon/borderless",
"slug": "borderless",
"title": "Borderless",
"sdk": "gradio",
"declared_models": [],
"tags": [
"gradio",
"region:us"
],
"app_file": "app.py",
"README": "# Borderless **An agentic immigration research tool β€” describe your background in plain English, explore where you could go.** Live demo: **[build-small-hackathon/borderless](https://huggingface.co/spaces/build-small-hackathon/borderless)** Built for the [Build Small Hackathon](https://huggingface.co/build-small-hackathon) β€” small models (≀32B), big adventure. ## What it does Immigration research is fragmented across government sites, forums, and spreadsheets. Borderless puts it in one conversational flow: 1. **Describe yourself** β€” citizenship, education, work history, languages, budget, and goals in everyday language. 2. **Use guided intake or chat** β€” start from a structured profile form, a demo persona, or a free-form message. 3. **Get a shortlist** β€” the agent reasons over your profile and surfaces destination countries that fit. 4. **Explore on a 3D globe** β€” shortlisted countries appear on an interactive MapLibre globe beside the chat with pathway labels. 5. **Dig into the details** β€” visa pathways, required documents, realistic timelines, risks, and source links from official pages. No forms to decode. No keyword guessing. Just a research session that meets you where you are. ## How it works Borderless is a **Gradio agent** powered by **[Qwen/Qwen3.6-27B](https://huggingface.co/Qwen/Qwen3.6-27B)** (27B parameters β€” within the hackathon's 32B cap). The model plans multi-step research and calls tools when it needs ground truth: | Tool | What it fetches | |------|------- ...",
"APP_FILE": "from pathlib import Path\nfrom ui.workspace import create_main_workspace\nfrom ui.globe import globe_head_html\nfrom ui.sidebar import render_sidebar\n\n# app.py\nfrom pathlib import Path\n\nimport gradio as gr\n\nfrom ui.workspace import create_main_workspace\nfrom ui.globe import globe_head_html\nfrom ui.sidebar import render_sidebar\n\nASSETS_DIR = Path(__file__).resolve().parent / \"assets\"\n\n\ndef create_demo() -> gr.Blocks:\n with gr.Blocks(\n fill_height=True,\n title=\"Borderless - Immigration Research Agent\",\n ) as demo:\n history_host = render_sidebar()\n create_main_workspace(history_container=history_host)\n\n # Injected at launch (Gradio 6); also picked up by Hugging Face Spaces auto-launch.\n app_css = (ASSETS_DIR / \"app.css\").read_text(encoding=\"utf-8\")\n demo._deprecated_head = f\"{globe_head_html()}\\n<style>{app_css}</style>\"\n return demo\n\n\ndemo = create_demo()\n\nif __name__ == \"__main__\":\n demo.launch()"
}