ChatForm is a Django-based forum-style web application that prioritizes user experience and introduces a fresh, captivating design. This project provided an opportunity to sharpen my skills in Git, web development, and full-stack programming. ChatForm is not just about discussion—it's about community, connection, and a seamless user experience.
View the deployed application here
- Development: Independently developed and deployed a dynamic chat and forum platform using Django, JavaScript, and PostgreSQL/SQLite.
- Key Features:
- Live room updates
- User authentication and profile management
- RESTful APIs for seamless data interaction
- Design: Utilized Figma for prototyping, translating the designs into responsive HTML and CSS implementations.
Current Features
- User authentication and profile management
- Interactive activity feed
- Responsive design
- User model design with customizable options
- Forum-style messaging system
- RESTful APIs for seamless data interaction
Planned Features
- Edit Message Option: Allow users to edit their messages after posting.
- Room and Topic Creation: Enable the creation of custom rooms and topics in the activity feed.
- Decluttering Features: Introduce options to reduce the number of rooms and activities initially displayed, with options to expand the view.
- Follower System: Implement a system where users can follow others and filter their feed to show content from individuals they follow.
- Frontend: HTML, CSS, JavaScript
- Backend: Django, Python
- Database: Sqlite/PostgreSQL
- Version Control: Git
- Deployment: PythonAnywhere
Setup Instructions
-
Clone the repository:
git clone https://github.com/SamuelKhoo2003/chatform.git
-
Navigate to the project directory:
cd chatform
-
Install the required dependencies:
pip install -r requirements.txt
-
Run the development server:
python manage.py runserver
-
Access the application in your browser at
http://localhost:8000/
.
Contributions are welcome! If you'd like to contribute, please fork the repository and use a feature branch. Pull requests are warmly welcome.
- Fork the repo
- Create a new feature branch (
git checkout -b feature/YourFeature
) - Commit your changes (
git commit -m 'Add some YourFeature'
) - Push to the branch (
git push origin feature/YourFeature
) - Open a Pull Request
Please make sure your code follows the project's coding standards and passes all tests before submitting!
Feel free to reach out to me via LinkedIn or email if you have any questions or suggestions.
This project was created as part of my journey to improve my full-stack development skills.