Back to projects

04 / 04

Social Network

A social network in Go and Next.js, with followers, groups, events and live chat.

  • Wrote Go handlers for posts, comments, reactions and followers, and for the home feed and profile posts.
  • Built the Next.js group pages with their events, plus notifications, user search, the messages page and the responsive layout.
  • Added posts that only chosen followers see, from a follower picker to a post_visibility table joined in the feed query.
Dates
Feb 2025 – Apr 20252 months
Type
Full-stack web app
Status
Source on GitHub
Team · My role
Team of 6Go handlers, groups, private posts

Stack

  • Go
  • Gorilla WebSocket
  • SQLite
  • golang-migrate
  • bcrypt
  • Next.js 15
  • React 19
  • Docker Compose
Sign-in page

What it is

A social network built by a team of 6. Profiles are public or private, and a post goes to everyone, to followers, or to followers you pick. Groups have invitations, posts, events and a group chat, and private chat runs over WebSockets. The back end is Go with Gorilla WebSocket and SQLite migrations; the front end is Next.js 15 and React 19, run together with Docker Compose.

What I did

I worked on both sides from February to April 2025, in 82 commits. In the Go back end I wrote handlers for posts, comments, reactions and followers, and for the home feed and the posts on a profile. In the Next.js front end I built the group pages with their events, the notifications, the user search and the messages page, and made the layout responsive. I also added private posts for chosen followers, from the picker in postCreate.js to a new post_visibility table.

Results

Private posts for chosen followers work from the post form to the feed. Docker Compose runs the Go API and the Next.js app together. There is no live demo; the code is on GitHub.

Next project 01 / 04

01Blog