Skip to content

shtayeb/RssFeed

Repository files navigation

An RSS feed aggragtor built with GO.

View the site Analytics

Tech Stack

  • GO
  • Templ
  • TailwindCSS
  • v0.dev
  • GoatCounter for Analytics
tailwindcss --input tailwind.css --output test.css --content basic.templ

TODO

Not Started

  • Create feed follow/unfollow CRUD
  • [] Create a new post card
  • [] Make the post scrapping more generic to cover more xml formats
  • [] Email notification for your feed - when new post is added
  • [] User followings feeds filter
  • [] Verify new users email

Done

  • Pagination for posts list page
  • Use session management package
  • Setup Middleware
  • Setup Middleware group with go-chi for authenticated routes
  • (Using a package) Setup session management - DB table - cookies - hashed token
  • In login handler create a new session entry to the sessions table
  • Inlcude the session data in the context for the views
  • Link Middleware and session to get auth user
  • Get the user details from context in the templ files
  • Create a logout handler
    • Delete the session when user logs out
    • If user is loggedin redirect them to referrer
  • Build a dark theme based on color inverting check the extention for reference
  • /posts
  • Create page for post list,
  • /feed/{feedId}/posts -> make Post templ customizable
  • User profile management
    • Create a user profile dropdown for auth user
    • Error handling with htmx
    • Fix Change password error: No consistent hashing for passwords

Backlog

  • [] auth

    • Testing reset-password
      • Create a reset_password table and save the reset requests there. right now users can reset their passwords as much as they want as long as their token is valid
  • CSRF token protection for the forms

  • Check django requres object for any other userful data to be included in the context

  • Check the laravel readirect()->back() and implement it for the GO

About

RSS aggregator built with GO

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published