Dev Exchange is a dynamic and interactive platform designed for developers to connect, collaborate, and share knowledge. Dev Exchange is inspired by the popular Q&A platform Stack Overflow and aims to provide a vibrant community where developers can ask questions, provide answers, and share insights on a wide range of programming topics.
Dev Exchange is built with a powerful and modern technology stack to ensure performance, scalability, and security:
Robust Authentication: A secure and reliable authentication system that supports user registration, login, and logout processes. This ensures that user data is protected and access to the platform is controlled.
User Profiles: Users can create and customize their profiles, providing a personalized experience. Features include the ability to update profile information and manage personal data.
Secure CRUD Functionality: Dev Exchange offers a comprehensive CRUD (Create, Read, Update, Delete) system for questions and answers. The platform ensures that all operations are conducted securely, protecting against unauthorized access and data breaches.
Powerful Admin Panel: An intuitive and powerful admin panel that allows administrators to manage the platform efficiently. Features include user management, content moderation, and analytics, providing full control over the platform's operations.
https://github.com/WatashiwaSid/devexchange-django
cd `devexchange-django`
python -m venv env
source env/bin/activate (Linux)
./env/Scripts/activate (Windows)
pip install -r requirements.txt
python manage.py migrate
python manage.py createsuperuser
python manage.py runserver
This version of the source code uses Tailwind CSS via the public CDN to render styles. The project also includes a pre-built CSS file, which can be utilized with the load static tag provided by the Jinja templating engine.
If you wish to customize and build your own Tailwind CSS files, follow these steps:
Make the necessary changes in the settings.py file located in the stackoverflow directory of the project. Ensure that all Tailwind configurations and paths are correctly set up according to your requirements.
Building Tailwind CSS requires Node.js. Ensure that Node.js is installed on your system. You can download it from the official Node.js website.
In the settings.py file, configure the Node.js path appropriately to ensure the build process can locate the Node.js binary.
Once all necessary configurations are complete, run the following command to render Tailwind CSS:
python manage.py tailwind start
You can build the final css file with the following command:
python manage.py tailwind build
You can find a reference to setting up tailwind with django at chaicode docs.
Put all media files in the /media folder in the same structure as shown in the following screenshot:
.
Dev Exchange prioritizes security and follows OWASP standards to protect against common vulnerabilities:
Each vulnerability is manually tested and mitigated to ensure the safety and privacy of our users.
We welcome and appreciate contributions that help improve this repository! Here's how you can get involved:
Suggest Improvements: If you have ideas to make this repository better or want to add new features to this web app, feel free to fork the repository and create a pull request.
Report Issues: Notice something not working as expected? Open an issue to let us know, and we’ll address it as soon as possible.
Read the Guidelines: Before submitting a pull request, please ensure you’ve read our Contribution Guidelines to maintain consistency and quality in the codebase.
Stay Connected: If you like what you see, please star the repository to keep up with the latest updates. Also, follow me on Linkedin for more exciting projects and updates!