Releases: theandrew168/bloggulus
Releases · theandrew168/bloggulus
v0.5.2
Changelog
- df9a7b0 Bump UserAgent to 0.5.2
- e147ea3 Add sick ParallelMap helper, handle adding / following blog errors
- b36d9e0 Clean up some code, add better comments
- fbaa2d7 Write a better UpdateCacheHeaders helper
- 7b0936a Use the new ComparePosts helper
- bfb61b1 Create new pure helper for comparing posts
- fa98c27 Refactor how page hydation is handled
- f777bfe Think about DDD/FP more, refactor fetch API
- 65f063a Add some thoughts about domain modeling
- 6425b83 Bump to Go version 1.24
- 73c649c Update deps
v0.5.1
v0.5.0
Changelog
- 376fafd Bump UA to v0.5.0
- d3bb9c5 Move privacy policy to static HTML page
- 2ebbc54 Fix link color in privacy policy
- 42c8e65 Add empty state CTAs for articles and blogs
- 4944e41 More debug auth wording tweaks
- cb130ef Minor README tweak
- 522ab3f Update README
- 6465a03 Update deps
- 5a58297 Update and simplify privacy policy
- c96c0d6 Use correct font color on privacy policy
- 23b6397 Use an HMAC (with secret key) to hash user IDs
- 9868a6e Add secret key to config settings
- e33066a Add privacy policy link in the footer
- b5d472c Add style to the privacy policy
- 5ad1146 Add unstyled privacy policy
- 12711ae Add optional config for Plausible Analytics
- 4dd2139 Consolidate auth handlers
- 6dc39ad Rename "login" terms to "sign in"
- 5c477c9 Create a more specific var for enabling debug auth
- b39e2ee Conditionally render debug login
- 634155d Use "Sign in" instead of "Log in" terminology
- e1b95ca Add local-only debug login method
- f7dcc32 Fix Google icon size
- 919f463 Add config settings for OAuth redirect URIs
- 75ef94b Get Google OAuth working, simplify code
- 7f660f8 Make the login page look nicer
- cfe508b Create package for generating random byte strings
- 2e9d0b8 Salt and hash the SSO user id
- 5744728 Add a TODO, remove seed script
- 8541179 Revert "Rename account.username to account.email"
- 0ee4795 Add an extra check
- 956902a Update deps
- a4e18e2 Fix typo in test name
- 3050cb9 Rename account.username to account.email
- a400a1e Bunch of changes related to OAuth social logins
- c6decfc Fetch actual content from pages
- 0d0e0f4 Implement handlers for pages feature
- ee0c857 Update deps
- 7761e02 Prepare page-related handlers
- 950daea Add repo impls for pages and account_pages
- 43f4528 Rename post list method
- 5ba2bc5 Add model type for Page
- 1acd0e1 Add migrations for page feature tables
- ae1ab7c Center the larger toast messages
v0.4.0
Changelog
- c591eea Bump user agent to v0.4.0
- 0ba2442 Implement an async workflow for adding blogs
- 9c06367 Add service for clearing expired session
- edb7091 Show more posts when viewing a blog
- 6888266 Prep for writing the session cleanup service
- 3d473ad Add admin page for managing accounts
- 02e17ff Implement CSRF prevention
- 7c72b0c Update deps
- bbba969 Fix non-HTMX blog follow URL
- 6c4025c Add password confirmation for registration
- 1774426 Make some small CSS tweaks
- d8dce20 Fix font-size for button link
- ee0e6ee Add header links for site navigation
- 82a2893 Show only followed content if logged in
- 653738f Add helper func for normalizing post URLs
- d8ab6b4 Implement post-auth redirects
- f6149a5 Remove unused sprig template helpers
- 443d832 Remove unused partials
- daf7a30 Add SQL script for seeding the DB
- 51c5858 Reuse some more styles
- 040e82b Fix a few more styles
- f804820 Stack and center footer links on smaller screens
- 4bbc55a Compress CSS for inputs and buttons
- eb95c35 BEM-ify CSS for index page
- a7ac5cb BEM-ify CSS for auth pages
- 0b52357 Use better routes for following / unfollowing blogs
- 77715a6 Fix blogs list CSS
- 1a41f8e Add page and handlers for managing posts
- b4efd3e Style the blog page
- 1bbafd5 BEM-ify a few more classes, fix search value
- 20af9b5 Style the blogs page
- 978f43e Style the error page, fix form styles
- bffc819 Update styling on auth pages
- 22f7237 Replace air with wgo
- 4a3261e Ditch Tailwind for vanilla CSS, WIP
- 46d16db Leave out Alpine for now
- fa47b1f Implement basic toast messages
- 2b0b93e Rename Errors to Validator
- 4de1abe Clarify a comment
- b6ec849 Rename errors.go to error.go
- fa316af Bit of renaming and fixing
- 47237c4 Add helpers to simplify rendering and error handling
- 2da579d Add error reponses and render helpers
- c736aa1 Add 404 Not Found page
- c9a261d Show blog SiteURL to non-admins
- 93d3d04 Implement blog page and deleting
- 2a558a3 Cleanup dist and tmp dirs
- 04634d0 Apply compression middleware to all routes, not just public
- 9b00741 Create and use partials for inputs and buttons
- 78f5d7a Simplify template creation, add sprig helpers
- 8d69802 Use air to enable auto-rebuilding
- d2b88f4 Limit articles to three tags
- b7324df Utilize Mat Ryer's handler pattern to cache templates... this is amazing
- 44be5ec Ensure all template rendering is type-safe
- 80d8c02 Add some ideas for parsing and rendering templates
- a04fede Move blog handlers to web package
- 6a1c70f Pull handler logic out of page package
- 155d7a6 Add ideas for layouts and partials
- ccf64df Pull search bar out of the nav
- 5a9cc75 Get adding and following blogs working with HTMX
- 83e4b89 Fetch js deps silently
- f14e5f8 Add HTMX and Alpine.js to public files
- 1d2e336 Implement blog adding, following, and unfollowing
- c4dd426 Add auth middleware and tests
- 3a4435c Get the blogs page working with fake data
- 18bdbbe Rename storage package to repository
- c9e56c3 Rename query package to finder
- e05e85f Simplify sign out handler
- a301b84 Remove Article model in favor of Query pattern
- 49b3ffb Move errors file to util
- 4f0b8e4 Get signin and signout working
- 71f7c35 Replace tokens with sessions
- 3043306 Remove some more dead API code
- 71bc6e3 Shrink favicon.ico
- d64305e Remove Karla in favor of system fonts
- c0f4d9f Add another test helper, add some comments
- 16e6d7c Improve some comments, add custom 404 page
- d15d213 Add test for LimitRequestBodySize middleware
- a9b872a Implement Chain in terms of Use
- 0048055 Implement form-based registration
- 427d3fb Fix test action
- 34a477b Update deps
- 0e11608 Simplify back down to server-side rendering
- 6834895 Use a toggle for following / unfollowing blogs
- 219b835 Follow blogs upon adding
- e6592cd Update deps
- 07ba5fd Clear client-side tokens if they are expired (or will expire soon)
- b67608d Remove BFF / N+1 brain dump
- 08e4565 Update cache headers even if the blog has no new content
- 6d6d75d Add brain dump on N+1 calls and optimize UI
- 3a70dc3 Update deps
- d4f437f Limit articles to followed blogs if logged in
- ab98b6a Rename test/mock.go to test/fake.go
- ee26434 Add storage methods for searching followed blogs
- 421cf8b Add storage methods for listing and counting blogs by account
- 6b4de7c Simplify sync interval / cooldown
- 523b65c Fix err read/write race condition in SyncAllBlogs
- 5231860 Remove unused "list blogs by account" capability
- 67979b9 Add UI support for following / unfollowing blogs
- f5be8bb Add endpoint for checking if a blog is being followed
- a5848ad Add storage method for counting AccountBlogs
- 5d0ca80 Show followed blogs on blogs page
- 1504228 Add a User-Agent header to all outgoing requests
- 78ae3b1 Fix name of Last-Modified header
- a774e18 Be explicit about table names in queries
- 0cf70b0 Update deps
- 3001da3 Add endpoint for getting an account's followed blogs
- 6495db1 Write a basic benchmark
- 58dffb9 Add backend support for following blogs
- 9a1a910 Plan routes for following blogs
- 8ed7799 Add migration for account_blog table
v0.3.7
Changelog
- 78ad851 Update deps
- 156f2f3 Add admin page for managing posts
- 5a07a30 Add admin page for viewing blogs
- 5415f70 Enable deleting tags, get a multi-action working
- 9502b87 Fix headers formatting
- be85af6 Make fetchAPI helper more universal
- 27974fa Fix status codes, create auth'd fetch helper
- 4819c41 Add ButtonLink, make error page nicer, throw more
- f7ea1e4 Run List+Count queries together, ditch "test in TX" concept
- f1e7bda Flip routes back to admin required
- f949334 Remove unused import
- 3c44c2b Add count to list endpoints, add page for blogs
- a19598f Make validation messages nicer
- 86c2ebd Update deps
- 7b6dc4d Update deps
- 7190afc Clarify some names
- 8c5347e Make invalid username / password a 422
- e852969 Bit more work on error handling
- 7c3c0b6 Create component for SearchInput
- 2807ed2 Omit field if empty
- 2ecb624 Convert errors from a map to a list
- e203fd6 Make the auth pages look a bit nicer
- ede02e9 Limit cards to three tags
- ac6a960 Remove API docs link
- a495237 Show "Relevant" when searching
- 6b10420 Move postcss config into package.json
- b256677 Get register and login actions working
- 4e3706f Get a basic layout working, prep auth pages
- e98f0b1 Organize components and pages into folders
- 32d45aa Split out a few components
- ca212f9 Get the search bar working
- 36810cf More frontend work
- bba07ba Work on the basic site layout
- b9ba022 Start using Tailwind CSS
- c275f81 Add ErrorPage fallback
- 7702052 Use vite dev to observe react's debug behavior
- 281daf3 Get started with React Router
- 15f6dd9 Drop SvelteKit SPA, prep for React
- 4a764d9 Get auth working via local storage... kinda messy
- 32c077d Update deps
- 590a6eb Remove sort from goreleaser changelog
v0.3.6
Changelog
- 17644d8 Adapt May Ryer's middleware Adapter pattern
- 9396860 Add FE pages for blogs
- 62a698c Add RegisterType fix for UTC timestamps
- 4a10774 Add account.is_admin column
- 0dc4e39 Add backend endpoint for creating tokens
- 5f57250 Add deploy command to Makefile
- f0e6061 Add endpoint and test for creating accounts
- e58b872 Add endpoint for creating tags
- 84d95c0 Add endpoint for deleting blogs
- 357c6ee Add endpoint for deleting posts
- 9733fc8 Add endpoint for deleting tags
- 35fcece Add extra checks to creation tests
- 806528b Add goreleaser version
- 5a3c15f Add middleware and tests for checking user auth
- 21fa126 Add migrations, models, and storage for Accounts and Tokens
- f8a32e5 Add missing comment
- 65b7abf Add missing return to AccountRequired mware
- 858d50c Add mware for AccountRequired and AccountOptional
- d600bcb Add other API doc renderers for fun
- 3ea48fe Add posts to blog page
- 616e151 Add route for managing individual posts
- 10295b0 Add test and clearer error message for dupe username
- 02c8568 Add test for AdminRequired middleware
- e4bd3f6 Add tests for middleware and validator
- 220cedb Add timeutil package for rounded UTC times
- 3057182 Add vite build --watch command, update Makefile
- 80260f7 Delete reader subpackages
- 6e2de6f Fix an old admin ref in a comment
- 29a3146 Fix some bugs, remove tz from PG timestamps, add endpoint for adding blogs
- 0ae0d89 Fix test name
- bb77011 Fix ts_query call for tags, add some FE deps
- 4798e2e Format middleware usage
- c77207a Format routes
- 2e8003a Increase SyncInterval and SyncCooldown durations
- 9372fae Lock "meta" routes behind auth middleware
- 23d1040 Make GenerateToken visible
- aca0c74 Make posts a per-blog item
- 33914a4 Make route IDs more specific
- 081f9c3 Migrate to the Go 1.22 enhanced router
- d23360e Move web fetch impl to fetch package
- 15416f5 Refactor a couple more routes
- d834c23 Refactor a few handlers to closure their deps
- bf96e8f Refactor blog handlers
- bc7f29c Refactor post handlers
- 9246aee Refactor tag handlers
- d7a938b Remove --skip-validate from goreleaser command
- aa1fbaa Remove TODO
- b3d18cc Remove admin subpackage from api
- da98325 Remove admin subpackages for model and storage
- 3f094ec Remove superforms and zod, just use FormData
- b68fd2f Rename FE code from Post to Article
- d07f0f5 Rename Middleware type and Use func
- c50d27b Rename Router() to Handler()
- b68bf8a Rename domain package to model
- bb9333a Rename interface{} to any
- d5816f5 Rename reader/post to reader/article
- 131ad61 Rename some test vars, prep for testing w/ auth
- 92563db Return errors from NewFoo domain obj constructors
- cc2bfeb Return http.Handlers from handler methods
- 1b1347a Round timestamps to microseconds (which is what PG supports)
- 10db980 Simplify API handler creation
- 404a517 Simplify create tag form
- fa73aa7 Simplify token storage API
- 1651b7c Simplify web handler, ditch application concept
- f2c60cc Simplify web package structure
- e42b6a6 Specify a ttl when creating tokens
- bf5f3be Start messing around with superforms
- f8b4348 Start working on the FE tags page
- b57d4f4 Tweak a few tests
- ee039c8 Tweak the "add tag" form a bit
- d30b33f Undo changes to docker compose file
- e4b8f88 Undo timestamp migration, use time.Equal for comparison
- 73baac3 Update a couple comments
- 112128d Update deps
- 016f675 Update deps
- 2c6199e Update deps
- 8f96390 Update deps
- 2963c27 Update deps
- 382799e Update deps
- 56b598a Update deps
- 1f29560 Update deps
- 14d5e0a Update deps
- 3785343 Update deps
- 1c8eb42 Update deps, add a couple comments
- 56c4fdd Update frontend deps
- 020abec Update goreleaser-action version
- 3004a50 Update sync service test name
- 15aaf0b Use actions/setup-go@v5