DEV3 Technologies home

DEV3 Roledock – Job Board Laravel Script with Paid Job Posts, Job Alerts & Seeker Flutter App

A job board script on Laravel 12 and Filament 4: employer paid posts, credit packs and featured slots, radius and salary search, instant job alerts, one-click apply, an applicant inbox, feed import and Google for Jobs data. Web installer and demo data included. Flutter app source included.
by DEV3 TechnologiesVerified Author(0) 0 sales 0 viewsUpdated 13 Nov 2026

Video tour. Pick a section below to browse 51 screenshots in 6 sections.

App & phone tours

Tap play to watch each app. Nothing downloads until you do.

  • Mobile web0:25
  • Seeker app1:40

Roledock is a job board you operate, built by DEV3 Technologies on Laravel 12 and Filament 4, with a Flutter app for job seekers. Employers buy job posts, credit packs and featured upgrades; seekers search, set alerts and apply in one tap; you moderate, set prices and read the reports. It suits a niche, regional or national board.

What it does

  • Paid posts and credits. Job packages, credit packs, a credit ledger and featured upgrades (top of search, highlight, homepage spotlight with daily slot limits, urgent badge). Credits are the unit for posts and upgrades; unused credits can be refunded within a window you set.
  • Search that works. Keyword, category, location with a radius, remote, job type, experience, salary band and posted date, with facet counts. The salary guide shows aggregates from posted ranges (at least five jobs per cell).
  • Google for Jobs ready. Every job page carries JobPosting structured data with a valid-through date.
  • Job alerts. Instant (batched within minutes), daily or weekly, with unsubscribe links, and a job is sent once per alert.
  • One-click apply. The seeker's default CV is snapshotted at apply time, with screening questions and a cover note. Guest apply is off by default and uses a one-time emailed link when enabled.
  • Applicant inbox for employers. A light pipeline (new, shortlisted, rejected, hired) with match scores, notes, messages and rejection templates. It is not a full applicant tracking system.
  • Moderation. Review queue for new jobs, reports for scams and misleading posts, company verification, suspension and refunds.
  • Feed import. Employers add an XML or JSON feed URL with a field mapping; it runs hourly, dedupes, expires missing jobs and logs errors. All feed and webhook requests go through an SSRF-safe client that pins the resolved address.
  • Employer tools. Company page, team invites, stats per job, API keys, outbound webhooks and a REST API with OpenAPI.
  • The Dockboard. A harbour-crane strip on the operator dashboard: one crane per category, height for live jobs, hook for today's applications.
  • Seeker Flutter app. Onboarding, search with a radius slider, job and company pages, one-tap apply with CV picker, application timeline, messages, alerts, saved jobs, profile and CV files, Arabic right to left and dark mode. Demo mode works without a server. Source is included.

Install and demo data

A web installer checks the server, writes the configuration, migrates and loads demo data or an empty install, then creates the operator account. The demo is a fictional regional board with 420 employers, 2,600 live jobs, 22,000 seekers and about 140,000 applications. Every demo password is password. Node.js is not needed because compiled assets are included.

Good to know before you buy

  • Database search. Search uses MySQL full-text and indexed filters. Add Meilisearch for very large boards.
  • No scraping and no syndication. Jobs come from employers, the API or feeds you configure. Google for Jobs support is structured data only, with no Indexing API calls.
  • Matching is keyword and filter scoring, not AI.
  • Not an ATS. There are no scorecards, interview scheduling or offers.
  • Payments are simulated until you connect a gateway. You are the merchant of record and responsible for any payment licensing where you operate.
  • Email and push are simulated. Messages go to a log until you add a mail transport and a push provider.
  • Seeker app only. The employer works on the web; an employer app is not included. Store publishing is your step, and a guide is included.
  • A cron entry is required (schedule:run every minute) for alerts, expiry and feeds.
  • No hosted demo. The brands, people and places in the screenshots are fictional.

Quality checks

Roledock 1.0.0 passed the seven release gates of the DEV3 Laravel suite on the final code: static analysis (Larastan level 6), the Pest suite (285 tests), a front-end size budget, migrations and seeding on MySQL 8 and SQLite, a headless-browser pass with MySQL race checks in eight groups (last credit, spotlight slots, double apply, renewal against expiry, double payment and others), an installer test from the package and a secret scan. The seeker app passed 89 Flutter tests and a run against the live backend. A review of credit spending, applicant data access and feed import found eighteen issues, all fixed before release.

How it's built

Architecture, stack, key decisions and the quality gates DEV3 Roledock passed before release.

The engineering behind Roledock: a credit ledger spent under row locks, paid posts that expire and renew cleanly, an SSRF-safe feed importer and job alerts deduplicated by a unique index.

The problem it solves

A paid job board moves money and personal data at the same time. Two recruiters must not spend the last credit together, an expiry sweep must not race a renewal, a feed URL must not become a way into the host's network, and an employer must never see another company's applicants.

Architecture and approach

Roledock is a Laravel 12 application with Filament 4 panels for the operator and for employers, Blade public pages, a JSON API and a Flutter seeker app. It builds on the shared DEV3 core for settings, roles, files and audit.

