A Django-based web application that enables developers to share, organize, and manage code snippets efficiently. The platform is designed with productivity and collaboration in mind, offering robust features for storing, searching, and interacting with code examples.
- User Authentication: Secure registration and login system for managing personal code snippets.
- Code Snippet Management: Create, edit, and delete code snippets with metadata such as language, tags, and descriptions.
- Syntax Highlighting: Supports multiple programming languages with syntax highlighting for enhanced readability.
- Search and Filter: Quickly search and filter snippets by title, tags, language, and author.
- Bookmarks: Bookmark favorite snippets for easy access.
- Rating System: Mark snippets as useful or not useful to help surface high-quality content.
- Responsive Design: Fully accessible on desktop and mobile devices.
- Author and Language Browsing: Browse snippets by language or author for topical exploration.
- Backend: Django (Python)
- Frontend: HTML, CSS (Bootstrap), JavaScript
- Database: SQLite (default, easily configurable to other databases)
- Syntax Highlighting: Pygments
-
Clone the repository:
git clone https://github.com/SulemanMughal/code-sharing.git cd code-sharing
-
Install dependencies:
pip install -r requirements.txt
-
Apply migrations:
python manage.py migrate
-
Create a superuser:
python manage.py createsuperuser
-
Run the development server:
python manage.py runserver
-
Access the application: Open your browser and visit http://127.0.0.1:8000/.
- Register or log in to start creating and managing your code snippets.
- Use the navigation bar to view all snippets, browse by language, author, or manage your bookmarks.
- Add new snippets with syntax highlighting and descriptive tags.
- Bookmark and rate snippets to curate and promote useful code for the community.
Contributions are welcome! Please fork the repository, create a feature branch, make your changes, and submit a pull request.
- Fork the repository
- Create your feature branch:
git checkout -b feature/YourFeature
- Commit your changes:
git commit -am 'Add some feature'
- Push to the branch:
git push origin feature/YourFeature
- Open a pull request
This project is licensed under the MIT License.
For any questions or feedback, please open an issue or contact SulemanMughal.