<feed xmlns='http://www.w3.org/2005/Atom'>
<title>neko/exporter, branch claude/add-css-themes-QGTmP</title>
<subtitle>self-hosted, single user rss reader</subtitle>
<link rel='alternate' type='text/html' href='https://git.adammathes.com/neko/'/>
<entry>
<title>Refactor: project structure, implement dependency injection, and align v2 UI with v1</title>
<updated>2026-02-14T16:58:38+00:00</updated>
<author>
<name>Adam Mathes</name>
<email>adam@adammathes.com</email>
</author>
<published>2026-02-14T16:58:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adammathes.com/neko/commit/?id=e3c379d069ffa9661561d25cdbf2f5894a2f8ee8'/>
<id>e3c379d069ffa9661561d25cdbf2f5894a2f8ee8</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add comprehensive test suite — 81% cross-package coverage</title>
<updated>2026-02-13T03:55:05+00:00</updated>
<author>
<name>Adam Mathes</name>
<email>adam@adammathes.com</email>
</author>
<published>2026-02-13T03:55:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adammathes.com/neko/commit/?id=16186a344a7b61633cb7342aac37ac56ad83d261'/>
<id>16186a344a7b61633cb7342aac37ac56ad83d261</id>
<content type='text'>
Bug fixes:
- config: remove unused log import
- item: fix Printf format %d-&gt;%t for boolean ReadState
- util: update stale config.Read -&gt; config.Init, remove config.Config.DBServer

Test files added:
- config/config_test.go: Init, readConfig, addDefaults (100%)
- vlog/vlog_test.go: Printf, Println verbose/silent (100%)
- models/db_test.go: InitDB tests
- models/feed/feed_test.go: CRUD, filter, Categories, NewFeed, ResolveFeedURL (87%)
- models/item/item_test.go: CRUD, Filter with category/search/starred, rewriteImages (71%)
- exporter/exporter_test.go: all export formats (91%)
- importer/importer_test.go: InsertIItem, ImportJSON (90%)
- crawler/crawler_test.go: GetFeedContent, CrawlFeed, CrawlWorker, Crawl (89%)
- web/web_test.go: auth, login/logout, stream, item, feed, category,
  export, crawl, imageProxy handlers (77%)

Remaining 0% functions require HTTP/rice.MustFindBox/main entry and
can't be unit tested without refactoring (see tickets NK-gqkh96, NK-6q9nyg).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Bug fixes:
- config: remove unused log import
- item: fix Printf format %d-&gt;%t for boolean ReadState
- util: update stale config.Read -&gt; config.Init, remove config.Config.DBServer

Test files added:
- config/config_test.go: Init, readConfig, addDefaults (100%)
- vlog/vlog_test.go: Printf, Println verbose/silent (100%)
- models/db_test.go: InitDB tests
- models/feed/feed_test.go: CRUD, filter, Categories, NewFeed, ResolveFeedURL (87%)
- models/item/item_test.go: CRUD, Filter with category/search/starred, rewriteImages (71%)
- exporter/exporter_test.go: all export formats (91%)
- importer/importer_test.go: InsertIItem, ImportJSON (90%)
- crawler/crawler_test.go: GetFeedContent, CrawlFeed, CrawlWorker, Crawl (89%)
- web/web_test.go: auth, login/logout, stream, item, feed, category,
  export, crawl, imageProxy handlers (77%)

Remaining 0% functions require HTTP/rice.MustFindBox/main entry and
can't be unit tested without refactoring (see tickets NK-gqkh96, NK-6q9nyg).
</pre>
</div>
</content>
</entry>
<entry>
<title>remove h1 from html export</title>
<updated>2018-12-30T04:00:25+00:00</updated>
<author>
<name>Adam Mathes</name>
<email>adam@trenchant.org</email>
</author>
<published>2018-12-30T04:00:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adammathes.com/neko/commit/?id=0318104a27df05ebb41423504eeafa76337a796c'/>
<id>0318104a27df05ebb41423504eeafa76337a796c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>enable feed export from web interface</title>
<updated>2018-07-04T21:58:43+00:00</updated>
<author>
<name>Adam Mathes</name>
<email>adam@trenchant.org</email>
</author>
<published>2018-07-04T21:58:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adammathes.com/neko/commit/?id=ee5bf1d50b9165729d0c61f7d1f968949e3e0638'/>
<id>ee5bf1d50b9165729d0c61f7d1f968949e3e0638</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>remove runtime static file dependencies, use rice boxes</title>
<updated>2018-06-12T23:59:04+00:00</updated>
<author>
<name>Adam Mathes</name>
<email>adam@trenchant.org</email>
</author>
<published>2018-06-12T23:59:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adammathes.com/neko/commit/?id=f06192a98a2f8e8dae3148cda59b6b57968160ae'/>
<id>f06192a98a2f8e8dae3148cda59b6b57968160ae</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>refactor exporter, add json/opml export formats</title>
<updated>2018-04-08T15:51:26+00:00</updated>
<author>
<name>Adam Mathes</name>
<email>adam@trenchant.org</email>
</author>
<published>2018-04-08T15:51:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.adammathes.com/neko/commit/?id=cd1509967d7dafbf2d1a051206e368bd3aa5e179'/>
<id>cd1509967d7dafbf2d1a051206e368bd3aa5e179</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
