Contributing to the Keep Dreaming Project
Thanks for helping out! This will be a general guide on how to contribute to the project, enjoy!
How Can I Help?
The project has a pretty big scope so I'm sure you'll find something you can help with! I'll outline what some of those areas are below.
GitHub is used solely as a repository mirror, issues and contributions should be done using Phabricator. Exceptions will be noted.
I plan on doing all the hardware design work myself, but I'm open to any input or ideas. There are some areas I might need help in:
- Testing development boards
- Creating tests to make sure they work as intended
Right now I only have a handful of NA and JP VA1 Dreamcasts to examine and test with, I'd like to get my hands on more variants. Randomly buying Dreamcasts on eBay trying to find specific versions doesn't work very well.
There are quite a number of different software projects however many of them are in the planning stages.
When the development boards are done we'll need help in essentially all facets of developing software for them.
GD-ROM ODE, Network Adapter, Wireless Controller, Logic Analyzer
Sigrok Protocol Decoders
Contributing to any of the opensource projects that the Keep Dreaming Project relies upon is great too, which you can checkout below in the tools section!
- Collecting and organizing information about the Dreamcast
- Contributing any research that you've done
- Adding model, assembly, and part information to InvenTree
- Taking and gathering pictures
Writing up documentation on the various facets of the Keep Dreaming Project itself.
- Hardware Documentation
- Design, Operation, and Assembly
- Software Documentation
- Operation, Compilation Instructions
How to actually contribute and use the services or any of the other stuff under the Keep Dreaming Project umbrella.
- Phabricator and arcanist
- How to contribute code
- How to report issues
- How to request a feature or enhancement
- How to use Phabricator and arcanist
- How to use BookStack
- Style Guide?
- How to use InvenTree
- How to add models, parts, and assemblies
- Explanation of templates and variants and how parts tie together
Creating templates for BookStack and tasks on Phabricator.
Thankfully most of the major stuff is taken care of but there's still a lot to improve.
I've been working on adding permission, registration, and authentication systems to InvenTree to make it usable for our use case. Right now it's pretty hacked together and needs a lot of work.
Currently adding features and cleaning things up, but it works as intended for the most part
This works but is really poorly implemented, it either needs to be cleaned up or redone.
I need to migrate QMSV from being a Sublime-Text plugin to a VSCode extension. There is also a relatively new Phabricator extension that I plan on contributing to in order to make using arcanist easier.
Contributing to Patreon helps in a couple of ways
- Helps with hardware costs (parts, PCBs, etc...)
- Lets me spend more time on the project
- Helps cover server costs
Currently the server costs are really low. But as the project grows the tiny VPS I'm paying for won't be enough.
Joining The Project
By default you will only have viewing permissions, you'll have to contact me in order to start contributing. Even though I can restore things I'd still like to avoid griefers.
You can contact me at any of these places (e-mail or Discord work best):
In your message include:
- What username you used to sign up
- And at least one of the options below
- How and why you want to contribute
- Send me a link to a project or post that shows you know something about the Dreamcast/Programming/Electronics
It doesn't need to be lengthy or very good. Once I review it I can give you the appropriate permissions so you can start contributing!
Otherwise everyone is welcome on the Discord server and you can chat with us there.
InvenTree is still under construction and is currently closed to contributions.
All of my hardware designs are licensed under the CERN OHL v1.2 or later.
Currently there isn't a good opensource license for HDL, many other projects use the MIT or GPL license although they aren't designed for it. I would like to use the CERN OHL v2 but it is still a draft.
Text, Images, Etc
Anything not covered by the previous licences will use the CC-BY-SA-4.0 license, exceptions will be noted.