Skip to content

Marwan8A/Text-Based-Facebook-Replica

Repository files navigation

📘 Text-Based Facebook Replica

A terminal-based social media application built in C using linked lists, dynamic memory allocation, and modular program design.

Language C Terminal App Completed


Overview

The Text-Based Facebook Replica is a console-based social networking application developed in C. It simulates core social media functionality such as user registration, login, post creation, friend management, and viewing posts, all through a text-based interface.

The project was built to strengthen fundamental programming concepts in C, with a strong focus on linked lists, dynamic memory management, modular design, and user interaction through the terminal.


Features

  • Register a new user
  • Log in with an existing account
  • Change a user's password
  • Add and remove posts
  • Add and remove friends
  • Display a user's full post history
  • Display a user's friend list
  • Load initial user data from a CSV file
  • Store:
    • users in a sorted linked list
    • friends in a sorted linked list
    • posts in stack order
  • Clean up all dynamically allocated memory before exit

Demo Flow

The application follows this general workflow:

  1. Load predefined users from a CSV file
  2. Display the main menu
  3. Allow the user to:
    • register
    • log in
    • exit
  4. Once logged in, allow the user to:
    • manage profile
    • manage posts
    • manage friends
    • display another user's posts
    • return to the main menu

Tech Stack

  • Language: C
  • Core Concepts Used:
    • linked lists
    • dynamic memory allocation
    • structs
    • pointers
    • file handling

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages