summer-of-code-2024

DevClub Summer of Code 2024

Backend Development: Week 1

Learning Tasks

So, let’s get started with learning first of all… Read and Digest the following resources before moving forward to the Implementation Tasks.

Each Request sent from the client’s side results in a response from server which has a few components including :

Additional Concepts : These are some of the vital concepts/Tools for backend development:

Task 1: Environment Setup

Bonus Tasks for Week 1

  1. Database Indexing: Add indexing to frequently queried fields in the models (e.g., SKU for InventoryItem, email for Customer).
  2. Model Validation: Implement validation methods within the models to ensure data integrity (e.g., price must be non-negative, email format validation).
  3. Advanced Relationships: Create more complex relationships, such as a self-referential relationship for categories within InventoryItem (e.g., parent-child hierarchy for product categories).
  4. Seed Data: Write scripts to populate the database with initial seed data for inventory items, customers, and transactions for testing purposes.
  5. Model Documentation: Create comprehensive documentation for each model, including field descriptions, relationships, and example usage.
  6. Custom Model Methods: Add custom methods to models for common operations (e.g., calculating total value of inventory items, retrieving all transactions for a customer).
  7. Database Schema Visualization: Generate a visual representation of the database schema using a tool like ERAlchemy or dbdiagram.io to help understand model relationships.