FOSSASIA Google Code-In Website 2018 gci18.fossasia.org
This is the repository for FOSSASIA's website for Google Code-In 2018, we at FOSSASIA intend to develop it collaboratively during the course of this competition by participating students themselves. Fork the repository before making changes and make sure you read FOSSASIA Best Practices
Please join our mailing list to discuss questions regarding the project.
Our chat channel is on Gitter
Things you should know before contributing:
- All pull requests need to be associated to an issue.
- All PRs need to be assigned to the person working on it.
- If an issue cannot be completed in less than a day, it should be broken up into multiple issues.
- Make pull requests from your own forks (even if you have write rights to the repository, do not create new branches, develop on your own branches).
- State the actual change or enhancement in the commit message of PRs (do not just state “Fixes issue #123”).
- Add the issue number into the description (this helps to speed up reviews as reviewers can simply click to get more info in the issue itself).
- Write clear meaningful git commit messages (Do read http://chris.beams.io/posts/git-commit/).
- Match pull requests with issues and make sure your pull requests description contains GitHub’s special keyword references that automatically close the related issue when the pull request is merged. (More info at https://github.com/blog/1506-closing-issues-via-pull-requests).
- When you make very minor changes to a pull request of yours (like for example fixing a failing travis build or some small style corrections or minor changes requested by reviewers) make sure you squash your commits afterwards so that you don’t have an absurd number of commits for a very small fix (Learn how to squash at https://davidwalsh.name/squash-commits-git).
- Add a screenshot if you changed anything in the UI of a project. When you’re submitting a pull request for a UI-related issue, please add a screenshot of your change or a link to a deployment where it can be tested out along with your pull request. It makes it much easier for the reviewers and helps to speed up the process. You’ll also get reviews quicker.
- Add a link to your deployment of the project, where reviewers can check out what you have changed (especially for smaller changes this is very helpful as the reviewer might not even need to set up the system itself and test it. Again this speeds up the review process a lot).
- Always ensure CI and tests are successful.
- Help to resolve merge conflicts (especially if there are several PRs at the same time, merge conflicts are common. Help the reviewers and solve merge conflicts to speed up the process.).
- Merging Pull Requests should only happen if at least two contributors reviewed the PR and approved it.
How to run locally?
- It is easy to run locally. Don't be afraid! :D
- If you have Git already installed, skip the step 3. If you have cloned your fork already skip steps 4 and 5.
- First of all you need to complete some requirements. Install them if you don't have things in this documentation.
- Open your terminal and install jekyll
gem install jekyll bundler.
- Download and install git on your pc.
- Go to gci18.fossasia.org site make a fork if you haven't already.
- Open Git Bash and clone your repository into your pc.
git clone https://github.com/<_your-name-here_>/gci18.fossasia.org.
- Go inside to your cloned repo, and open Git Bash.(If you have done 5th step do this
bundle installto install dependencies.
bundle exec jekyll serve.
- You will see a server address. To view gci18.fossasia.org site, go to
localhost:4000from your favourite browser.
- Now the work is done.
How to add your Photo Nick to the website:
- Choose a photo(or representation like a "nick" image) and set the size to 240x240 px
- Upload your photo to the img/students folder, with an acceptable name :)
- Add yourself to the _data/students.yml file as shown below
- name: Student's name github: Student's Github username image: Your image (or representation like a "nick" image) - the name must match the one you uploaded to the folder
How to add a mentor to the website:
- Choose a current GCI mentor and seek permission before adding him/her
- Ask for a picture or take it from github and set the size to 240x240 px
- Upload the picture to the img/mentors folder - with a suitable name
- Add the mentor to the _data/metors.yml file as shown below
- name: Mentor's name github: Mentor's github link img: Mentor's img
How to add location marker to the map
- Get your geographic coordinates using a geolocation finder (if you don't want to provide your exact coordinates you can use this one to get general coordinates for your city or country)
- Copy your latitude and longitude and paste them into the respective lines in your student profile in the _data/students.yml file
lat: your latitude lng: your longitude
- The marker should appear in the given location containing your name/nickname you provided in your student profile
- Choose a GCI mentor and contact them asking for their permission before adding his/her location
- Ask the mentor for their coordinates (latitude and longitude)
- Paste their latitude and longitude and paste them into the respective lines in their mentor profile in the _data/mentors.yml file
lat: mentor's latitude lng: mentor's longitude
- The marker should appear in the given location containing the mentor's name
How to add a New Project to the website
Choose a FOSSASIA project
Ask for a picture or take it from github and set the size to 1366x566 px
Upload the picture to the img folder - with a suitable name
Add the project to the _data/orgprojects.yml file as shown below
- title: Project name img: Project screenshot desc: Project description github: Project github link try: URL where project is hosted
How to add your video to the Videos section:
- Make your video, you can search for open-source video editing software
- Once your video is ready, post it on your YouTube channel (if don't have one - create it!)
- After uploading the video to your channel add it to the _data/videos.yml file as shown below:
- name: Title you want to be shown on the gci18.fossasia.org website (it's recommended to use the same as the video's youtube title, but you can choose a different one) id: The YouTube ID of your video , it's the 11 characters after the v= in your video's link (e.g. for this link: https://www.youtube.com/watch?v=NFCcqIq84UI the id is: NFCcqIq84UI ) user: Your name that will be displayed on the page
Note: Your video must be uploaded after the 1st of January 2018 in order to display properly on the gci18.fossasia.org page
How to add a language to the Thank you section:
- Choose a language(probably one you're familiar with)
- Pick the phrase "Thank you for your contributions" or "Thank you for contributing" and translate it
- Add the translation to the
var items = ;in the js/thankyou.js file
gradient-pink-light= #ff9a9e 0%, #fad0c4 99%, #fad0c4 100%
gradient-pink= #ff758c, #ff7eb3
gradient-cyan-light= #84fab0 0%, #8fd3f4 100%
gradient-cyan= #43e97b 0%, #38f9d7 100%
gradient-blue-light= #a1c4fd 0%, #c2e9fb 100%
gradient-multi-cool= #2CD8D5 0%, #C5C1FF 56%, #FFBAC3 100%
gradient-multi-hot= #FFE29F 0%, #FFA99F 48%, #FF719A 100%