This project is a Django-based social media web application designed for users to express their opinions, thoughts, and ideas on various topics. The application provides essential social media features, allowing users to interact with one another and perform various CRUD (Create, Read, Update, Delete) operations on their posts. The platform encourages opinion sharing and engagement through an interactive commenting system and robust user authentication.
-
User Authentication:
- Secure user registration, login, and logout functionality.
- Only authorized users can access, create, or modify content on the platform.
-
CRUD Operations:
- Users can create, read, update, and delete their posts.
- Easy-to-navigate interface for viewing and managing content.
-
Commenting System:
- Users can comment on each other’s posts, encouraging community interaction and discussions.
- Comments can be created, read, and deleted, allowing dynamic conversations.
-
Like/Dislike System:
- Implement a like/dislike feature to allow users to react to posts.
-
Opinion Posting:
- The platform is specifically designed for users to post their thoughts and opinions on a wide range of topics.
- Users can freely express themselves and engage in meaningful exchanges.
- Django: Web framework for developing the server-side of the application.
- SQLite: Default database used for development (can be replaced with other databases like PostgreSQL or MySQL).
- HTML/CSS: For front-end structure and styling.
- JavaScript: To add interactive features to the front-end.
The project follows Django's default structure with additional folders for templates and static files.
-
Clone the repository and navigate to the project directory:
git clone https://github.com/Pr45H4nt/SaySomething.git cd socialmediaweb
-
Create a virtual environment and activate it:
python -m venv env source env/bin/activate # On Windows use `env\Scripts\activate`
-
Install the required dependencies:
pip install -r requirements.txt
-
Apply migrations to set up the database:
python manage.py migrate
-
Run the development server:
python manage.py runserver
-
Access the application at
http://127.0.0.1:8000
in your web browser.
- Register: Users can create an account by registering on the platform.
- Login: Once registered, users can log in to access features like posting and commenting.
- Post: Users can create new posts, edit their existing posts, or delete them.
- Comment: Users can comment on other users' posts to engage in discussions.
- Logout: Users can securely log out when done.
- Notification System: Add notifications for new comments or interactions on user posts.
- Profile Customization: Allow users to add profile pictures and bio information.
Prashant Paneru