Welcome to the PRISM Break project. Here's a quick overview of the code. JSON containing all of the project data is filtered through LiveScript and then compiled to plain HTML with Jade templates. Stylesheets are managed with Stylus, a CSS preprocessor.
The prism-break build process relies on several npm packages. Make sure to have io.js or node.js installed on your system if you want to contribute to the code.
If you'd like to translate the project to your favorite language, there's no need to install io.js or even download the code. Just edit the appropriate JSON files on GitHub and submit a pull request.
More information for translators can be found in
CONTRIBUTING.md
.Project Inclusion Guidelines
- Only F/OSS software is allowed to be featured on PRISM Break.
PRISM Break follows the GNU/FSF definition of Free Software and prefers software licensed under a compatible license but may allow other OSI reviewed licenses. The only exception is when free software offers no viable alternative to proprietary software. "Web Search" is the only category with this exception currently.
- Quality over quantity.
PRISM Break strives to promote the best open source applications. Ease of use, stability, and performance matter. This is the first time many people are looking to leave their proprietary walled gardens. Let's make it a good experience for them. If you're writing a privacy-minded FOSS app, please finish it before asking PRISM Break to promote it.
- Before suggesting software, please first search this repository to see if your request has already been made.
If it has been rejected, you'll learn why. If the issue hasn't been addressed, add a comment as to why it deserves inclusion. If the software has been improved significantly since the initial rejection, feel free to suggest it again.
- Pull requests are prioritized over issues.
I will respond to them quicker and they will get an answer faster.
Project Submission (quick version)
1. Edit
Add the project you wish to get listed.
vi ./source/db/en-projects.json # edit or add a project
cp project.png ./source/assets/images/logos/medium/ # put 60x60 PNG here
2. Test
Make sure your edits do not break the site by building the English version of PRISM Break. Open the pages to make sure it all works.
npm install
make test # builds ./public/en for preview purposes
3. Translate
You edited the
en-projects.json
file earlier. This only creates a project description for the English version of PRISM Break. Please copy the project description to all the other language files, so translators work on it more easily.# Copying your edits to *-projects.json
./source/db/*-projects.json
At this point, feel free to commit the changes and submit a pull request. Steps #4 and #5 are only necessary if you want to build your own copy of the site.
4. Build
make # get a drink, it'll take a while build all 27 languages
make reset # making a drastic change? run this instead of `make`
# this will vaporize /public before running `make`
5. Serve
Serve the folder
./public
on your web server。
from https://github.com/nylira/prism-break