I build web platforms for Japanese municipalities and enterprise clients —
Vue, Nuxt and TypeScript on the front, Python and FastAPI behind it, deployed on AWS.
| jlpt-practice | Free JLPT mock exams from N5 to N1 — 148 timed papers, marked automatically, with listening audio and answer explanations. Every question opens its own vocabulary with furigana, and all twelve languages get their own URL and hreflang. → nihongomock.com |
| nepal-oita-community | Live community site for Nepalis in Oita and Beppu — events, notices and local guidance. Next.js and TypeScript, with the data layer written as PostgreSQL procedures rather than pushed into the app. → nepaloitacommunity.com |
| portfolio | My personal site. No framework and no build step — hand-written HTML, CSS and vanilla JavaScript, with every animation done in the browser rather than pulled from a library. → sureshsurkheti.com |
| my-blog | Django blog with Markdown posts, drafts, galleries, moderated comments, tags, search and RSS. Travel writing about Kyushu — live, and still growing. → blog.sureshsurkheti.com |
| ollama-local-mcp | A ReAct agent running entirely on a local Ollama model, calling four MCP tool servers I wrote — weather, math, calendar and translator. LangGraph with the LangChain MCP adapters; no hosted API involved. |
| Shopiverse | Nuxt storefront taken all the way through — register, log in, browse, search, cart, checkout and Stripe payment intents, plus a seller listing flow. Prisma schema with migrations and seed data. |
| cinemate | Nuxt and TypeScript film browser — now playing, popular, top rated, upcoming and search, each behind its own server API route so the API key never reaches the client. |
| nuxtcurrencyapp | A Nuxt sandbox worked through one concept at a time — server routes, middleware, full REST CRUD, dynamic params, composable state and error handling. |
Earlier work — seven more repositories, mostly from learning
| randoms | A mock REST API served from Nuxt server routes — posts, products and celebrities with full CRUD — with its own documentation site built on Nuxt Content. |
| Help-App | React Native (Expo) emergency assistance app — login, live geolocation, Google Places search, patient details and push notifications, on Firebase. |
| LiveLocation | React Native (Expo) experiment in continuous live location tracking, including patched native modules. |
| RNLEARN | React Native practice — rebuilding a Netflix-style card component while learning the framework's layout model. |
| REST-API-STORAGE | Django REST Framework practice API — models, serializers, viewsets and routed endpoints. One of my first backend projects. |
| Blog | A static multi-page blog layout in plain HTML and CSS, from early front-end practice. |
| invoice | A static invoice interface — login screen and invoice layout, in HTML and CSS. |
→ everything else in the repositories tab
| Frontend | TypeScript · JavaScript · Vue · Nuxt · Next.js · Svelte · Tailwind · Vuetify · Pinia |
| Backend | Python · FastAPI · Django · PostgreSQL · MySQL · DynamoDB |
| Cloud | AWS (EC2, ECS/Fargate, Lambda, RDS, S3, CloudFront, Cognito, IAM) · Terraform · Docker |
| Testing | Playwright · Pytest |
| Mobile | Objective-C · Xcode · React Native |
Contract software engineer at OEC Co., Ltd. in Oita, Japan — 12+ projects for municipalities and enterprise clients: GIS and land-regulation portals, asset management, citizen apps, and multi-district voucher systems. Client work is private, so most of it isn't here.
Before Japan: Django and React Native at Prabidhi Labs in Nepal, 2022–2024. BE in Information Technology, Everest Engineering College, Pokhara University.
- Building — the Nepal–Oita Community website
- At work — municipal 商品券 (shōhinken) gift-voucher platforms at OEC
- Learning — AWS in depth: which service to reach for, and how to deploy onto it properly. Terraform and Docker past the basics.
- Open to — collaboration and contract work. Reach out any time.