Welcome to the TruthGate frontend documentation! TruthGate is a social media application built using React.js and Redux. This documentation provides an overview of the frontend structure, features, and how to use them.
-
Authentication
- Users can securely log in to their accounts.
- Logout functionality is available to safely log out users.
-
News Feed
- Users can view a personalized news feed displaying posts from people they follow.
- Posts are displayed in chronological order, with the latest posts appearing at the top.
-
Interactions
- Users can like and comment on posts.
- Real-time updates are provided when other users interact with posts.
-
User Search
- Users can search for other users by their usernames.
- Search results are displayed in real-time as users type their queries.
-
Profile Management
- Users can add/edit their bio information to provide additional details about themselves.
- Profile deletion functionality is available to permanently delete user accounts.
-
Dark and Light Mode
- TruthGate supports both dark and light modes to enhance user experience.
- Users can toggle between modes based on their preference.
- React.js: A JavaScript library for building user interfaces.
- Redux: A predictable state container for managing application state.
- Axios: A promise-based HTTP client for making requests to the backend API.
- React Router: A routing library for navigating between different pages in a React application.
- React-Redux: Official Redux bindings for React to manage state in React components.
The frontend codebase follows a standard folder structure to maintain organization and modularity.
truthgate-frontend/
├── src/ │ ├── components/ # Reusable UI components │ ├── pages/ # Individual pages of the application │ ├── redux/ # Redux setup and features │ │── styles/ # Global styles and styling variables │ ├── utils/ # Utility functions and helpers │ ├── App.js # Root component of the application │ └── main.js # Entry point of the application │ ├── public/ # Public assets and index.html ├── .gitignore # Git ignore file ├── package.json # Package configuration file └── README.md # Project README file
To run the TruthGate frontend locally, follow these steps:
- Clone the repository from GitHub:
git clone <repository-url>
. - Navigate to the project directory:
cd truthgate-frontend
. - Install dependencies:
npm install
. - Start the development server:
npm start
. - Open your browser and go to
http://localhost:3000
to view the application.
Contributions to the TruthGate frontend are welcome! If you find any bugs or have suggestions for new features, please open an issue or submit a pull request on GitHub.
This project is licensed under the MIT License - see the LICENSE file for details.
For any inquiries or support, please contact the project maintainer:
- Name: Dip Pal
- Email: [email protected]
Thank you for using TruthGate! We hope you enjoy the experience.