Forge of the North

You need experience
to get experience.

or scroll to skip ↓

Live from the forge

The craft is the curriculum

You need experience to get experience, so we put the experience on the page. Nothing below is a mockup: every demo is hand-built, running live, and part of what you'll learn to build on real client projects.

Hand-rolled canvas particles. No library, about 90 lines.

view source

The exhibit's actual update loop, the same code running above.

// The whole trick: a pooled particle array, one rAF loop,// and knob values read from a ref so React never re-renders per frame.function step(sparks, w, h, knobs) {  const wind = (knobs.draft / 50) * 0.045;  for (const s of sparks) {    s.vx += wind + (Math.random() - 0.5) * 0.02; // wind + turbulence    s.vy -= 0.004;                               // buoyancy    s.x += s.vx; s.y += s.vy; s.age++;  }}// The loop only runs while lit, on-screen, and the tab is visible:// IntersectionObserver + visibilitychange gate the rAF. At rest this// exhibit costs the page nothing. That discipline is the lesson.
use-click-outside.tsx · review thread

Every project ships through reviews like this one: line-anchored, specific, and about habits, not nitpicks.

view source

How the typing works: data-driven, interruptible, cleaned up.

// The animation is a cursor over data: the diff itself is typed rows,// so "typing" is one setTimeout chain and cleanup is one clearTimeout.type Row = { kind: "ctx" | "del" | "add"; text: string; comment?: number }; useEffect(() => {  if (reduce) { setCursor(DIFF.length); return; }   // reduced-motion: instant  if (cursor < DIFF.length) {    const t = setTimeout(() => setCursor(c => c + 1), LINE_MS);    return () => clearTimeout(t);                    // no orphaned timers  }}, [reduce, cursor]);

Anatomy of this page

The heading you just watched

Every H2 on this page runs this exact code. Probe it:

// SplitHeading: every section heading on this pagevoid document.fonts.ready.then(() => {  split = SplitText.create(el, {    type: "chars",    aria: "auto",  });  gsap.fromTo(split.chars,    { opacity: 0, y: "0.3em", filter: "blur(8px)" },    { opacity: 1, y: 0, filter: "blur(0px)",      stagger: 0.02, onComplete: () => split.revert() });});// …triggered by a one-shot IntersectionObserver

Split before the webfont lands and you measure the fallback font: wrong widths, wrong line breaks, a visible reflow. Waiting one promise fixes a bug most sites ship.

You'll learn why, not just how.

real client projectssenior mentorshipprofessional code reviewsindustry-standard workflowsportfolio-ready proof

That's the whole promise: shown, not told.

By The Numbers

Forged from real results

0
Apprentices in the Forge
0h
Hours Mentored
0
Projects Shipped
0
Mentors
The Process

How it works

From sign-up to job-ready: one piece of steel, four stations.

  1. 01

    Create Your Profile

    Sign up and tell us about your skills, goals, and preferred tech stack.

  2. 02

    Get Matched

    Browse available projects and apply for roles that match your expertise.

  3. 03

    Work on Real Projects

    Join a team, receive architecture docs, Jira setup, and start building.

  4. 04

    Grow Your Career

    Complete projects, build your portfolio, and land your dream job.

Pricing

Invest in your future

Three billets, one anvil. Choose the steel that matches your ambition.

ROUGH IRON
Starter
Perfect for getting your first real-world experience
399/ project
Solution architecture package
Jira board setup & account
3 code reviews included
1 hour of mentoring
Basic project complexity
Email support
POLISHED STEEL
Most Popular
Professional
For developers ready to tackle complex challenges
749/ project
Solution architecture package
Jira board setup & account
5 code reviews included
2 hours of mentoring
Medium-high complexity projects
Priority support
Certificate of completion
DAMASCUS
Enterprise
Maximum support for ambitious developers
1299/ project
Solution architecture package
Jira board setup & account
10 code reviews included
5 hours of mentoring
Enterprise-level projects
Priority support
Certificate of completion
1-on-1 career guidance
LinkedIn recommendation

Need more? Purchase additional code reviews or mentoring hours anytime.

€50
per hour of mentoring
€25
per code review session
Mentorship

Learn from the best

Every mentor here passed the bar below. No exceptions, no honorary seniors.

  • 5+ years of industry experience required
  • Vetted through a real interview, not a signup form
  • Specialize in your tech stack
  • Available for flexible scheduling
  • Provide actionable, constructive feedback

First stories

The first cohort is at the anvil.

Real stories, with names and shipped projects, will land here when they ship. Nothing fabricated, ever.

FAQ

Frequently asked questions

Everything you need to know

Join Our Community

Find your path forward

Whether you're looking to grow your skills, share your expertise, or find talented developers, there's a place for you at Blacksmith.Works.

Developers & Students

Join real-world projects, gain professional experience, receive expert mentorship, and get your code reviewed by industry professionals.

  • Work on real company projects
  • 1-on-1 mentoring sessions
  • Professional code reviews
  • Portfolio-ready experience
Sign Up as a Client
Now Hiring

Mentors & Code Reviewers

Share your expertise and help shape the next generation of developers. Apply to become a mentor or code reviewer.

  • Flexible scheduling
  • Competitive compensation
  • Shape future developers
  • Give back to the community
Apply as Mentor / Reviewer

Companies

Partner with us to get your work done while helping junior developers gain real-world experience. Quality-assured output.

  • Access motivated developers
  • Quality-assured deliverables
  • Cost-effective solutions
  • Support the tech community
Learn More

Forge Your Career

Whether you're a developer ready to prove your skills or a company looking for motivated talent, the forge is open. Join Blacksmith.Works today.

No commitment required · Cancel anytime · Built in the open