Skip to content

harry97uk/01F-SocialNetwork

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

socialnetwork

(Chat made...)

Frontend:

  1. Setup:

    Choose a JavaScript framework (React, Vue.js, Svelte, or Mithril). Set up the project structure.

  2. User Authentication:

    Create registration and login forms. Implement sessions and cookies for keeping users logged in. Add a logout option.

  3. Profile Page:

    Design and create a user profile page. Display user information (except password). Display user activity (posts). Implement UI for followers and following. Toggle for making profile public or private.

  4. Posts:

    Implement creating, editing, and deleting posts. Allow image or GIF attachments in posts. Implement comments on posts. Privacy options for posts (public, private, custom).

  5. Groups:

    Implement group creation, joining, and invitations. Create group browsing section. Design group page (posts, comments, members). Implement event creation within groups, including RSVP options.

  6. Followers:

    Implement UI for sending and receiving follow requests. Display followers and following on profile.

  7. Chats:

    Implement UI for private messaging between users. Include emoji support in chat. Implement group chat for groups.

  8. Notifications:

    Implement UI for displaying notifications. Separate UI elements for chat messages and other notifications.

  9. Responsiveness and Performance:

    Ensure the website is responsive on various devices. Optimize performance.

Backend:

  1. Setup:

    Choose a web server (e.g. Caddy) or create your own. Set up the project structure. Set up SQLite database and create an Entity Relationship Diagram.

  2. User Authentication:

    Implement user registration and login logic. Implement sessions and cookies for authentication.

  3. Profile:

    Implement endpoints to retrieve and update user profiles. Implement logic for public and private profiles.

  4. Posts:

    Implement endpoints for creating, retrieving, updating, and deleting posts. Implement logic for post visibility based on privacy settings. Implement comments logic.

  5. Groups:

    Implement endpoints for creating, joining, and managing groups. Implement group invitation logic. Implement event creation within groups, including RSVP options.

  6. Followers:

    Implement endpoints for sending, accepting, and removing follow requests. Implement logic for followers and following.

  7. Chats:

    Implement WebSocket endpoints for real-time chat. Store chat history in the database.

  8. Notifications:

    Implement endpoints for retrieving notifications. Implement logic for generating notifications based on user actions.

  9. Images Handling:

    Implement middleware for handling image uploads. Support JPEG, PNG, and GIF types.

  10. Migrations:

    Implement migrations to create database tables. Use a package like golang-migrate for managing migrations.

  11. Docker:

    Create Docker images for backend and frontend. Set up Docker Compose for local development.

  12. Testing and Debugging:

    Write unit and integration tests for backend logic. Debug and resolve issues.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published