Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/derstimmler/better-aliexpress

Extension to enhance your AliExpress experience
https://github.com/derstimmler/better-aliexpress

aliexpress better browser-extension extension webextension

Last synced: about 2 months ago
JSON representation

Extension to enhance your AliExpress experience

Awesome Lists containing this project

README

        


Better AliExpress Logo

# Better AliExpress

![build](https://github.com/DerStimmler/better-aliexpress/actions/workflows/build.yml/badge.svg)
[![GitHub license](https://img.shields.io/github/license/DerStimmler/better-aliexpress)](https://github.com/DerStimmler/better-aliexpress/blob/main/LICENSE)

Extension to enhance your AliExpress experience

## Features

Optimize search results layout

- Expand the spacing between results for improved readability
- Display results in a card-based layout
- Eliminate hover effects on results
- Ensure all available buttons for each result are always visible
- Standardize the order of elements within result cards
- Use consistent colors for buttons across all cards
- Ensure all result cards have a uniform height

| Before | After |
| ------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- |
| optimize search results layout before | optimize search results layout after |

Optimize navigation

- Add a dropdown to the header for switching between Normal, Choice, and Bundle pages
- Remove redundant Choice and Bundle links from the menu

| Before | After |
| -------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- |
| menu links | navigation dropdown |

Hide social icons

- Hide the sidebar with social icon links

social icons sidebar

Hide sidebar ads

- Hide popup ads on the side of the screen

sidebar ads

Hide fullscreen popups

- Hide fullscreen popup ads

sidebar ads

Open results in same tab

- By default, clicks on a search result open in a new tab. When activated, the details page of the result opens in the current tab

Open details page for bundle products

- By default, clicks on a search result of a bundle product navigate to the bundle offers page. When activated, it only does that when you click on the bundle button. Otherwise, clicks open the normal details page of the product

## Installation

The extension is not available on the Chrome Web Store or Firefox Add-ons store, so manual installation is required.

1. Download the ZIP file from [GitHub Releases](https://github.com/DerStimmler/better-aliexpress/releases)
2. Extract the ZIP file to a folder

### Chromium (Google Chrome, Edge, Brave, ...)

3. Open `chrome://extensions/`
4. Enable _Developer mode_
5. Click _Load unpacked_ and select the folder where you extracted the ZIP
6. The extension will appear in your extensions list and its icon will show in the toolbar

### Firefox

Because the extension is not signed yet, you can only install it temporarily. It will be removed automatically when you close the browser.

3. Open `about:debugging#/runtime/this-firefox`
4. Click _Load Temporary Add-on..._
5. Choose the extracted folder and select the `manifest.json` file
6. The extension will appear in your add-ons list and its icon will show in the toolbar

## Usage

Open the extension popup from your toolbar and toggle the features you wish to enable or disable.

extension popup

## Compatibility

> [!IMPORTANT]
> Currently the extension only works on AliExpress sites with the domain `https://*.aliexpress.com`

## Development

### Tips

- For easier debugging open the popup of the extension directly in a new tab. Get the extension ID in the extension details overview. `chrome-extension:///src/popup/index.html`
- To view the extension storage open the popup in a new tab, open DevTools and execute `chrome.storage.local.get(console.log)` in console

### Commands

- Run dev server `pnpm dev`
- Fix linting `pnpm lint:write`
- Run e2e tests with ui `pnpm test:ui`

### Add a new feature

1. Add a new feature key of type `FeatureKey` in `src/lib/feature-key.ts`
2. Create a new file inside `src/lib/features` containing two methods: one for when the feature is activated and another for when it's deactivated
3. Add a new entry to the `features` array in `src/lib/features/features.ts`