A CMS generator for local clones of MicrosoftDocs content repositories. A workspace generator for local development powered by scripts and Copilot. A content project planning tool generates ADO bulk work item uploads.
- fork this repo
- fork the content repo you want to edit
- Make a content directory & cd into it
- clone your forks
- cd admin-learn
- npm install
- npm plan
- Edit your plans
- npm execute
- Edit your content
admin-learn, git, and ADO are the only software you need to effectively manage, develop, and execute content portfolios on Microsoft Learn. The project stores schema.json-derived forms, and a variety of CMS for targeted editing of each repository, enabling every contributor to learn to quickly and accurately create and edit any type of learn content from the browser, saved to the source .yml and .md files in local repositories. It generates .csv files for bulk work item upload to ADO, complete with instructions and links to guidance, assignment from values in plan.yml
In short, it does all of the copying and pasting I could ever need, for me. It connects the rules that govern the content we create to the forms we edit them in, and the work items we discuss and track them with. It enables me to edit content with the confidence that I will not screw up the yaml and enter a cycle of broken builds until I grasp the schema enough to make it work. It does this for everyone, automatically.
It allows us to focus more on the transfer of learning, the courses, modules, paths, and docs we write and manage. To me, it provides a platform to explain why I think we, like most, do this poorly, and to develop a course that follows the Ten Steps to Complex Learning, about developing content on Learn (using this toolset)
- Enabling partners and contributors to add and edit content on Microsoft Learn
- Why is it Important? Growth and engagement
- Impact of the Problem - slows time to content/time to engagement to have a complicated manually-documented system.
- Editors run hugo server, edit, save in browser, then commit, push, and PR with GitHub/similar tools, with zero broken builds because the editing interface validates with the criteria in the schema.
- Enables JIT validation in vscode and the UI for every type of content.
- Enables pattern-based content scaffolding from the CLI
- Infinitely customizable
- Content portfolio plans generate ADO work item.csv files for bulk work item tree upload scaffolded content files for completing the items, and a CMS for editing those files locally.
- One CMS per feature can automatically enable editing of only the files in the plan
- One CMS per repo can edit everything in the repo, or only the configuration files
- Generates CMS collections and fields from schema.json files that also generate and validate the interface of MS Learn.
- Build pipeline in admin-learn-generator
- Clone & run
- Plan
- Execute scaffolds all of the ADO .csv files, .yml and .md files, and an admin/feat/index.md file with file collections to edit the scaffolded files.
- Contributors edit content
- fork content repo
- clone
- sync if necessary
- checkout branch
- cd ../admin-learn
- hugo server
- https://localhost://1313/admin/CMS
- edit content in UI with abundant adjacent help text and links to guidance and Copilot prompts.
- save
- commit
- push
- Anything that must be repeated should be automated.
- Automatically keeps up with schema changes
- Reduces->Eliminates build errors
- Open-/inner-sources contributor interface
- Tightens integration with project management system
- Fully customizable
- Share/use/market
- Formalize/handoff project
- Change ownership from bmackinney to MicrosoftDocs
- Write tests
- Automate builds
- Automate releases
- Create meta training modules
- Potential Questions or Objections
- Integration with Existing Systems
- Maintenance and Support
- Try it out
- Review the work items plan