Skip to content
Live demoBrowse a directory built with DirectoryForge

Turn scattered web data into a directory you own.

DirectoryForge collects listings with a visual scraper builder, holds every record in a review desk until you approve it, and publishes them to a branded, searchable directory with paid submissions built in. Self-hosted Next.js and MongoDB.

  • Five directory types
  • Stripe Checkout
  • REST API and webhooks
DirectoryForge workspace overview: published listings, listings awaiting review, active sources, completed runs and a collection activity chart.
The public directory on a phone, with a search bar and listing counts.

Built on a stack you already know, with optional providers you connect yourself

  • Next.js
  • React
  • TypeScript
  • Tailwind CSS
  • MongoDB
  • Stripe
  • Puppeteer
  • Amazon S3
  • OpenAI
  • Gemini
  • Brave Search
  • Docker
How it works

From a source URL to a published listing, in five steps.

The scraper builder walks you through source, scraping, extraction, processing and schedule. Every record it collects stops at the review desk before it reaches your directory.

Pick a category, then find sources for it.

Source discovery searches with Brave Search or your connected AI provider, fetches every candidate page and flags the ones it can't reach. You can also paste a listing page or a JSON API yourself.

  • Websites or JSON APIs, with custom request headers
  • Per-domain rate limiting
  • Bundled sample source for trying it without keys
Scraper builder, Source step: category, scraper name, source URL, source type and collection engine.
Features

Everything between the scrape and the sale.

DirectoryForge covers collection, curation, presentation and monetization, so you are not stitching four tools together to run one directory.

Directory design

Five directory types, each with its own layout.

Choose tools and software, jobs, restaurants and places, products, or agencies and services. The type sets the cards, fields, filters, detail page and submission labels together. Preview the directory and a listing page before you apply it.

  • Name, headline and description edited live in the preview
  • Switching types keeps existing records and pauses the previous type's schedules
  • Warm (light) and Slate (dark) themes
Directory design page with five directory types on the left and a live preview of the tools directory on the right.
Monetization

Charge for submissions with prices you set in the dashboard.

Offer free, Priority review and Featured submissions, plus a monthly membership. Set the prices and currency in Settings › Monetization and Stripe Checkout charges them directly. There are no Stripe Price IDs to create.

  • Featured listings stay featured for the number of days you choose
  • Members get free priority review, included featured listings and unlimited listings
  • Payments are verified on return and reconciled by a cron job, with no webhook endpoint to configure
Submission plans settings: currency, free listings per person, and a Priority review price.
Listing claims

Let businesses claim their listing and keep it current.

Visitors can request ownership of a listing. You approve the claim in the review desk, and the owner can then edit their listing and see how many views and clicks it gets.

  • Claims wait in their own review desk tab
  • Owner edits are recorded in the activity log
  • Detail pages include a website button, ratings and reviews
A published listing detail page for Excalidraw with a Visit website button and a Save button.
Try the layouts

One engine. Five ways to present it.

These are the real directory components with illustrative records. Switch types, then open a listing to see its detail page.

Interactive layout previews with illustrative content. Open a listing to explore its detail page.

A LITTLE DISCOVERY GOES A LONG WAY

Less searching.More making.

Discover useful software for the work you love. Thoughtfully collected, clearly organized, and ready for your next idea.

6 tools to discover4 categories, one collection
THE COLLECTION

Find your next favorite

6 tools

A calmer space for your next great idea.

From a first thought to a considered design.

All the little details, brought together.

Keep good work moving, together.

Turn a world of information into clear answers.

Make more room for your imagination.

Under the hood

The parts a real directory needs, already done.

Review moderation and spam protection

Approve every review, only flagged ones, or none, with a blocked-words list. Hidden form traps, timing checks and hourly limits are always on.

Review moderation settings with three approval modes and a blocked words list.

Custom fields and CSV import

Each type has built-in fields, and you can add up to 20 of your own. CSV import matches columns automatically, shows a preview and skips duplicates.

Listing fields settings showing built-in tools fields and an Add field button.

Roles and an activity log

Admins run everything. Editors manage content and scrapers, moderators work the review desk. Every staff and API change is logged and filterable.

SEO built in

