[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"article-k3s-one-command-cluster-guide-en":3,"article-related-k3s-one-command-cluster-guide-en":30,"series-tools-ed29baad-b8eb-416f-9a36-9cd89e6b7040":75},{"id":4,"slug":5,"title":6,"content":7,"summary":8,"source":9,"source_url":10,"author":11,"image_url":12,"cover_image":12,"category":13,"language":14,"translated_content":11,"related_article_id":15,"keywords":16,"key_takeaways":22,"views":26,"created_at":27,"published_at":28,"topic_cluster_id":29},"ed29baad-b8eb-416f-9a36-9cd89e6b7040","k3s-one-command-cluster-guide-en","K3s turns one command into a cluster","\u003Cp data-speakable=\"summary\">K3s quick-start turns one shell command into a working Kubernetes cluster.\u003C\u002Fp>\u003Cp>I've been using Kubernetes long enough to know when a “quick start” is lying to me. Most of them are really “quick to copy, slow to understand.” You paste a command, watch a wall of logs, and then spend the next hour figuring out where the kubeconfig went, why the node name is duplicated, or why the thing you just installed behaves like a tiny haunted appliance.\u003C\u002Fp>\u003Cp>K3s is different, but not in the glossy way people pitch it. What grabbed me in the \u003Ca href=\"https:\u002F\u002Fdocs.k3s.io\u002Fquick-start\">K3s Quick-Start Guide\u003C\u002Fa> was how opinionated it is about the boring stuff. It doesn’t ask you to assemble a cluster from a pile of half-related binaries. It gives you a default path, installs itself as a service, drops the tools you’ll actually reach for, and gets out of your way. That’s useful when you want a cluster now, not after a weekend of “learning the platform.”\u003C\u002Fp>\u003Cp>The catch is that this guide is short because it assumes you already know where the sharp edges are. I’m going to unpack those edges. The goal here is not to reword the docs. It’s to show you what each line means in practice, where I’ve seen people trip, and how to turn the quick-start into something you can reuse without treating it like magic.\u003C\u002Fp>\u003Cp>Source-wise, I’m working from the official K3s quick-start page at \u003Ca href=\"https:\u002F\u002Fdocs.k3s.io\u002Fquick-start\">docs.k3s.io\u002Fquick-start\u003C\u002Fa>. The page itself doesn’t give view counts or bookmark numbers, so I’m not inventing any. I’m also linking the upstream install entry point at \u003Ca href=\"https:\u002F\u002Fget.k3s.io\">get.k3s.io\u003C\u002Fa>, because that’s the actual script the guide points you at.\u003C\u002Fp>\u003Ch2>The installer is doing more than downloading a binary\u003C\u002Fh2>\u003Cblockquote>curl -sfL https:\u002F\u002Fget.k3s.io | sh -\u003C\u002Fblockquote>\u003Cp>What this actually means is: the installer is not just putting K3s on disk. It’s setting it up as a service on \u003Ca href=\"https:\u002F\u002Fsystemd.io\u002F\">systemd\u003C\u002Fa> or \u003Ca href=\"https:\u002F\u002Fopenrc.org\u002F\">openrc\u003C\u002Fa> systems, wiring it to restart automatically after reboots or crashes, and putting the common client tools in place.\u003C\u002Fp>\n\u003Cfigure class=\"my-6\">\u003Cimg src=\"https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781766198826-r8c2.png\" alt=\"K3s turns one command into a cluster\" class=\"rounded-xl w-full\" loading=\"lazy\" \u002F>\u003C\u002Ffigure>\n\u003Cp>I like this part because it removes the usual “okay, now make it persistent” dance. If you’ve ever installed Kubernetes components by hand, you know the annoying middle step: the software runs, but only until the shell dies or the machine reboots. K3s skips that whole class of failure by treating installation as service setup, not just file extraction.\u003C\u002Fp>\u003Cp>The guide says the script is available at \u003Ca href=\"https:\u002F\u002Fget.k3s.io\">https:\u002F\u002Fget.k3s.io\u003C\u002Fa>, and that matters because it’s a deliberate boundary. The docs are telling you: this is the supported path if you want the default experience. I’ve seen teams try to be clever and repackage the process into their own bootstrap scripts before they’ve even learned the defaults. That usually ends with someone asking why the cluster behaves differently on every host.\u003C\u002Fp>\u003Cp>How to apply it: use the installer exactly once on a clean node, then inspect what it created. Don’t immediately wrap it in five layers of automation. First get comfortable with the service name, the config files, and the uninstall path. If you can’t explain what the installer changed, you’re not ready to automate it yet.\u003C\u002Fp>\u003Cul>\u003Cli>Use the official script for the default install path.\u003C\u002Fli>\u003Cli>Expect service integration, not a throwaway local binary.\u003C\u002Fli>\u003Cli>Check the generated config before you customize anything.\u003C\u002Fli>\u003C\u002Ful>\u003Ch2>Single-node K3s is already a real cluster\u003C\u002Fh2>\u003Cp>The docs say a single-node server installation is “a fully-functional Kubernetes cluster.” That’s the sentence people skim past and then immediately overcomplicate. I’ve watched folks assume they need at least three machines before anything counts. Not here.\u003C\u002Fp>\u003Cp>What this actually means is that one server node can carry the datastore, control plane, kubelet, and container runtime all by itself. That’s the whole stack needed to run workloads. You do not need to add agents just to make it legitimate. You add more nodes for capacity or redundancy, not because the first node is missing some mystical Kubernetes ingredient.\u003C\u002Fp>\u003Cp>This is where K3s earns its reputation with edge setups and dev clusters. If I’m testing something, I don’t want to provision a three-node lab just to validate a manifest. I want one machine, one installer command, and a kubeconfig I can point at immediately. The quick-start gives exactly that.\u003C\u002Fp>\u003Cp>How to apply it: treat the first server as a complete cluster unless your use case says otherwise. If you’re building a demo, a lab, or a small internal tool, stop at the single node until you can justify more complexity. If you need to scale later, you can add \u003Ca href=\"\u002Ftag\u002Fagent\">agent\u003C\u002Fa> nodes or move to a high-availability setup, but don’t start there out of habit.\u003C\u002Fp>\u003Cp>For the Kubernetes side of this, the official docs are still worth keeping open in another tab: \u003Ca href=\"https:\u002F\u002Fkubernetes.io\u002Fdocs\u002Fhome\u002F\">Kubernetes documentation\u003C\u002Fa>. K3s simplifies the install path, not the underlying concepts.\u003C\u002Fp>\u003Ch2>The kubeconfig path is the part you’ll actually use tomorrow\u003C\u002Fh2>\u003Cp>The guide says K3s writes a kubeconfig file to \u003Ccode>\u002Fetc\u002Francher\u002Fk3s\u002Fk3s.yaml\u003C\u002Fcode>, and the installed \u003Ccode>kubectl\u003C\u002Fcode> automatically uses it. That’s a small sentence with a lot of practical value.\u003C\u002Fp>\n\u003Cfigure class=\"my-6\">\u003Cimg src=\"https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781766199912-ah54.png\" alt=\"K3s turns one command into a cluster\" class=\"rounded-xl w-full\" loading=\"lazy\" \u002F>\u003C\u002Ffigure>\n\u003Cp>What this actually means is that after install, you already have the credential and context wiring needed to talk to the cluster. No hunting through random home directories. No wondering which admin config file is the real one. The default path is explicit, and that saves time when you’re debugging a cluster at 2 a.m. and your brain has already left the building.\u003C\u002Fp>\u003Cp>I ran into this when I was setting up a tiny test cluster on a spare box. The install finished cleanly, but I still reached for my usual muscle memory and started looking under \u003Ccode>~\u002F.kube\u003C\u002Fcode>. Wrong habit, wrong assumption. Once I checked the K3s path, everything made sense. That’s the kind of detail that feels minor until you lose twenty minutes to it.\u003C\u002Fp>\u003Cp>How to apply it: after installation, immediately verify that you can read the kubeconfig and talk to the \u003Ca href=\"\u002Ftag\u002Fapi\">API\u003C\u002Fa> server. If you’re using a different \u003Ccode>kubectl\u003C\u002Fcode> than the one K3s installed, point it at the file explicitly. Don’t assume your local shell setup knows what K3s did.\u003C\u002Fp>\u003Cul>\u003Cli>Look for the config at \u003Ccode>\u002Fetc\u002Francher\u002Fk3s\u002Fk3s.yaml\u003C\u002Fcode>.\u003C\u002Fli>\u003Cli>Use the installed \u003Ccode>kubectl\u003C\u002Fcode> first, then swap tools later if needed.\u003C\u002Fli>\u003Cli>Verify access before layering on add-ons or automation.\u003C\u002Fli>\u003C\u002Ful>\u003Ch2>Joining agents is just a URL and a token, but that token matters\u003C\u002Fh2>\u003Cblockquote>curl -sfL https:\u002F\u002Fget.k3s.io | K3S_URL = https:\u002F\u002Fmyserver:6443 K3S_TOKEN = mynodetoken sh -\u003C\u002Fblockquote>\u003Cp>The docs are showing the join path for agent nodes: set \u003Ccode>K3S_URL\u003C\u002Fcode> to the server endpoint and \u003Ccode>K3S_TOKEN\u003C\u002Fcode> to the server \u003Ca href=\"\u002Ftag\u002Ftoken\">token\u003C\u002Fa>. That’s the whole handshake.\u003C\u002Fp>\u003Cp>What this actually means is that the installer switches modes. With \u003Ccode>K3S_URL\u003C\u002Fcode> present, it configures the node as an agent instead of a server. The agent then registers with the K3s server at the supplied URL. The token is not decorative; it’s the credential that lets the node join the cluster.\u003C\u002Fp>\u003Cp>I’ve seen people get hung up here because they treat the token like a temporary bootstrap secret they can ignore. Don’t. The guide tells you exactly where to find it on the server node: \u003Ccode>\u002Fvar\u002Flib\u002Francher\u002Fk3s\u002Fserver\u002Fnode-token\u003C\u002Fcode>. If you lose track of that, joining new nodes turns into guesswork, and guesswork is a bad way to operate infrastructure.\u003C\u002Fp>\u003Cp>How to apply it: fetch the token from the server, keep the server URL accurate, and join one agent at a time until you understand the pattern. If the node doesn’t show up, check the obvious stuff first: URL, token, network reachability, and hostname uniqueness. Most “K3s is broken” complaints I’ve seen were really “we passed the wrong environment variable value.”\u003C\u002Fp>\u003Cp>For the underlying cluster behavior, the K3s architecture docs are the next stop: \u003Ca href=\"https:\u002F\u002Fdocs.k3s.io\u002Farchitecture\">K3s Architecture\u003C\u002Fa>. The quick-start is intentionally not the place to explain every moving part.\u003C\u002Fp>\u003Ch2>Hostname collisions are a self-inflicted wound\u003C\u002Fh2>\u003Cp>The note about unique hostnames \u003Ca href=\"\u002Fnews\u002Fgpt-56-fix-and-upgrade-release-en\">looks like\u003C\u002Fa> a footnote, but it saves real pain. The docs say each machine must have a unique hostname, and if that’s not true, you should pass \u003Ccode>K3S_NODE_NAME\u003C\u002Fcode> with a valid unique value.\u003C\u002Fp>\u003Cp>What this actually means is that node identity matters. If two machines report the same hostname, you’re asking the cluster to pretend they’re the same machine, and that will go badly. K3s gives you an escape hatch with \u003Ccode>K3S_NODE_NAME\u003C\u002Fcode>, which is the right move when your environment hands out boring default names like \u003Ccode>localhost\u003C\u002Fcode> or cloned VM hostnames.\u003C\u002Fp>\u003Cp>I ran into this on a pile of cloned lab VMs. Everything looked fine until the second node joined and the cluster UI made it obvious that I’d created a naming mess. The fix was simple once I stopped assuming the OS would sort it out for me. I had to name the nodes intentionally.\u003C\u002Fp>\u003Cp>How to apply it: make hostname assignment part of your provisioning checklist. If you’re cloning images, bake in a unique naming step. If you’re using cloud-init, set the hostname there. If you can’t guarantee uniqueness, set \u003Ccode>K3S_NODE_NAME\u003C\u002Fcode> explicitly during install so the cluster gets a clean identity per node.\u003C\u002Fp>\u003Cul>\u003Cli>Never assume cloned machines will self-identify correctly.\u003C\u002Fli>\u003Cli>Use \u003Ccode>K3S_NODE_NAME\u003C\u002Fcode> when hostnames are weak or duplicated.\u003C\u002Fli>\u003Cli>Check node names before debugging networking or scheduling.\u003C\u002Fli>\u003C\u002Ful>\u003Ch2>High availability is a separate decision, not an install flag\u003C\u002Fh2>\u003Cp>The quick-start points to the High Availability Embedded etcd and High Availability External DB pages if you want more server nodes. That’s the clue that HA is not part of the default quick start. It’s a different setup with different tradeoffs.\u003C\u002Fp>\u003Cp>What this actually means is that the default install optimizes for getting a working cluster fast. HA asks different questions: how many server nodes, what datastore, what failure modes, what operational overhead. K3s doesn’t bury you in that complexity until you ask for it, and I appreciate that restraint.\u003C\u002Fp>\u003Cp>How to apply it: don’t drag HA into the first install unless you already know why you need it. If you’re experimenting, validating manifests, or running a small production footprint with acceptable downtime, the default server plus agents may be enough. If the control plane itself has to survive node loss, then read the HA docs before you touch production.\u003C\u002Fp>\u003Cp>For the HA paths, start with the official pages here: \u003Ca href=\"https:\u002F\u002Fdocs.k3s.io\u002Fdatastore\u002Fha-embedded\">High Availability Embedded etcd\u003C\u002Fa> and \u003Ca href=\"https:\u002F\u002Fdocs.k3s.io\u002Fdatastore\u002Fha-external\">High Availability External DB\u003C\u002Fa>. I’m linking them because the quick-start intentionally punts on the details, and that’s the right call.\u003C\u002Fp>\u003Ch2>The quick-start is really a decision tree with a short first branch\u003C\u002Fh2>\u003Cp>When I strip the guide down to its actual structure, I don’t see “installation instructions.” I see a decision tree: install the server, confirm the kubeconfig, add agents if you need capacity, and only then start worrying about HA or deeper configuration.\u003C\u002Fp>\u003Cp>What this actually means is that the docs are teaching you the shortest path to a useful cluster, not the fullest path to every cluster. That’s a better teaching strategy than most platform docs manage. It respects the fact that people usually need a working environment before they need a theory lecture.\u003C\u002Fp>\u003Cp>How to apply it: follow the quick-start in order, and don’t skip ahead to add-ons or multi-server setups until the base cluster is healthy. If you’re writing your own internal runbook, preserve that order. Lead with install, then access, then expansion. That sequence reduces support noise because each step has a clear success condition.\u003C\u002Fp>\u003Cp>If you want a clean mental model, think of the guide as three phases: bootstrap one server, join extra workers, then decide whether you need high availability. That’s the practical shape of the document, even if the page itself is much shorter than this breakdown.\u003C\u002Fp>\u003Ch2>The template you can copy\u003C\u002Fh2>\u003Cpre>\u003Ccode># K3s quick-start runbook\n\n## 1) Install the first server\ncurl -sfL https:\u002F\u002Fget.k3s.io | sh -\n\n## 2) Confirm the service is up\nsudo systemctl status k3s\n\n## 3) Read the kubeconfig\nsudo cat \u002Fetc\u002Francher\u002Fk3s\u002Fk3s.yaml\n\n## 4) Use kubectl from the installed path\nsudo kubectl get nodes\n\n## 5) Join an agent node\n# On the server node, read the token:\nsudo cat \u002Fvar\u002Flib\u002Francher\u002Fk3s\u002Fserver\u002Fnode-token\n\n# On the agent node, replace the values and run:\ncurl -sfL https:\u002F\u002Fget.k3s.io | K3S_URL=https:\u002F\u002Fmyserver:6443 K3S_TOKEN=mynodetoken sh -\n\n## 6) Fix hostname collisions if needed\n# If a node name is duplicated, set a unique one during install:\ncurl -sfL https:\u002F\u002Fget.k3s.io | K3S_NODE_NAME=my-unique-node-name sh -\n\n## 7) HA only if you need it\n# Read these before adding more server nodes:\n# https:\u002F\u002Fdocs.k3s.io\u002Fdatastore\u002Fha-embedded\n# https:\u002F\u002Fdocs.k3s.io\u002Fdatastore\u002Fha-external\n\n## 8) What to verify\n# - service restarts after reboot\n# - kubeconfig points to the right server\n# - node names are unique\n# - agents join with the expected token\n# - cluster is healthy before adding add-ons\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>I built this template to mirror the exact shape of the quick-start, but with the missing operational steps filled in. It’s not a replacement for the docs; it’s the version I’d hand to a teammate so they don’t have to infer the obvious bits from a one-page guide.\u003C\u002Fp>\u003Cp>If you want the original source, start here: \u003Ca href=\"https:\u002F\u002Fdocs.k3s.io\u002Fquick-start\">https:\u002F\u002Fdocs.k3s.io\u002Fquick-start\u003C\u002Fa>. The install script entry point is \u003Ca href=\"https:\u002F\u002Fget.k3s.io\">https:\u002F\u002Fget.k3s.io\u003C\u002Fa>. Everything above is my breakdown and practical rewrite of the same material, not a separate upstream document.\u003C\u002Fp>","I break down K3s quick-start into a copy-ready install flow for single-node clusters and agent joins.","docs.k3s.io","https:\u002F\u002Fdocs.k3s.io\u002Fquick-start",null,"https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781766198826-r8c2.png","tools","en","a3e20ad1-0f12-4132-9645-73f000080cb6",[17,18,19,20,21],"k3s","kubernetes","quick-start","installation","cluster",[23,24,25],"K3s quick-start installs a real single-node cluster, not a toy setup.","Agent joins depend on K3S_URL, K3S_TOKEN, and unique node names.","The default path is enough for labs; HA is a separate decision.",0,"2026-06-18T07:02:50.963922+00:00","2026-06-18T07:02:50.954+00:00","80003b4a-06cf-4058-b115-d1635e5b9eb2",{"tags":31,"relatedLang":34,"relatedPosts":38},[32],{"name":33,"slug":18},"Kubernetes",{"id":15,"slug":35,"title":36,"language":37},"k3s-one-command-cluster-guide-zh","K3s 讓一條指令變叢集","zh",[39,45,51,57,63,69],{"id":40,"slug":41,"title":42,"cover_image":43,"image_url":43,"created_at":44,"category":13},"a4e55caf-5cbd-47d6-9d5e-f6b7c6e09cd2","mistral-model-docs-deployment-manual-en","Mistral’s model docs are a deployment manual, not a catalog","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781770670800-d22h.png","2026-06-18T08:17:21.806032+00:00",{"id":46,"slug":47,"title":48,"cover_image":49,"image_url":49,"created_at":50,"category":13},"f5bea479-321d-40a4-9929-7ccdf8eebad2","kubernetes-interviews-reveal-why-teams-adopt-it-en","Kubernetes interviews reveal why teams adopt it","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781767976646-rdqd.png","2026-06-18T07:32:32.645874+00:00",{"id":52,"slug":53,"title":54,"cover_image":55,"image_url":55,"created_at":56,"category":13},"796113f3-61af-4985-9d09-afefbd99d013","run-minimax-m3-locally-unsloth-studio-en","Run MiniMax M3 locally in Unsloth Studio","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781759880801-p006.png","2026-06-18T05:17:34.96983+00:00",{"id":58,"slug":59,"title":60,"cover_image":61,"image_url":61,"created_at":62,"category":13},"9f99ef38-1dc3-4b1f-b3fc-f3892e2af586","windows-docker-desktop-wsl2-install-guide-en","Windows Docker Desktop installs cleanly with WSL 2","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781737397954-odpt.png","2026-06-17T23:02:54.583634+00:00",{"id":64,"slug":65,"title":66,"cover_image":67,"image_url":67,"created_at":68,"category":13},"cc4a6360-46f7-4cdd-b250-74e4474d0407","build-semantic-search-opensearch-vectors-en","Build semantic search with OpenSearch vectors","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781714885490-g1o1.png","2026-06-17T16:47:37.268089+00:00",{"id":70,"slug":71,"title":72,"cover_image":73,"image_url":73,"created_at":74,"category":13},"46e957eb-f078-4527-9f2b-e05e801998d8","zvec-turns-local-vector-search-into-a-library-en","Zvec turns local vector search into a library","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781714031518-cson.png","2026-06-17T16:33:24.445725+00:00",[76,81,86,91,96,101,106,111,116,121],{"id":77,"slug":78,"title":79,"created_at":80},"8008f1a9-7a00-4bad-88c9-3eedc9c6b4b1","surepath-ai-mcp-policy-controls-en","SurePath AI's New MCP Policy Controls Enhance AI Security","2026-03-26T01:26:52.222015+00:00",{"id":82,"slug":83,"title":84,"created_at":85},"27e39a8f-b65d-4f7b-a875-859e2b210156","mcp-standard-ai-tools-2026-en","MCP Standard in 2026: Integrating AI Tools","2026-03-26T01:27:43.127519+00:00",{"id":87,"slug":88,"title":89,"created_at":90},"165f9a19-c92d-46ba-b3f0-7125f662921d","rag-2026-transforming-enterprise-ai-en","How RAG in 2026 is Transforming Enterprise AI","2026-03-26T01:28:11.485236+00:00",{"id":92,"slug":93,"title":94,"created_at":95},"6a2a8e6e-b956-49d8-be12-cc47bdc132b2","mastering-ai-prompts-2026-guide-en","Mastering AI Prompts: A 2026 Guide for Developers","2026-03-26T01:29:07.835148+00:00",{"id":97,"slug":98,"title":99,"created_at":100},"3ab2c67e-4664-4c67-a013-687a2f605814","garry-tan-open-sources-claude-code-toolkit-en","Garry Tan Open-Sources a Claude Code Toolkit","2026-03-26T08:26:20.245934+00:00",{"id":102,"slug":103,"title":104,"created_at":105},"66a7cbf8-7e76-41d4-9bbf-eaca9761bf69","github-ai-projects-to-watch-in-2026-en","20 GitHub AI Projects to Watch in 2026","2026-03-26T08:28:09.752027+00:00",{"id":107,"slug":108,"title":109,"created_at":110},"9f332fda-eace-448a-a292-2283951eee71","practical-github-guide-learning-ml-2026-en","A Practical GitHub Guide to Learning ML in 2026","2026-03-27T01:16:50.125678+00:00",{"id":112,"slug":113,"title":114,"created_at":115},"1b1f637d-0f4d-42bd-974b-07b53829144d","aiml-2026-student-ai-ml-lab-repo-review-en","AIML-2026 Is a Bare-Bones Student Lab Repo","2026-03-27T01:21:51.661231+00:00",{"id":117,"slug":118,"title":119,"created_at":120},"6d1bf3f6-e191-4d30-b55b-8a0722fa6afe","ai-trending-github-repos-and-research-feeds-en","AI Trending Tracks Repos and Research Feeds","2026-03-27T01:31:35.709532+00:00",{"id":122,"slug":123,"title":124,"created_at":125},"010539a1-4c3a-4bd3-937a-26616422ee0d","awesome-ai-for-science-research-tools-map-en","Awesome AI for Science Is Becoming a Real Research Map","2026-03-27T01:46:50.89513+00:00"]