{"id":75,"date":"2025-07-20T22:00:00","date_gmt":"2025-07-20T22:00:00","guid":{"rendered":"https:\/\/blog.chessboardmagic.com\/?p=75"},"modified":"2025-09-28T22:07:21","modified_gmt":"2025-09-28T22:07:21","slug":"repertoire-builder-v1-0","status":"publish","type":"post","link":"https:\/\/blog.chessboardmagic.com\/index.php\/2025\/07\/20\/repertoire-builder-v1-0\/","title":{"rendered":"Repertoire Builder v1.0"},"content":{"rendered":"\n<p><strong>Built by a Chess Addict, for Chess Addicts<\/strong><\/p>\n\n\n\n<p>Back in October 2023, I decided it was time to dust off my programming skills \u2014 and what better way to do that than by mixing them with my chess addiction? I kicked things off with some fun little projects like&nbsp;<strong>Guess the Elo<\/strong>&nbsp;and&nbsp;<strong>Guess the Eval<\/strong>, slowly getting back into the groove.<br>By the end of 2024, I\u2019d already cranked out&nbsp;<strong>40-plus<\/strong>&nbsp;different chess-flavoured mini-apps and tools. That\u2019s when it hit me: my skills were finally up to something bigger. So in December 2024 I started sketching out what would become the&nbsp;<strong>Repertoire Builder<\/strong>. After months of late-night coding (and probably too much coffee) the&nbsp;<strong>Alpha<\/strong>&nbsp;landed in March, the&nbsp;<strong>Beta<\/strong>&nbsp;followed in May, and now I\u2019m thrilled to share the first fully-featured release:&nbsp;<strong>Chessboard Magic Repertoire Builder v1<\/strong>.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<h4 class=\"wp-block-heading\"><a href=\"https:\/\/lichess.org\/@\/HollowLeaf\/blog\/repertoire-builder-v10\/wZUTjfXG#tldr-want-to-jump-straight-in-you-can-try-it-now--totally-free--at-chessboardmagiccomrepertoirebuilder\"><\/a><strong>TL;DR<\/strong>: Want to jump straight in? You can try it now \u2014 totally free \u2014 at&nbsp;<strong><a href=\"https:\/\/chessboardmagic.com\/repertoirebuilder\">chessboardmagic.com\/repertoirebuilder<\/a><\/strong><\/h4>\n<\/blockquote>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<h4 class=\"wp-block-heading\"><a href=\"https:\/\/lichess.org\/@\/HollowLeaf\/blog\/repertoire-builder-v10\/wZUTjfXG#if-you-have-any-questions-you-can-reach-me-via-our-discord-server--im-always-around\"><\/a>If you have any questions, you can reach me via our&nbsp;<strong><a href=\"https:\/\/discord.gg\/3SN7evwaKX\">Discord Server<\/a><\/strong>&nbsp;\u2014 I\u2019m always around.<\/h4>\n<\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\"><a href=\"https:\/\/lichess.org\/@\/HollowLeaf\/blog\/repertoire-builder-v10\/wZUTjfXG#the-platform-at-a-glance\"><\/a>The Platform at a Glance<\/h2>\n\n\n\n<p>When I first started designing this application, I didn\u2019t have a ton of chess experience. I bought ChessBase, I used Lichess Studies \u2014 and while they were helpful, I quickly hit limitations. So I took a step back and thought:&nbsp;<em>what would my ideal end-to-end repertoire builder actually look like?<\/em>&nbsp;Then I started building it.<br>Here\u2019s what I came up with \u2014 five connected modules that form a complete loop:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>The Builder<\/strong><br>First, I wanted a proper\u00a0<em>Builder<\/em>. Something that makes it easy to create and manage your repertoires without getting lost in complexity. It had to feel simple and seamless \u2014 but still powerful. So I made sure it\u2019s supported by engine analysis, reference games, your own games, and other tools to help you enhance your lines incrementally. For people who don\u2019t even know where to start, I added opening templates and wizards to guide the way.<\/li>\n\n\n\n<li><strong>The Trainers<\/strong><br>Once you\u2019ve built your repertoire, you need a way to actually\u00a0<em>remember<\/em>\u00a0it. That\u2019s where the\u00a0<em>Trainers<\/em>\u00a0come in. These are designed to help you reinforce the lines through active recall and repetition \u2014 the stuff that really makes things stick.<\/li>\n\n\n\n<li><strong>Practice Mode<\/strong><br>But I realized Trainers alone weren\u2019t enough. So I created a\u00a0<em>Practice Mode<\/em>\u00a0where you can test your repertoire against different types of opponents \u2014 like Stockfish, Lichess databases, or even your own games. You get to feel how your prep holds up in live conditions.<\/li>\n\n\n\n<li><strong>The Opening Tree<\/strong><br>To take it further, I added an\u00a0<em>Opening Tree<\/em>. This lets you import massive numbers of games from Lichess, Chess.com, or PGNs and get real-world statistics. It\u2019s a great way to test, refine, and validate your lines using practical data \u2014 right when you\u2019re building or practicing.<\/li>\n\n\n\n<li><strong>The Library<\/strong><br>Finally, I needed a place to tie it all together. So I built the\u00a0<em>Library<\/em>\u00a0\u2014 a full analysis board where you can review your games, compare them against your repertoire, study lines from your opening tree, and bring in material from courses or books. It\u2019s your hub for deeper study.<\/li>\n<\/ol>\n\n\n\n<p>These five modules are tightly integrated \u2014&nbsp;<strong>Builder Trainers Practice Opening Tree Library back to Builder<\/strong>&nbsp;\u2014 creating a circular, self-reinforcing system. Whether you\u2019re learning something new or tightening your existing prep, each part feeds the next.<br>That\u2019s the vision I had \u2014 and the platform I\u2019ve built.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><a href=\"https:\/\/lichess.org\/@\/HollowLeaf\/blog\/repertoire-builder-v10\/wZUTjfXG#builder-module\"><\/a>Builder Module<\/h2>\n\n\n\n<p>At the heart of the platform is the&nbsp;<strong>Builder<\/strong>&nbsp;\u2014 the workspace where everything starts.<br><img decoding=\"async\" src=\"https:\/\/image.lichess1.org\/display?fmt=png&amp;h=0&amp;op=resize&amp;path=ublogBody:1YPFR0I0CBJO:YEKOZaqM.png&amp;w=800&amp;sig=cc45811d935bc6d109291be55c98cdbcc0a61e5a\" alt=\"image.png\"><br>You can create&nbsp;<strong>multiple repertoires<\/strong>, each one acting like a separate file for your white and black opening lines. Whether you&#8217;re prepping for tournaments, training against specific opponents, or just exploring ideas \u2014 it&#8217;s flexible by design.<br>The&nbsp;<strong>integrated chessboard<\/strong>&nbsp;lets you play through moves directly, while the&nbsp;<strong>Move Card<\/strong>&nbsp;gives you a clear view of your lines and variations. From there, you can add&nbsp;<strong>comments, annotations, and tags<\/strong>&nbsp;to help structure your thinking and keep things organized.<br>To help you validate and improve your repertoire, I\u2019ve added a suite of&nbsp;<strong>analytics cards<\/strong>, all tightly integrated into the Builder:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Stockfish Analysis<\/strong><\/li>\n\n\n\n<li><strong>Lichess Masters Database<\/strong><\/li>\n\n\n\n<li><strong>Lichess Players Database<\/strong><\/li>\n\n\n\n<li><strong>ChessDB<\/strong><\/li>\n\n\n\n<li><strong>Your Personal Library<\/strong><\/li>\n<\/ul>\n\n\n\n<p>These let you cross-reference your lines with real-world data and engine evals \u2014 a great way to catch blunders, fill in gaps, or discover new ideas.<br>Other features include:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Bookmarks<\/strong>\u00a0\u2014 mark positions you want to come back to for deeper review<\/li>\n\n\n\n<li><strong>Transpositions<\/strong>\u00a0\u2014 automatically detects and links equivalent positions across lines<\/li>\n\n\n\n<li><strong>Visualisations<\/strong>\u00a0\u2014 see the structure and shape of your repertoire at a glance<\/li>\n\n\n\n<li><strong>Review Card<\/strong>\u00a0\u2014 highlights weaknesses, shallow branches, and inconsistencies in your repertoire<\/li>\n\n\n\n<li>The ability to\u00a0<strong>run your entire repertoire through Stockfish<\/strong>\u00a0for a full evaluation sweep<\/li>\n\n\n\n<li>Tools to\u00a0<strong>split repertoires into smaller chunks<\/strong>\u00a0for targeted training or editing<\/li>\n\n\n\n<li>Options to\u00a0<strong>toggle between view modes<\/strong>\u00a0depending on how you want to engage with your lines<\/li>\n<\/ul>\n\n\n\n<p>In short: the&nbsp;<strong>Builder<\/strong>&nbsp;brings together powerful tools and a smooth experience \u2014 everything you need to build, explore, and grow your repertoire in one place.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><a href=\"https:\/\/lichess.org\/@\/HollowLeaf\/blog\/repertoire-builder-v10\/wZUTjfXG#trainer-module\"><\/a>Trainer Module<\/h2>\n\n\n\n<p>Once you\u2019ve built enough of your repertoire, it\u2019s time to lock that knowledge in. That\u2019s where&nbsp;<strong>Trainers<\/strong>&nbsp;come in \u2014 a set of focused tools designed to reinforce, challenge, and improve your memory of your lines.<br><img decoding=\"async\" src=\"https:\/\/image.lichess1.org\/display?fmt=png&amp;h=0&amp;op=resize&amp;path=ublogBody:xW9lz8e5DKOf:3k16PlB3.png&amp;w=800&amp;sig=e9b9c1ce04a2041ff5e2ffcbd7db8b5cb8b965ac\" alt=\"image.png\"><br>Here\u2019s what you\u2019ve got:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Position Trainer<\/strong><br>This one picks a random position from your repertoire and throws it at you \u2014 no context, just: \u201cWhat\u2019s the move here?\u201d It\u2019s great for spotting whether you actually remember your prep in isolation, not just when playing through a full line.<\/li>\n\n\n\n<li><strong>Repertoire Trainer<\/strong><br>Play through your repertoire from the start \u2014 just like reviewing flashcards, but with moves instead of words. It helps you develop flow and recognize the structure of your lines move-by-move.<\/li>\n\n\n\n<li><strong>Weakness Trainer<\/strong><br>This focuses only on the positions you\u2019ve struggled with. Whether you\u2019ve made the wrong move or hesitated, it brings those weak spots back up for targeted review \u2014 so nothing slips through the cracks.<\/li>\n\n\n\n<li><strong>Spaced Trainer<\/strong><br>Powered by\u00a0<strong>FRSR (Forgetting Rate Spaced Repetition)<\/strong>, this trainer takes your performance across the other trainers and builds a schedule for optimal recall. It\u2019s like Anki, but for your openings \u2014 making sure you&#8217;re revisiting lines\u00a0<em>just before<\/em>\u00a0you\u2019re about to forget them.<\/li>\n\n\n\n<li><strong>Masters Game Review<\/strong><br>See how top-level players handled positions in your repertoire. This trainer grabs a random master game relevant to your lines, so you can study practical applications of your prep in real-world, high-level play.<\/li>\n<\/ul>\n\n\n\n<p>Each trainer has a specific role, but together they create a full training loop \u2014 helping you&nbsp;<strong>move from knowing your repertoire to owning it<\/strong>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><a href=\"https:\/\/lichess.org\/@\/HollowLeaf\/blog\/repertoire-builder-v10\/wZUTjfXG#practice-module\"><\/a>Practice Module<\/h2>\n\n\n\n<p>The&nbsp;<strong>Practice Module<\/strong>&nbsp;is where you put your repertoire knowledge into action.<br><img decoding=\"async\" src=\"https:\/\/image.lichess1.org\/display?fmt=png&amp;h=0&amp;op=resize&amp;path=ublogBody:vX472O0bMAUe:SCxHiEaa.png&amp;w=800&amp;sig=464ee0b0ead664e5deff72239629d1d1fc06379e\" alt=\"image.png\"><br>You can practice against:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Stockfish<\/li>\n\n\n\n<li>Masters Database<\/li>\n\n\n\n<li>Lichess Database<\/li>\n\n\n\n<li>ChessDB<\/li>\n\n\n\n<li>Your Library<\/li>\n\n\n\n<li>Your Opening Tree<\/li>\n<\/ul>\n\n\n\n<p>(Additional bots are in development and coming soon.)<br>During practice, you can also view the&nbsp;<strong>candidate moves<\/strong>&nbsp;considered by your chosen opponent \u2014 giving you a sense of the alternatives they would have played.<br>Once you\u2019ve played through a game, quickly review it using analytics cards, or jump into the&nbsp;<strong>Library<\/strong>&nbsp;for full-scale analysis. You can enter Practice directly from the&nbsp;<strong>Builder<\/strong>&nbsp;or&nbsp;<strong>Library<\/strong>&nbsp;for a seamless experience.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><a href=\"https:\/\/lichess.org\/@\/HollowLeaf\/blog\/repertoire-builder-v10\/wZUTjfXG#opening-tree-module\"><\/a>Opening Tree Module<\/h2>\n\n\n\n<p><img decoding=\"async\" src=\"https:\/\/image.lichess1.org\/display?fmt=png&amp;h=0&amp;op=resize&amp;path=ublogBody:oUKMOIWnWtL8:zcyXpuuu.png&amp;w=800&amp;sig=2aee6300ed485867966ad7134e9375f00a9d7362\" alt=\"image.png\"><br>The&nbsp;<strong>Opening Tree Module<\/strong>&nbsp;lets you import and process games from:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Lichess<\/strong><\/li>\n\n\n\n<li><strong>Chess.com<\/strong><\/li>\n\n\n\n<li><strong>Custom PGNs<\/strong><\/li>\n<\/ul>\n\n\n\n<p>The goal is simple: to build a detailed&nbsp;<strong>profile of your own games<\/strong>&nbsp;\u2014 whether they\u2019re online blitz marathons or serious over-the-board battles \u2014 and compare them directly against your repertoire.<br>It helps you spot gaps, overlaps, and patterns in your play, giving you real data to refine and reinforce your prep. Whether you\u2019re checking what you actually play versus what you&nbsp;<em>meant<\/em>&nbsp;to play, or studying common responses, the Opening Tree gives you the full picture.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><a href=\"https:\/\/lichess.org\/@\/HollowLeaf\/blog\/repertoire-builder-v10\/wZUTjfXG#library-module\"><\/a>Library Module<\/h2>\n\n\n\n<p>The&nbsp;<strong>Library Module<\/strong>&nbsp;is your all-in-one analysis space.<br><img decoding=\"async\" src=\"https:\/\/image.lichess1.org\/display?fmt=png&amp;h=0&amp;op=resize&amp;path=ublogBody:nNLN3Cl422R0:lwtGeoIf.png&amp;w=800&amp;sig=f8beb9192e9eec23760a4a6e34d78774040b8c1b\" alt=\"image.png\"><br>You can import games from your practice sessions, online platforms, or PGNs \u2014 then&nbsp;<strong>filter<\/strong>,&nbsp;<strong>tag<\/strong>, and view&nbsp;<strong>performance and statistics<\/strong>&nbsp;against your repertoire. It\u2019s designed to help you spot patterns, track your progress, and stay organized as you study and improve.<br><img decoding=\"async\" src=\"https:\/\/image.lichess1.org\/display?fmt=png&amp;h=0&amp;op=resize&amp;path=ublogBody:yvDXE4ROsrb5:k874NhRP.png&amp;w=800&amp;sig=6ebaefc9cb2f7f42bbcffc874f17bd6bf322f19e\" alt=\"image.png\"><br>You get access to all the same powerful cards as in the&nbsp;<strong>Builder<\/strong>&nbsp;\u2014 so you can review your games with engine support, databases, and your own library of lines. You can also&nbsp;<strong>annotate your games<\/strong>&nbsp;by pulling in comments directly from your repertoire, and instantly compare your moves to the lines you\u2019ve prepared.<br>And when you\u2019ve discovered something worth keeping? You can&nbsp;<strong>merge your analysis directly into your repertoires<\/strong>&nbsp;\u2014 closing the loop between study and preparation.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><a href=\"https:\/\/lichess.org\/@\/HollowLeaf\/blog\/repertoire-builder-v10\/wZUTjfXG#and-theres-more\"><\/a>And There&#8217;s More&#8230;<\/h2>\n\n\n\n<p>As well as the core modules that support your repertoire building journey, the platform comes with a bunch of extra features to make the experience even smoother:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Import &amp; Export Anytime<\/strong><br>Your repertoires and analysis are yours \u2014 bring them in or take them out. You&#8217;re never locked into the platform.<\/li>\n\n\n\n<li><strong>Mobile Responsive<\/strong><br>Use it anywhere, anytime. The interface works great on phones and tablets, so you can study and train on the go.<\/li>\n\n\n\n<li><strong>Multilingual Support<\/strong><br>The app is already translated into\u00a0<strong>12 languages<\/strong>, making it accessible to players around the world.<\/li>\n\n\n\n<li><strong>Light &amp; Dark Mode<\/strong><br>Switch between themes based on your preference \u2014 or your eyes at 2AM.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><a href=\"https:\/\/lichess.org\/@\/HollowLeaf\/blog\/repertoire-builder-v10\/wZUTjfXG#final-thoughts\"><\/a>Final Thoughts<\/h2>\n\n\n\n<p>Whether you&#8217;re just getting started with your openings or you&#8217;re deep into refining your repertoire, this platform was built to support the full journey \u2014 from building and training, to practicing, analyzing, and repeating the cycle.<br>It&#8217;s the kind of tool I wish existed when I started \u2014 so I built it, piece by piece, with feedback from the community and a passion for chess and learning.<br>And it\u2019s still growing. I\u2019ve got plenty of ideas in the pipeline, and the platform will continue to evolve with new features, improvements, and community-driven updates. It is, and will always be free to use with generous limits, and a future paid tier with additional functionality and increased limits.<br>Special thanks to&nbsp;<strong><a href=\"https:\/\/lichess.org\/@\/FRahde\">@FRahde<\/a><\/strong>&nbsp;and&nbsp;<strong><a href=\"https:\/\/lichess.org\/@\/mattchessic\">@mattchessic<\/a><\/strong>&nbsp;for their endless feedback, suggestions, and support throughout the journey \u2014 this project wouldn&#8217;t be the same without your input.<br>If you\u2019ve made it this far, thank you \u2014 now it\u2019s your turn to explore it.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<h4 class=\"wp-block-heading\"><a href=\"https:\/\/lichess.org\/@\/HollowLeaf\/blog\/repertoire-builder-v10\/wZUTjfXG#try-it-now-free-chessboardmagiccomrepertoirebuilder\"><\/a>Try it now, free:&nbsp;<strong><a href=\"https:\/\/chessboardmagic.com\/repertoirebuilder\">chessboardmagic.com\/repertoirebuilder<\/a><\/strong><\/h4>\n<\/blockquote>\n\n\n\n<p>If you have any questions, feedback, or just want to hang out and talk chess, you can reach me via our&nbsp;<strong><a href=\"https:\/\/discord.gg\/3SN7evwaKX\">Discord Server<\/a><\/strong>&nbsp;\u2014 I\u2019m always around.<\/p>\n\n\n\n<p>This is just my first official release, and there will be plenty of more ideas coming down the road,<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Built by a Chess Addict, for Chess Addicts Back in October 2023, I decided it was time to dust off my programming skills \u2014 and what better way to do that than by mixing them with my chess addiction? I kicked things off with some fun little projects like&nbsp;Guess the Elo&nbsp;and&nbsp;Guess the Eval, slowly getting [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":76,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-75","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/blog.chessboardmagic.com\/index.php\/wp-json\/wp\/v2\/posts\/75","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.chessboardmagic.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.chessboardmagic.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.chessboardmagic.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.chessboardmagic.com\/index.php\/wp-json\/wp\/v2\/comments?post=75"}],"version-history":[{"count":1,"href":"https:\/\/blog.chessboardmagic.com\/index.php\/wp-json\/wp\/v2\/posts\/75\/revisions"}],"predecessor-version":[{"id":77,"href":"https:\/\/blog.chessboardmagic.com\/index.php\/wp-json\/wp\/v2\/posts\/75\/revisions\/77"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.chessboardmagic.com\/index.php\/wp-json\/wp\/v2\/media\/76"}],"wp:attachment":[{"href":"https:\/\/blog.chessboardmagic.com\/index.php\/wp-json\/wp\/v2\/media?parent=75"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.chessboardmagic.com\/index.php\/wp-json\/wp\/v2\/categories?post=75"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.chessboardmagic.com\/index.php\/wp-json\/wp\/v2\/tags?post=75"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}