[{"data":1,"prerenderedAt":50},["ShallowReactive",2],{"api:\u002Fapi\u002Fconfig:en":3,"api:\u002Fapi\u002Fabout:en":8},{"email":4,"lang":5,"name":6,"role":7},"hello@ewsirdev.example","en","Ewsirdev","Web developer: websites, landing pages and Go services",{"honest":9,"how":15,"intro":31,"lang":5,"principles":34},[10,11,12,13,14],"Almost all projects are learning\u002Fdemo projects; one site is a delivered client site and the client is not named. Testimonials and order figures are not claimed here.","The race detector (go test -race) is not run on my working machine because there is no C compiler; it runs in CI.","My own WebSocket layer has not been run against the Autobahn Test Suite: correctness is covered by my own tests. For production, a proven library is the better choice.","Demo data in the projects (monitoring history, links, jobs) is generated and marked as demo in the interfaces.","Contacts: email only. Phone and social networks are intentionally not listed.",[16,19,22,25,28],{"title":17,"text":18},"Talk","We clarify the task, the audience and the constraints. If you do not need a site, I will say so right away.",{"title":20,"text":21},"Agreement","Scope, timing and what counts as done. In writing, no surprises.",{"title":23,"text":24},"Build","Short iterations: every intermediate result can be opened and tried.",{"title":26,"text":27},"Check","Tests, mobile screens, accessibility, load on the form and the API.",{"title":29,"text":30},"Launch","A Docker image or static files, run instructions, code handover.",[32,33],"I am a web developer building landing pages and small services in Go. Almost every project on this site is a learning\u002Fdemo project: the brands are fictional, the data is demo data, and the code is private and shared on request. The exception is one delivered client site (the client is not named).","There are no testimonials or order numbers here. I only show what can be checked: working code, tests and READMEs that list the limitations.",[35,38,41,44,47],{"title":36,"text":37},"Simple and verifiable","Go standard library, a readable package layout, and tests for what really matters: concurrent job claiming, double booking, the WebSocket protocol.",{"title":39,"text":40},"Honest limitations","Every README has a Limitations section: one token instead of roles, a single process, at-least-once instead of exactly-once. Better to say it upfront than explain later.",{"title":42,"text":43},"Accessible by default","WCAG AA contrast, visible focus, keyboard support, respect for prefers-reduced-motion, mobile-first layout.",{"title":45,"text":46},"No secrets in code","Settings come from environment variables; tokens are generated at startup when not provided.",{"title":48,"text":49},"One binary","The front end is embedded in the Go service via embed, so running it needs no extra installs; SQLite uses a driver without CGO.",1792697892477]