Skip to content
Draft
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
173 changes: 110 additions & 63 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,101 +6,148 @@

## Overview

**Django-Projects** is a collection of my projects built using Django, showcasing different features and integrations of the Django web framework. The repository includes a range of project examples, from basic templates to more advanced applications with frontend and backend code.
**Django-Projects** is a collection of Django projects showcasing different features and integrations of the Django web framework. This repository contains five distinct applications, each demonstrating various aspects of Django development, from basic CRUD operations to more advanced features like APIs and e-commerce functionality.

## Repository Highlights
## Projects in This Repository

- **Django-based backend**: Core logic and APIs implemented with Python and Django.
- **Rich frontend**: Projects utilize JavaScript, SCSS, and CSS for interactive and responsive user interfaces.
- **Sample scripts**: Utilities and setup scripts in PowerShell and Batchfile, aiding development and deployment.
### 1. Blog
A full-featured blog application with a Django backend and Bootstrap frontend.
- **Location**: `/Blog`
- **Features**: Blog post creation, reading, and management with API support

## Language Breakdown
### 2. Ecommerce
An e-commerce platform built with Django.
- **Location**: `/Ecommerce`
- **Features**: Product catalog, shopping cart functionality

| Language | Percentage |
| ----------- | ---------- |
| JavaScript | 50.9% |
| SCSS | 26.4% |
| CSS | 16.7% |
| PowerShell | 2.3% |
| HTML | 1.9% |
| Python | 1.7% |
| Batchfile | 0.1% |
### 3. Social Network
A social networking application.
- **Location**: `/social_network/social`
- **Features**: User profiles, social interactions

> *Note: This repository focuses heavily on frontend implementations with Django as the backend.*
### 4. Todo List
A simple todo list application.
- **Location**: `/todo-list/todolist`
- **Features**: Task management with create, read, update, and delete operations

### 5. Weather App
A weather information application that displays weather data for cities worldwide.
- **Location**: `/weather_app/weatherApp`
- **Features**: City weather lookup using Django

## Technology Stack

- **Backend**: Python, Django
- **Frontend**: HTML, CSS, JavaScript, Bootstrap
- **Database**: SQLite (default Django database)
- **Additional Tools**: Node.js and npm for frontend dependencies (in some projects)

## Getting Started

### Prerequisites

- [Python 3.x](https://www.python.org/)
- [Django](https://www.djangoproject.com/)
- [Node.js and npm](https://nodejs.org/) (for frontend assets)
- Optionally: [Sass](https://sass-lang.com/) for SCSS compilation
- [Node.js and npm](https://nodejs.org/) (for frontend assets in some projects)

### Installation

Each project in this repository is a standalone Django application. To run any project:

1. **Clone the repository**
```bash
git clone https://github.com/ruskovin/Django-Projects.git
cd Django-Projects
```

2. **Backend setup**
- Create and activate a virtual environment:
```bash
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
```
- Install Python dependencies:
```bash
pip install -r requirements.txt
```
- Set up your database (migrations):
```bash
python manage.py migrate
```

3. **Frontend setup**
- Install frontend dependencies:
```bash
npm install
```
- (If using SCSS) Compile styles:
```bash
npm run build-css
# or manually using sass:
sass static/scss:static/css
```

4. **Run the server**
2. **Navigate to the project you want to run**
```bash
# For Blog project:
cd Blog

# For Ecommerce project:
cd Ecommerce

# For Social Network:
cd social_network/social

# For Todo List:
cd todo-list/todolist

# For Weather App:
cd weather_app/weatherApp
```

3. **Set up a virtual environment** (recommended)
```bash
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
```

4. **Install dependencies**
```bash
# Install Django and project-specific dependencies
pip install django
# Some projects may have a requirements.txt file
pip install -r requirements.txt # if available

# For projects with frontend dependencies (Blog, Todo List):
npm install # if package.json exists
```

5. **Run migrations and start the server**
```bash
python manage.py migrate
python manage.py runserver
```

6. **Access the application**
Open your browser and navigate to `http://127.0.0.1:8000/`

## Usage

- Access the Django server at `http://127.0.0.1:8000/`
- Explore different project folders for application-specific details.
- Each project may have its own README and setup instructions.
Each project is independent and can be run separately:

1. Navigate to the project folder you want to explore
2. Follow the installation steps above for that specific project
3. Access the application at `http://127.0.0.1:8000/`
4. Some projects may have their own README files with additional details

## Folder Structure

```
Django-Projects/
├── project_1/
│ ├── ...
├── project_2/
│ ├── ...
├── static/
│ ├── js/
│ ├── scss/
│ ├── css/
├── templates/
│ ├── ...
├── requirements.txt
├── manage.py
└── ...
├── Blog/ # Blog application
│ ├── manage.py
│ ├── BlogAPP/
│ ├── myblog/
│ └── myblog_api/
├── Ecommerce/ # E-commerce application
│ ├── manage.py
│ ├── Ecommerce/
│ ├── e_commerce_app/
│ └── templates/
├── social_network/ # Social networking app
│ └── social/
│ ├── manage.py
│ └── social/
├── todo-list/ # Todo list application
│ └── todolist/
│ ├── manage.py
│ ├── tasks/
│ └── todolist/
├── weather_app/ # Weather information app
│ └── weatherApp/
│ ├── manage.py
│ ├── weather/
│ └── weatherApp/
└── README.md
```

## Contributing
Expand All @@ -120,7 +167,7 @@ This repository is for educational and demonstration purposes. See individual pr
## Acknowledgments

- [Django](https://www.djangoproject.com/)
- [Sass](https://sass-lang.com/)
- [Bootstrap](https://getbootstrap.com/)
- [Node.js](https://nodejs.org/)

---
Expand Down