Table of Contents
A modernized template for Skyrim mods, built with out-of-the-box integrations with Caprica, Pyro, VSCode, Actions, and more. Download source code made with this template, and - with the right tools - you can get a working mod in less than a minute. Push a commit to your repository, and it'll give back a FOMOD installer ready for sharing. Make full use of GitHub's enterprise-tier source control features, and put it to work on your chores. This is modding dragged kicking and screaming into the century of the fruit bat. |
✒️papyrus-lang✒️
✒️Visual Studio Code✒️
🔧Caprica🔧
🔧Pyro🔧
🔧Spriggit🔧
🔧Mutagen🔧
📖amazing-github-template📖
Tip
For more information, check out the wiki page on dependencies.
To use this template properly, you must have:
- The prerelease build of Caprica
- The prerelease build of the VSCode Papyrus extension
- The prerelease build of Pyro to replace the one in the extension's directory
- A GitHub account and a git installation
- The latest build of Spriggit
- Visual Studio Code and some basic extensions
- dotnet script and its dependencies (optional)
Tip
For more details, please see the wiki page on installation.
- Install all tools and dependencies
- Use Vellum as a template to create your own GitHub Repository.
- Clone it
- Delete sample project files
- Add your GitHub secrets token to Pyro
- Change
settings.json
- Enable GitHub Actions (mandatory) and GitHub Discussions (optional)
- (Optional) Disable Mutagen scripts
- Update FOMOD's
info.xml
andModuleConfig.xml
with your project's details - Adjust FOMOD to properly include your
.esp
s and nothing else - Adjust build script constants and FOMOD creation step
- Edit .gitignore
Note
You don't necessarily have to follow the below steps to craft your documentation. You can radically adjust this template as you see fit, or simply remake it from scratch.
You may find it helpful to consult this curated list of cool READMEs, this amazing template generator, and this video about designing a good README.
- Update documentation
- Change all repository URLs. You should search and replace the whole repository, not just the README
- Change my name and GH profile
- Change Vellum to your project's name
- Change screenshots and images to correspond to your mod
- Add links to your socials and mod pages (e.g. Twitter, Nexus, Discord)
- Rewrite About
- Update Built With, Getting Started, Usage, Authors, and Acknowledgements
- Update logos, screenshots, and any other supplementary resources
- Amend the various GitHub templates (e.g.
CONTRIBUTING.md
,SECURITY.md
, andCODE_OF_CONDUCT.md
) as necessary. Most of the time, it shouldn't be.
- Fork and clone the mod's repository
- Install the Prerequisites
- Run the
Build All
task - Ensure that mod has been properly prepared. This will include:
- No errors in the console
- All
.esp
plugins are in the root directory Scripts/
in root are filled with.pex
files- All files in
dist
have been copied into root (e.g.skse/
,interface/
)
Just run Build All
. That's it!
If you must perform other build tasks, add them to tasks.json
and put them into Build All
's dependsOn
. Consider making a Pull Request for your new task to this template so other people can make use of it!
Before you commit any code, make sure to run the Prepare Sources
task. It's always a good idea to ensure on every commit that your code compiles and doesn't crash.
Important
Consider using semantic versioning (e.g. v1.3.1
) to name your release versions. It's standard industry practice for many good reasons.
Automated builds let you make releases quickly and often, and it's always a good idea to make your most recent changes as accessible as possible. You can generate a release through GitHub Actions:
- In the Actions tab, select the
Build Release
workflow in the left pane - Click
Run Workflow
in the workflow runs table - Fill in your release version and turn on
Publish Release?
- Run the workflow and wait for it to finish
- In the Releases section of your repository, find the newest release (it'll be a pre-release)
- Edit the details as required
- Un-check
Set as pre-release
and checkSet as latest release
See the open issues for a list of proposed features (and known issues).
- Top Feature Requests (Add your votes using the 👍 reaction)
- Top Bugs (Add your votes using the 👍 reaction)
- Newest Bugs
Reach out to the maintainer at one of the following places:
- GitHub Discussions
- Contact options listed on this GitHub profile
- Make a new issue
If you want to say thank you or/and support active development of Vellum:
- Add a GitHub Star to the project.
- Write interesting articles about the project on Dev.to, Medium or your personal blog.
- Spread the word on Bethesda modding discords and forums
- Use Vellum to make own mods! The more we stress-test this simple-looking template, the more robust and feature-rich we'll make it
First off, thanks for taking the time to contribute! Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make will benefit everybody else and are greatly appreciated.
Please read our contribution guidelines, and thank you for being involved!
The original setup of this repository is by Daniil Zaikin.
For a full list of all authors and contributors, see the contributors page.
Vellum follows good practices of security, but 100% security cannot be assured. Vellum is provided "as is" without any warranty. Use at your own risk.
For more information and to report security issues, please refer to our security documentation.
This project is licensed under the GNU General Public License v3.
See LICENSE for more information.
This would not have been possible without:
- 🏅dec0dOS, for making an 💎amazing-github-template
- 🏅Pickysaurus, for creating the inspiration of this template in the 💎Starfield build script
- 🏅joelday, for his years of work on the slick 💎VSCode papyrus-lang extension, not to mention 🏅everyone else
- 🏅nikitalita and 🏅Orvid for making the impossible possible with 💎Caprica
- 🏅fireundubh for forcing the future into the present with 💎Pyro
- 🏅sanjaysai for the cool, simple, and free 💎logo
- 🏅Noggog, for the indescribably useful 💎Spriggit and 💎Mutagen