Skip to content

Latest commit

ย 

History

298 Commits

Folders and files

NameName
Last commit message
Last commit date
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

header

Freesets

freesets.dev

Freesets is a collection of free, high-quality resources that you can use in your web projects. Here you will find icons, images, videos, illustrations, fonts and more. All resources have at least one free version or free plan, but please read the license before using them. You can contribute to this project by suggesting new resources or making a pull request.

โœจ Features

  • 14 categories of resources, each with its own page, search and sorting (popular, newest, Aโ€“Z).
  • Site-wide search with filters by category and license, from the header or the search page.
  • A grid you can shape: pick between 2 and 6 columns and how many resources fit on a page.
  • Light and dark themes, following the system by default.

๐Ÿ› ๏ธ Built with

Astro ยท Tailwind CSS ยท TypeScript

No UI framework: every page is static HTML with a little browser-side TypeScript for search, filters and pagination.

๐Ÿš€ Getting started

You need Node.js 22.12 or newer.

git clone https://github.com/cosmoart/Freesets
cd Freesets
npm install
npm run dev

The site runs at http://localhost:4321.

Command What it does
npm run dev Starts the dev server
npm run build Builds the site to dist/
npm run preview Serves the built site locally
npm run check Checks types and Astro components
npm run lint Runs ESLint
npm run format Formats the code with Prettier
npm run format:check Checks the formatting without writing

The first build downloads and optimizes every resource preview, so it takes a while. Later builds reuse the cache.

๐Ÿ“ Project structure

src/
โ”œโ”€โ”€ assets/
โ”‚   โ”œโ”€โ”€ db/            # The resources, one JSON file per category
โ”‚   โ””โ”€โ”€ categories.ts  # Category names, descriptions and colors
โ”œโ”€โ”€ components/        # Cards, search, category bar, dialogs
โ”œโ”€โ”€ layouts/           # The page shell
โ”œโ”€โ”€ lib/               # Build-time helpers (GitHub stars, preview images)
โ”œโ”€โ”€ pages/             # Home, category pages, search and the search index
โ”œโ”€โ”€ scripts/           # Browser-side helpers: search, filters, pagination
โ”œโ”€โ”€ styles/            # Global styles and design tokens
โ””โ”€โ”€ types.ts           # Resource and category types
public/
โ””โ”€โ”€ categories-icons/  # One icon per category

๐Ÿค Contributing

Everyone is welcome to collaborate with this project. Adding a resource means adding one entry to a JSON file in src/assets/db. Before contributing, please read the contribution guide.

If you would rather not open a pull request, use the Suggest button on the site: it opens a prefilled issue for you.

๐Ÿ“„ License

Website code distributed under the MIT License. See LICENSE for more information. Each resource keeps its own license, shown on its card.

๐Ÿ‘ฅ Contributors

About

๐Ÿ“‹Collection of free resources like icons, images, illustrations, components, libraries and more!

Topics

Resources

Code of conduct

Contributing

Stars

220 stars

Watchers

3 watching

Forks

Sponsor this project

Used by

Contributors

Languages