First off, thank you for considering contributing to Allogo! It's people like you that make this tool useful for the developer community.
If you don't have the logo yourself but want to see one added:
- Search First: Ensure the logo doesn't already exist in the Allogo library.
- Check Existing Issues: Someone might have already requested it.
- Open an Issue: Use the Logo Request template. Provide as many details as possible, especially links to official brand headers or press kits.
To ensure high quality, please follow these rules:
- Format: We accept SVG, PNG, and JPG formats.
- SVG (Preferred): Vector format enables component code generation for React, Vue, Angular, Svelte.
- PNG/JPG: Raster formats are supported for download only (no component code generation).
- SVG Guidelines:
- Must contain vector paths. No embedded raster images (PNG, JPEG inside SVG).
- Remove unnecessary metadata, comments, and hidden layers.
- Simplify the
viewBoxif possible. - Ensure the SVG renders correctly on both light and dark backgrounds.
- PNG/JPG Guidelines:
- Minimum resolution: 256x256 pixels.
- Transparent background preferred for PNG.
- Naming: The directory name (slug) should be lowercase, using hyphens for spaces (e.g.,
visual-studio-codeNOTVisual Studio Code).
We respect the intellectual property and strict brand guidelines of certain companies. We do not accept logos from the following brands/organizations as they are known for aggressive brand protection:
- Disney (including Marvel Comics, Pixar, Star Wars, etc.)
- Olympics (IOC)
- Other strictly protected brands (e.g., heavily litigious entities)
Note: Tools like "Marvel App" (prototyping tool) are allowed as they are distinct from Marvel Comics.
Find the official logo. A good source is the company's "Press Kit", "Brand Assets", or valid vector repositories.
Save it as icon.svg, icon.png, or icon.jpg depending on format.
- Create a new directory in
public/logos/:mkdir public/logos/my-new-tool
- Place your
icon.svginside this folder.
We provide a script to assist you. You don't need to edit the JSON manually for the initial entry.
-
Run the update script:
node scripts/update-logos.js
This will scan the folders and add any missing entries to
src/data/logos.json. -
Manual Review: Open
src/data/logos.json, find your new entry, and ensure the details are correct:- Name: Use proper capitalization (e.g. "MyBrand").
- Website: Add the official URL.
- Categories: Add relevant tags (e.g.
["ai", "framework", "database"]).
Run the development server and check if your logo appears and renders correctly.
pnpm run dev- Commit your changes:
git add public/logos/my-new-tool src/data/logos.json git commit -m "Add MyNewTool logo" - Push to your fork.
- Open a Pull Request!
If you want to improve the codebase (feature or bug fix):
- Clone the repo:
git clone https://github.com/callback-io/allogo.git
- Install dependencies:
pnpm install
- Run locally:
pnpm run dev
- Lint & Test:
pnpm run lint
Thank you for contributing!