Listing pages carry JSON-LD that matches the directory type, and a sitemap and robots file are generated for you.

  • SoftwareApplication
  • JobPosting
  • Place
  • Product
  • ProfessionalService

AI where it helps

Connect an OpenAI-compatible or Gemini model to suggest sources and field mappings, sort records into categories and write short summaries. A missing field is never treated as a verified value.

Light and dark themes

Switch between Warm and Slate. The theme is applied on the server, so pages don't flash on load.

Email and uploads

SMTP sends welcome, password reset, approval and receipt emails. Images upload straight from the browser to Amazon S3 with presigned URLs.

Sign-in your way

Auth.js with email and password, plus optional Google and GitHub sign-in. Members keep bookmarks and manage their own listings.

Responsive

Your directory works on every phone, not just your laptop.

Search, category filters, listing pages, bookmarks and the submission form are all built for small screens, in every directory type.

Directory home page on a phone.
Listing detail page for Excalidraw on a phone.
For developers

Connect your directory to everything else.

Create read or read-and-write API keys for the REST API, and send signed webhooks when listings, reviews or claims change. The code is yours: TypeScript, Next.js App Router and Mongoose models you can extend.

  • REST API. Bearer keys starting with dfk_, scoped to read or read-and-write.
  • Webhooks. HMAC-SHA256 signatures in X-DirectoryForge-Signature, with a delivery ID and last-status tracking.
  • Your infrastructure. Deploy to Vercel or Docker. The Dockerfile includes Chromium for Puppeteer.
REST API
  • GET/api/v1/listings
  • GET/api/v1/listings/{id}
  • GET/api/v1/categories
  • POST/api/v1/listings
$ curl https://yourdirectory.com/api/v1/listings \
    -H "Authorization: Bearer dfk_…"
Verify a webhook
X-DirectoryForge-Signature: t=1760572800,v1=5f2c…

// v1 = hex HMAC-SHA256 of `${t}.${rawBody}`
const expected = createHmac("sha256", secret)
  .update(`${t}.${rawBody}`)
  .digest("hex");
What you need

Runs locally with no keys at all.

In development, demo mode stores data in a local file, so you can try the whole product before connecting anything. For production, this is the list.

Required

  • A Node.js server or Vercel
  • MongoDB
  • An auth secret and your app URL

For scheduled collection

  • A scheduler that calls the protected cron endpoint, typically every minute

Optional providers

  • Stripe for paid plans
  • OpenAI-compatible or Gemini API for AI features
  • Brave Search for source discovery
  • SMTP email and Amazon S3 uploads
FAQ

Straight answers.

Still unsure? Get in touch or try the admin demo.

Which directory types are included?

Software and AI tools, jobs, restaurants and places, product catalogs, and agencies and services. Each includes a directory page, listing details, submission fields and contextual actions. Product catalogs link out to sellers; there is no built-in cart or fulfillment.

Does every website work automatically?

No. Access rules, page structure and JavaScript rendering affect extraction. The builder shows check results and sample records before you run a collection, some sites need manual mapping or the browser-rendered engine, and missing fields are left empty for you to review.

How does source discovery work?

Choose a category. Brave Search or your connected AI provider suggests candidate URLs, which are fetched and checked. Select one to inspect samples and get suggested field mappings. Without providers, you can still configure sources by hand.

Can I limit and schedule collection runs?

Yes. Set 1 to 1,000 new listings per run and a cron schedule. Your server's scheduler calls the protected cron endpoint, which processes one bounded batch per call. A run can finish below its target if a source runs out of records.

How do payments work?

Connect a Stripe secret key and set prices in the dashboard. Buyers pay through Stripe Checkout. Payments are verified when the buyer returns and reconciled by a cron job, which also handles membership renewals and cancellations. No Stripe webhook is required.

Can I change the directory type later?

Yes. Preview another type and apply it in Directory design. Existing records stay assigned to their original type, and that type's scraper schedules pause. Switching back makes those records available again.

Is this marketing site part of the product?

It ships alongside it as a separate Next.js app with its own packages and assets. It never imports from the main app, so you can host it on its own server and point its links at your directory.

Pick a niche. Launch the directory.

Explore the live directory and the admin workspace, then make it yours.