<feed xmlns='http://www.w3.org/2005/Atom'>
<title>openstore/internal, branch master</title>
<subtitle>Web store that is open source and relies on syndication. Main goal is to be very simple to set up and get running</subtitle>
<id>https://git.mihna123.com/openstore/atom/internal?h=master</id>
<link rel='self' href='https://git.mihna123.com/openstore/atom/internal?h=master'/>
<link rel='alternate' type='text/html' href='https://git.mihna123.com/openstore/'/>
<updated>2026-09-10T17:29:24Z</updated>
<entry>
<title>legal: add a mit licence</title>
<updated>2026-09-10T17:29:24Z</updated>
<author>
<name>mihna123</name>
<email>mihailonvojinovic@gmail.com</email>
</author>
<published>2026-09-10T17:29:24Z</published>
<link rel='alternate' type='text/html' href='https://git.mihna123.com/openstore/commit/?id=5f49776582e73103351f021bf8082d486aa8e249'/>
<id>urn:sha1:5f49776582e73103351f021bf8082d486aa8e249</id>
<content type='text'>
</content>
</entry>
<entry>
<title>config: fix the ErrBadConfig text and check err type in test</title>
<updated>2026-09-10T16:56:57Z</updated>
<author>
<name>mihna123</name>
<email>mihailonvojinovic@gmail.com</email>
</author>
<published>2026-09-10T16:56:57Z</published>
<link rel='alternate' type='text/html' href='https://git.mihna123.com/openstore/commit/?id=93e5765a09b464e5eb75afb23d7340ac7ad920da'/>
<id>urn:sha1:93e5765a09b464e5eb75afb23d7340ac7ad920da</id>
<content type='text'>
</content>
</entry>
<entry>
<title>config: config_test.go: remove left over debug line</title>
<updated>2026-09-10T16:32:53Z</updated>
<author>
<name>mihna123</name>
<email>mihailonvojinovic@gmail.com</email>
</author>
<published>2026-09-10T16:32:53Z</published>
<link rel='alternate' type='text/html' href='https://git.mihna123.com/openstore/commit/?id=a5abfd1ce26438a5421a0494bab83c2805c09d6c'/>
<id>urn:sha1:a5abfd1ce26438a5421a0494bab83c2805c09d6c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>config: config_test.go: remove unused writeConf function</title>
<updated>2026-09-10T16:31:43Z</updated>
<author>
<name>mihna123</name>
<email>mihailonvojinovic@gmail.com</email>
</author>
<published>2026-09-10T16:31:43Z</published>
<link rel='alternate' type='text/html' href='https://git.mihna123.com/openstore/commit/?id=235fc3a15a2dd071d4738c06ab600a92daa46306'/>
<id>urn:sha1:235fc3a15a2dd071d4738c06ab600a92daa46306</id>
<content type='text'>
</content>
</entry>
<entry>
<title>config: add database section to config and remove defaults</title>
<updated>2026-09-10T16:29:18Z</updated>
<author>
<name>mihna123</name>
<email>mihailonvojinovic@gmail.com</email>
</author>
<published>2026-09-10T16:29:18Z</published>
<link rel='alternate' type='text/html' href='https://git.mihna123.com/openstore/commit/?id=da66d1ad1d785011c96a1bda876a3b94c1b199c7'/>
<id>urn:sha1:da66d1ad1d785011c96a1bda876a3b94c1b199c7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>go.mod: update module to git.mihna123.com</title>
<updated>2026-09-04T09:28:36Z</updated>
<author>
<name>mihna123</name>
<email>mihailonvojinovic@gmail.com</email>
</author>
<published>2026-09-04T09:28:36Z</published>
<link rel='alternate' type='text/html' href='https://git.mihna123.com/openstore/commit/?id=6ebf9899277aea836f38dca631552f7c2c596330'/>
<id>urn:sha1:6ebf9899277aea836f38dca631552f7c2c596330</id>
<content type='text'>
</content>
</entry>
<entry>
<title>web: simplify style.css even more</title>
<updated>2026-09-03T23:32:21Z</updated>
<author>
<name>mihna123</name>
<email>mihailonvojinovic@gmail.com</email>
</author>
<published>2026-09-03T23:32:21Z</published>
<link rel='alternate' type='text/html' href='https://git.mihna123.com/openstore/commit/?id=2860159895d2f7bb0235dac93dea4ec5b0214d5b'/>
<id>urn:sha1:2860159895d2f7bb0235dac93dea4ec5b0214d5b</id>
<content type='text'>
Don't want to start styling too early. Want to do that at the end as
currently the shape of the website is very foggy.
</content>
</entry>
<entry>
<title>web: serve the stylesheet over a css route</title>
<updated>2026-09-03T23:29:39Z</updated>
<author>
<name>mihna123</name>
<email>mihailonvojinovic@gmail.com</email>
</author>
<published>2026-09-03T23:29:39Z</published>
<link rel='alternate' type='text/html' href='https://git.mihna123.com/openstore/commit/?id=668c151379ea1d9ff77505d74f751ed83a8af029'/>
<id>urn:sha1:668c151379ea1d9ff77505d74f751ed83a8af029</id>
<content type='text'>
Embed the css directory alongside the templates and serve it with a
FileServerFS mounted on GET /css/. The directory name matches the url
prefix, so the file resolves without an fs.Sub and there is no error
path to handle. Adding js later is the same one line.

Cover the route in the handler tests, including that template sources
stay unreachable and that the href the home page emits resolves to a
file that is actually served.
</content>
</entry>
<entry>
<title>config: add tests for config loading and page handlers</title>
<updated>2026-09-03T23:13:26Z</updated>
<author>
<name>mihna123</name>
<email>mihailonvojinovic@gmail.com</email>
</author>
<published>2026-09-03T23:13:26Z</published>
<link rel='alternate' type='text/html' href='https://git.mihna123.com/openstore/commit/?id=2e227424ba3a5bcc703936c35bcadba8cda0931f'/>
<id>urn:sha1:2e227424ba3a5bcc703936c35bcadba8cda0931f</id>
<content type='text'>
Cover the defaults/system/user cascade, partial overrides, malformed
files and base-url validation, plus DefaultPath resolution. An empty
value in an ini file counts as unset, so that is pinned down too.

Add the first handlers tests: routing, the instance name reaching the
template, and escaping of operator-supplied config in the page.
</content>
</entry>
<entry>
<title>config: add config package and wire it into server and handlers</title>
<updated>2026-09-03T23:13:17Z</updated>
<author>
<name>mihna123</name>
<email>mihailonvojinovic@gmail.com</email>
</author>
<published>2026-09-03T23:13:17Z</published>
<link rel='alternate' type='text/html' href='https://git.mihna123.com/openstore/commit/?id=5907450d569c997809674a2abeec97ddf0afe4aa'/>
<id>urn:sha1:5907450d569c997809674a2abeec97ddf0afe4aa</id>
<content type='text'>
Replace the hardcoded server.Config with an ini-backed config package
that reads /etc/openstore/openstore.conf then the user's config file, so
user settings override system ones and both override the built-in
defaults. Missing files are ignored rather than fatal.

Move route registration into a handlers package that owns the templates
and builds a Page view model, which removes the server -&gt; handlers
import cycle along with the setter-based context injection.
</content>
</entry>
</feed>
