"REST API for online clothing store"
Here is the formatted list with punctuation and structure:
Main modules and their functionalities:
**1. Authentication and Authorization**
- Registration via phone (sending/verification of code);
- JWT authentication (login/logout/token refresh);
- Simple token authentication;
- Password reset (sending code → verification → setting new password);
- Social authorization (Google, Facebook, Apple);
- Creating a superuser.
**2. User Profile**
- Viewing and updating profile information;
- Managing delivery addresses (CRUD operations).
**3. Cart**
- Adding/removing products;
- Viewing cart contents.
**4. Products and Categories**
- Viewing products (latest, list, by categories, with filtering);
- Managing favorite products;
- Viewing product options (sizes, colors);
- Managing categories (for admins);
- Managing brands, colors, sizes (for admins).
**5. Orders and Payment**
- Creating an order;
- Paying for an order;
- Checking order status;
- Processing successful payment.
**6. Reviews**
- Adding reviews;
- Viewing list of reviews.
**7. Administration**
- Managing categories;
- Managing genders (for categories);
- Managing brands;
- Managing colors;
- Managing sizes;
- Adding/updating products.
**8. Auxiliary functions**
- WebSockets for messaging;
- Handling pending tasks;
- Assigning tasks.
**Implementation features:**
1. Uses **two types of authentication**:
- JWT;
- Simple tokens.
2. **Operation confirmation**:
- Sending codes via Celery/Redis.
3. **API structure**:
- Public endpoints;
- Admin endpoints.
4. **Additional features**:
- Social authorization;
- Flexible product filtering system;
- Full management of cart and orders.
**Summary:**
This functionality fully covers the needs of an online clothing store — from **user registration** to **order placement** and **catalog administration**.
Main modules and their functionalities:
**1. Authentication and Authorization**
- Registration via phone (sending/verification of code);
- JWT authentication (login/logout/token refresh);
- Simple token authentication;
- Password reset (sending code → verification → setting new password);
- Social authorization (Google, Facebook, Apple);
- Creating a superuser.
**2. User Profile**
- Viewing and updating profile information;
- Managing delivery addresses (CRUD operations).
**3. Cart**
- Adding/removing products;
- Viewing cart contents.
**4. Products and Categories**
- Viewing products (latest, list, by categories, with filtering);
- Managing favorite products;
- Viewing product options (sizes, colors);
- Managing categories (for admins);
- Managing brands, colors, sizes (for admins).
**5. Orders and Payment**
- Creating an order;
- Paying for an order;
- Checking order status;
- Processing successful payment.
**6. Reviews**
- Adding reviews;
- Viewing list of reviews.
**7. Administration**
- Managing categories;
- Managing genders (for categories);
- Managing brands;
- Managing colors;
- Managing sizes;
- Adding/updating products.
**8. Auxiliary functions**
- WebSockets for messaging;
- Handling pending tasks;
- Assigning tasks.
**Implementation features:**
1. Uses **two types of authentication**:
- JWT;
- Simple tokens.
2. **Operation confirmation**:
- Sending codes via Celery/Redis.
3. **API structure**:
- Public endpoints;
- Admin endpoints.
4. **Additional features**:
- Social authorization;
- Flexible product filtering system;
- Full management of cart and orders.
**Summary:**
This functionality fully covers the needs of an online clothing store — from **user registration** to **order placement** and **catalog administration**.