Credits spent under a lock

Posting a job or buying an upgrade spends credits through one service that locks the company row, checks the balance and writes the ledger entry in the same transaction. A check command verifies that every balance equals the sum of its entries.

Posts that expire and renew cleanly

Expiry reminders, renewals and the expiry sweep claim each job under a lock, so a renewal that lands during the sweep wins instead of producing a double charge or a lost post.

Feeds through a safe client

Feed and webhook requests resolve the host once, refuse private and metadata addresses, pin the address on every redirect hop and cap the body. Imported jobs are deduplicated by external id and content hash.

Alerts that send once

Each alert keeps an overlapping cursor and a unique alert-and-job row, so a retry or a second worker cannot send the same job twice.

Party isolation that fails closed

A generated test walks every employer and seeker route with another party's ids and expects 404; a new unmapped route fails the test.

Quality gates and results

Roledock 1.0.0 passed the seven release gates on the final code, including Larastan level 6, 285 Pest tests, a headless-browser pass and MySQL race checks in eight groups. The seeker app passed 89 tests. A review of credit spending, applicant access and feed import found eighteen issues, all fixed. The demo seed holds 2,600 live jobs and about 140,000 applications.

Tech stack

Area Technologies
Application Laravel 12, Filament 4, Blade, REST API
Seeker app Flutter, Demo mode, Arabic RTL, Match score on device
Money Credit ledger, Row-lock spends, Refund rules, Simulated gateway
Imports SSRF-safe HTTP client, Pinned DNS resolution, Feed dedupe by hash
Quality Pest, Larastan level 6, Headless browser smoke, MySQL race checks, Installer test

Inside the build

Run a job board employers pay for: The home page opens on a quiet harbour at dawn with a seeker phone and the employer applicant inbox. Run a job board employers pay for — The home page opens on a quiet harbour at dawn with a seeker phone and the employer applicant inbox.

Everything a paid board needs: Search, paid posts and credits, featured upgrades, alerts, one-click apply and a Google for Jobs ready job page. Everything a paid board needs — Search, paid posts and credits, featured upgrades, alerts, one-click apply and a Google for Jobs ready job page.

Guides & articles

Practical guides and engineering write-ups for DEV3 Roledock.

Job board software: 7 things to check before you launch one

Last updated
Job board software: 7 things to check before you launch one: DEV3 Roledock

Opening a job board is easy; getting employers to pay and seekers to return is the hard part. Here are seven things to check before you launch one, with DEV3 Roledock as the worked example.

Video tour — the board, an employer buying credits and featuring a job, the applicant inbox and the moderation queue

Roledock home page: a job board product page with the seeker app preview

1. How do employers pay?

Decide between per-post packages, credit packs and featured upgrades before you build pages. Credits make it easy to sell one unit for posts and upgrades, but the ledger must never overspend. Roledock spends credits under a row lock and refunds unused credits within a window you set.

Employer credits and billing: packages, credit packs and the ledger

The operator packages list: prices, credits and featured days

2. Does search match how people look for work?

Seekers filter by place and distance, remote, type and salary. Look for facet counts and a radius, not only a keyword box.

Search results with facets for category, type, work place and salary

The mobile search on a phone

3. Will Google show your jobs?

Every job page needs JobPosting structured data with a valid-through date. Roledock prints it on each job page and previews it in the employer editor. It does not call the Indexing API.

A job page with salary, skills and the apply panel

4. Do alerts send once, and on time?

An alert that sends the same job twice trains people to unsubscribe. Roledock batches instant alerts within minutes, offers daily and weekly digests and keeps one send per alert and job.

The operator alert sends queue

5. Is applying one tap?

The default CV is attached when the seeker applies, with screening questions and a cover note. Employers then see a match score, shortlist, message and reject with a template. This is an applicant inbox, not a full applicant tracking system.

The employer applicant board with new, shortlisted, rejected and hired columns

The seeker app: apply with a saved CV

6. Who moderates, and how?

Scam posts will arrive. You need a review queue, reports, company verification and a refund rule.

The moderation queue with reasons and one-click outcomes

Company verification list

7. Can employers bring their jobs with them?

A feed import with a field mapping saves employers hours. Feed requests should go through an SSRF-safe client, jobs should be deduplicated and missing jobs should expire. Roledock does all three and keeps a run log. It does not scrape other sites.

Feed run log with errors and counts

What you get

Roledock is a Laravel 12 and Filament 4 job board with a web installer, demo data, an employer API and a seeker app in Flutter. Payments are simulated until you connect a gateway, and you are the merchant of record. See the item page for the full list and limits.

Frequently asked questions

The complete source code (version 1.0.0) as a download from your account, with the setup and usage guides shown on this page. You can modify the code to suit your product.

Buying guides: Laravel scripts with Filament panels and a web installer · Next.js or Laravel for a SaaS script?

Questions about this product (0)

Answers from the DEV3 team and the community.

Ask a question

No questions yet.

Wondering about setup, licensing or customisation? Ask, and the DEV3 team will help.

More from this author

View all

Related in Web Scripts & Software

View all