# ⚡ Test Project: Module A — Speed Test ## 1. Project Overview This assessment is a **Speed Test** designed to quickly and accurately evaluate practical proficiency across web technologies. Competitors must complete a total of 20 independent tasks across four categories — **A (Design)**, **B (Layout)**, **C (Frontend)**, and **D (Backend)** — within the allotted time. Each task is independent and may be attempted in any order. --- ## 2. Tech Stack & Constraints | Category | Allowed Technologies | Restrictions | | :--- | :--- | :--- | | **A. Design** | GIMP | No other image editors (e.g., Photoshop) permitted | | **B. Layout** | HTML, CSS | JavaScript is not permitted | | **C. Frontend** | JavaScript (Vanilla) | No external libraries or frameworks permitted | | **D. Backend** | PHP, MySQL | Database must be connected using PDO | * All deliverables will be evaluated in a desktop Chrome browser. * Save each task's deliverable in a subdirectory named after the task ID under `/module_a/`. (e.g., `/module_a/a1/`, `/module_a/b1/`) * Design tasks must include the GIMP source file (`.xcf`) in the submission directory. --- ## 3. Tasks ### 🎨 A. Design — GIMP Proficiency > **Provided files**: Files for A1 (`source.png`), A2 (`base.jpg`), and A3 (`photo.jpg`, `mask.png`) are pre-placed in each task's working directory. A4 and A5 have no provided files; competitors must create all assets from scratch. #### **A1. Layer Compositing and Text Placement** `Easy` Create an image in GIMP using a layered structure. * Canvas size: **800×400px**, Resolution: **72dpi** * **Layer 1**: Fill the background with the solid color `#2C3E50`. * **Layer 2**: Open the provided image (`source.png`), place it at the **center** of the canvas, and set its opacity to **70%**. * **Layer 3**: Add the text **"Hello, GIMP"** in white (`#FFFFFF`) at 36pt, and position it at the top-left of the canvas **(x: 20px, y: 20px)**. * Save the project as a `.xcf` file first. Then flatten all layers (Flatten Image) and export the result as `result.png`. #### **A2. Selection and Layer Compositing** `Easy` Apply shape effects to an image using GIMP's selection tools and layers. * Open the provided image (`base.jpg`) as the background layer. * **Effect 1**: Add a new layer. Use the Rectangle Select tool to select the region from **(0, 0) to (200, 200)** in the top-left corner, fill it with `#E74C3C`, and set this layer's opacity to **60%**. * **Effect 2**: Add another new layer. Create an elliptical selection with a diameter of **150px** at the **center** of the image. Go to `Selection → Border`, set the border width to **3px**, and fill the resulting selection with `#FFFFFF`. * Save the project as a `.xcf` file first. Then flatten all layers (Flatten Image) and export the result as `result.jpg`. #### **A3. Color Correction and Layer Mask** `Normal` Apply color correction and a layer mask to the provided image (`photo.jpg`) in GIMP. * **Color correction**: Use the Hue-Saturation tool to increase Saturation by **+40**. * **Curves adjustment**: Use the Curves tool to raise the output value of highlights by **+20 or more** and lower the output value of shadows by **-20 or less** to increase contrast. * **Layer mask**: Add a layer mask to the image layer. Paste the provided mask image (`mask.png`) into the mask layer so that the background outside the subject is removed. * Save the project as a `.xcf` file first. Then export the result as `result.png`, ensuring the transparent background is preserved (PNG format). #### **A4. Text Effect and Glow** `Normal` Apply a glow visual effect to text in GIMP. * Canvas size: **600×200px**, Background color: `#1A1A2E` * Add the text **"SPEED TEST"** in white (`#FFFFFF`), Bold, 60pt, centered on the canvas. * Duplicate the text layer and place the duplicate **below** the original text layer. * Rasterize the duplicate layer (Layer → Rasterize). In the Layers panel, set the duplicate layer's **Mode** to **`Color`** first. Then set the foreground color to `#4A90D9` and apply `Edit → Fill with Foreground Color` so the blue color is applied. * Apply **Gaussian Blur** with a radius of **8px** to the duplicate layer to complete the outer glow effect. * Save the project as a `.xcf` file first, then export the result as `result.png`. #### **A5. Text Warp and Filter Effects** `Hard` Rasterize text and apply a combination of Distorts filters in GIMP to create visual distortion effects. * Canvas size: **800×300px**, Background color: `#0D0D0D` * Add the text **"DISTORTION"** in white (`#FFFFFF`), Bold, 72pt, centered on the canvas. * Rasterize the text layer (Layer → Rasterize). * Apply the following two Distorts filters to the rasterized text layer in order: * **Ripple**: Amplitude **8**, Wavelength **40**, Orientation: Horizontal * **Whirl and Pinch**: Whirl angle **20** degrees, Pinch **0**, Radius **1.0** * Duplicate the distorted text layer. Apply **Gaussian Blur** with a radius of **3px** to the duplicate, then place the duplicate **below** the original layer to create a ghosting effect. * Save the project as a `.xcf` file first, then export the result as `result.png`. --- ### 📐 B. Layout — HTML / CSS Only #### **B1. Flexbox Card Layout** `Easy` Build a card list layout using HTML and CSS only. * Use **Flexbox** to arrange cards **4 per row**. (Use `flex-wrap: wrap`) * Each card must contain: an image area (`
`, height **160px**, with a background color), a title (`

`), body text (`

`), and a button (`