What we're doing today!
- Why you should open source your passion project
- What is Smooch? What's the Kisekae Set System?
- An overview of the project structure and how you can contribute.
- You'll pick some way you want to contribute and I'll help you make it happen!
You should
open source
your passion project!
"But... it's not finished..."
That's okay! I've been working on Smooch for 3 years and it's still not done!
"But... people will find out I can't code..."
Your git history will show how much you can learn and improve by doing!
and 99% of people won't look at the code and don't care!
"But... dudes will be jerks on the internet..."
Your project can become a supportive community that can help you survive the haters.
This is your project, and your community! You can craft it to be what you want and need.
99 reasons
to open source
a silly hobby project
1. Low stress
2. Get feedback and learn
3. Stay motivated!
4. Meet others who are passionate about the same thing!
5-99. It's fun!
Smooch
a KiSS viewer web app
Kisekae Set System (KiSS)
"Sailor Moon" by MIO.H (1991)
"Aylin" by Kimiki (2001)
"Aylin" by Kimiki (2001)
"Aylin" by Kimiki (2001)
- Layered multi-cell "objects" create items with fronts and backs
- "Snap-to"
"Aylin" by Kimiki (2001)
"FKiSS" menus
and animation
(show some KiSS dolls in desktop viewer)
"Aurora" by Punky (2001)
What is a
KiSS set?
- Cels (*.cel)
- Palette(s) (*.kcf)
- Configuration(s) (*.cnf)
Distributed as compressed archives (Japanese LHA format)
Typically viewed in a desktop KiSS viewer application
Configuration
- Palette(s)
- Play area size
- Background color
- Cels
- Objects
Configuration
- Positions
Configuration
- The FKiSS scripting language
How Smooch Works
Cels & Palettes
The Back End
Haskell!
The Front End
Plain old JavaScript, HTML, and CSS!
Contributing
https://www.github.com/emhoracek/smooch
A few ways you can contribute
- Fix an issue
- Add documentation
- Improve code (adding tests, refactoring, linting)
- Review my PR (#49)
- Suggest architecture improvements
- Add features from the roadmap in the README
How to contribute JS code
- Fork the codebase
- Clone your fork
- Open the docs/index.html file in your browser
- Find stuff you want to fix!
- Fix it!
- Commit and push to your repo
- Make a PR
Fork the codebase
Clone the repository
Clone the repository
git clone (the url you just copied)
Open project in Firefox
e.g. file:///Users/you/path/to/smooch/docs/index.html
These sets all use the same JavaScript and CSS in the /javascript directory.
Find a problem you want to fix
Please choose something
as small as possible
for tonight.
Typos are great!
For tonight, please avoid:
- Any sort of automatic reformatting
- Even manually reformatting more than one line of code
- Changing more than a few lines in general
Sticking to small, simple changes will help us avoid stepping on each others' toes!
If you want to make a large change:
Awesome!!
Make an issue describing the problem you want to solve and your idea for solving it!
Fix the problem and commit!
- git add <the file you changed>
- git commit
Push your fix to your fork
git push
Make a pull request
Make a pull request
Make a pull request
In conclusion...
I hope Smooch has inspired you to open source your projects and to contribute to others' projects!
Let's start making some issues and pull requests! :D
Slides: https://slides.com/emhoracek/deck-5-14
Repo: github.com/emhoracek/smooch
Twitter: @horrorcheck
I work at:
@positiondev // positiondev.com
Smooch: an open source dress up doll viewer
By emhoracek
Smooch: an open source dress up doll viewer
- 1,296