diff --git a/README.md b/README.md
index 286231b..12d0e19 100644
--- a/README.md
+++ b/README.md
@@ -25,3 +25,18 @@ git clone https://github.com/BytesClub/BytesClub.github.io.git
2. Install dependencies: `$ bundle install`
3. Run the server: `$ bundle exec jekyll serve`
4. From your browser, go to: `http://localhost:4000/`
+
+
+### Add a project
+
+##### JSON Data
+
+Added in an extremely stupid way, improve it if anyone is interested
+
+1. Get the data from
+
+```
+https://api.github.com/repos/BytesClub/
+* Accepting input from the user and producing the output
+* Ability to view and edit the contents of a file effectively
+* Searching
+* Syntax highlighting
+* Documentation of the overall project, using [Sphinx](http://www.sphinx-doc.org/en/stable/)
+
+**Technologies**: C, CLI
+**Maintainer**: [Rudra Nil Basu](https://github.com/RudraNilBasu)
+**Communication**: [BytesClub/General](https://gitter.im/Bytes_Club/General) on Gitter
+
+---
+
+#### [MAKAUT Connect](https://github.com/BytesClub/MAKAUT-Connect)
+A web application for MAKAUT students to get notified about lectures, events and exams.
+
+**Brief Explanation**: The project MAKAUT Connect currently has just a sample HTML page, with header ang logo. The project is Component driven based on Virtual DOM concept of [React](https://facebook.github.io/react/). We will be using [Express](https://expressjs.com/) for our back-end. Key features of this projects:
+* Whole project is in NodeJS running in Chrome V8 engine.
+* Codebase will be wriiten in ES6 Standard following our [Coding Style](/docs/coding_style.pdf).
+* We will be using Redux for Web API request handling and React-Router for routing purpose.
+* For REST API service we will be using Express as framework MongoDB/MySQL as database.
+
+**Technologies**: NodeJS, React-Redux-Webpack, RESTful API
+**Maintainer**: [Progyan Bhattacharya](https://github.com/Progyan1997)
+
+---
+
+#### [ServerX](https://github.com/BytesClub/serverX)
+A HTTP/HTTPS Web Server Handler by (C) Bytes Club
+
+**Brief Explanation**: The codebase of serverX is a clone of [CS50 Problem Set 5](http://cdn.cs50.net/2016/x/psets/6/pset6/pset6.html) with additional cross-platform dependency resolution. This project works in both Linux and Windows architecture. Key things about this projetc:
+* The code is completely written in C with few or more library dependencies.
+* We are using web socket to create network connections.
+* The project currently is Single-Threaded, but will be Multi-Threaded soon.
+* The codebase currently rely on shell and interpreter for executing scripts.
+
+**Technologies**: C, HTTP, Socket.IO
+**Maintainer**: [Progyan Bhattacharya](https://github.com/Progyan1997)
+
+---
+
+#### [Tic Tac Toe](https://github.com/BytesClub/Tic_Tac_Toe)
+A simple Tic_Tac_Toe implementation in C
+
+**Brief Explanation**: Tic Tac Toe is the biggest collaborative project on Bytes Club. This is a simple board game impleneted in C to run in terminal. The project currently has:
+* Static Credit screen followed by a Graphical representation of the board using ASCII characters.
+* Reload table after each moves given by user.
+* Determines winner and avoids multiple input at same place.
+* Currently working on Bot player with/without AI capability.
+
+**Technologies**: C, CLI, AI
+**Maintainer**: [Progyan Bhattacharya](https://github.com/Progyan1997)
+
+---
+
+#### [Xplode](https://github.com/BytesClub/Xplode)
+A 2D Game based on OpenGL
+
+**Technologies**: C++, OpenGL
+**Maintainer**: [Rudra Nil Basu](https://github.com/RudraNilBasu)
+**Communication**: [BytesClub/General](https://gitter.im/Bytes_Club/General) on Gitter
+
+---
+
+#### [Tabcalc](https://github.com/BytesClub/Tabcalc)
+A simple android scientific calculator using tab views
+
+**Brief Explanation**: Tabcalc was actually a normal calculator with an ambitious developer wanting to take it a notch higher. Its features are:
+* Light on the eye in the dark
+* Swiping tabs make it easier to switch to the scientific format
+
+**Technologies**: Java
+**Maintainer**: [Rohit Das](https://github.com/mouri11)
+---
+
+### How to apply
+
+Submit your proposal in a Google Doc format to the [BytesClub mailing list](mailto:bytes-club@googlegroups.com). Make sure you provide permission for mentors to feedbacks. A sample template can be found [here](https://github.com/BytesClub/Guidelines/wiki/Thousand-Lines-of-Code:-Application-Template)
+
+#### Pre-Requisite
+* **Hardware**: Any working computer with atleast pentium core processor and 512MiB RAM
+* **Operating System**: Any popular Linux distribution (Ubuntu 16.04 LTS is encouraged for new comers)
+* **Version Control System**: Git v2.x (recommended, v1.8.x will also work, but may require modifications)
+* **Tracker**: [GitHub in Terminal](https://www.npmjs.com/package/ghb) is Bytes Club's own [repo](https://github.com/BytesClub/ghb).
+* **Other**: An active [GitHub](https://github.com/) account and pre-requisites of particular projects available in Docs.
+
+#### Things to keep in mind:
+
+0. Make sure you join the Bytes Club [Mailing list](https://groups.google.com/forum/#!forum/bytes-club) and [Gitter Channel](https://gitter.im/Bytes_Club/General). All conversation will take place there.
+1. Do not set impossible goal. We are trying to do some real work here. So be as practical as possible.
+2. Participants can either work on issues registered already or on their independent ideas. In any case, there will be fixed boundary to which he/she can work on decided by the mentor.
+3. Introduce yourself properly mentioning your knowledge and experience properly, remember we will guide you likewise.
+4. Although it is okay to propose idea for multiple projects but we strongly encourage you to work on one.
+5. In case of multiple submission, the last proposal will be taken into account while evaluating.
+6. Communication is an important part of collaborative work. So try to be active as much as possible on our [gitter channel](https://gitter.im/Bytes_Club/General).
+7. We will review work progress and our goals in every week or so, according your mentor.
+8. The timeline is fixed and we are strict about our [Contribution Guidelines](/contributing/).
+9. Make sure you have some prior contributions to the projects you are planning to contribute during this period, it will be easier for you to get selected if you have prior knowledge about the codebase.
+
+### Prizes
+
+On successful completion, the students will recieve:
+
+* A Bytes Club T-Shirt
diff --git a/_assets/ghb.md b/_assets/ghb.md
new file mode 100644
index 0000000..207bbaf
--- /dev/null
+++ b/_assets/ghb.md
@@ -0,0 +1,17 @@
+---
+title: ghb
+name: GHB - GitHub on Terminal
+source: https://github.com/BytesClub/ghb
+maintainer: Progyan Bhattacharya
+maintainer_github: Progyan1997
+maintainer_desc: 2nd year Undergrad; Web developer, Programmer and Open Source Contributor
+technology: Node.js, npm
+platform: Linux/Mac/Windows
+documentation:
+install:
+json: ghb
+banner: Banner.png
+---
+
+GHB is a command line tool to fetch, view, modify and add Issues or Pull Requests on GitHub from user's terminal (or command prompt).
+
diff --git a/_assets/tictactoe.md b/_assets/tictactoe.md
new file mode 100644
index 0000000..0d7ba5b
--- /dev/null
+++ b/_assets/tictactoe.md
@@ -0,0 +1,17 @@
+---
+title: tictactoe
+name: Tic Tac Toe
+source: https://github.com/BytesClub/Tic_Tac_Toe
+maintainer: Progyan Bhattacharya
+maintainer_github: Progyan1997
+maintainer_desc: 2nd year Undergrad; Web developer, Programmer and Open Source Contributor
+technology: C
+platform: Linux, Windows & Mac
+documentation:
+install:
+banner: Banner.jpg
+json: tic_tac_toe
+screenshots:
+---
+
+ A simple Tic_Tac_Toe implementation in C.
\ No newline at end of file
diff --git a/_assets/xplode.md b/_assets/xplode.md
new file mode 100644
index 0000000..e27b666
--- /dev/null
+++ b/_assets/xplode.md
@@ -0,0 +1,17 @@
+---
+title: xplode
+name: Xplode
+source: https://github.com/BytesClub/Xplode
+maintainer: Rudra Nil Basu
+maintainer_github: RudraNilBasu
+maintainer_desc: 3rd year CS Undergrad, hobbyist game designer and programmer
+technology: C++, opengl
+platform: Linux
+documentation:
+install:
+banner: Banner.jpg
+json: xplode
+screenshots:
+---
+
+Xplode is a 2D game made with opengl and C++.
diff --git a/_config.yml b/_config.yml
index 8cf72e8..2ca4891 100644
--- a/_config.yml
+++ b/_config.yml
@@ -11,7 +11,7 @@ permalink: pretty
title: BytesClub
tagline: Coding Club, WBUT In-House
description: "An open source community for WBUT In-House Students"
-url: https://github.com/BytesClub
+url: https://bytesclub.github.io/
baseurl: /
author:
@@ -26,3 +26,31 @@ version: 1.0.1
github:
repo: https://github.com/BytesClub
+
+#Global vars
+asset-img-path: /img/assets/
+asset-path: /assets/
+asset-download-path: /downloads/assets/
+
+defaults:
+ - scope:
+ path: "_assets"
+ type: assets
+ values:
+ layout: asset-view
+ banner-img: Banner.jpg
+ two-thirds-img: TwoThirds.jpg
+ one-third-img: OneThird.jpg
+ priority: 10
+ show: true
+ file-type: .zip
+
+collections:
+ assets:
+ output: true
+ permalink: /:collection/:title/
+
+jekyll_get:
+ data: ttt
+ json: 'https://api.github.com/repos/BytesClub/Tic_Tac_Toe/contributors'
+ cache: true
\ No newline at end of file
diff --git a/_data/ghb.json b/_data/ghb.json
new file mode 100644
index 0000000..d2909be
--- /dev/null
+++ b/_data/ghb.json
@@ -0,0 +1,22 @@
+[
+ {
+ "login": "Progyan1997",
+ "id": 14367736,
+ "avatar_url": "https://avatars2.githubusercontent.com/u/14367736?v=3",
+ "gravatar_id": "",
+ "url": "https://api.github.com/users/Progyan1997",
+ "html_url": "https://github.com/Progyan1997",
+ "followers_url": "https://api.github.com/users/Progyan1997/followers",
+ "following_url": "https://api.github.com/users/Progyan1997/following{/other_user}",
+ "gists_url": "https://api.github.com/users/Progyan1997/gists{/gist_id}",
+ "starred_url": "https://api.github.com/users/Progyan1997/starred{/owner}{/repo}",
+ "subscriptions_url": "https://api.github.com/users/Progyan1997/subscriptions",
+ "organizations_url": "https://api.github.com/users/Progyan1997/orgs",
+ "repos_url": "https://api.github.com/users/Progyan1997/repos",
+ "events_url": "https://api.github.com/users/Progyan1997/events{/privacy}",
+ "received_events_url": "https://api.github.com/users/Progyan1997/received_events",
+ "type": "User",
+ "site_admin": false,
+ "contributions": 35
+ }
+]
diff --git a/_data/tic_tac_toe.json b/_data/tic_tac_toe.json
new file mode 100644
index 0000000..bd0d9c0
--- /dev/null
+++ b/_data/tic_tac_toe.json
@@ -0,0 +1,82 @@
+[
+ {
+ "login": "Progyan1997",
+ "id": 14367736,
+ "avatar_url": "https://avatars2.githubusercontent.com/u/14367736?v=3",
+ "gravatar_id": "",
+ "url": "https://api.github.com/users/Progyan1997",
+ "html_url": "https://github.com/Progyan1997",
+ "followers_url": "https://api.github.com/users/Progyan1997/followers",
+ "following_url": "https://api.github.com/users/Progyan1997/following{/other_user}",
+ "gists_url": "https://api.github.com/users/Progyan1997/gists{/gist_id}",
+ "starred_url": "https://api.github.com/users/Progyan1997/starred{/owner}{/repo}",
+ "subscriptions_url": "https://api.github.com/users/Progyan1997/subscriptions",
+ "organizations_url": "https://api.github.com/users/Progyan1997/orgs",
+ "repos_url": "https://api.github.com/users/Progyan1997/repos",
+ "events_url": "https://api.github.com/users/Progyan1997/events{/privacy}",
+ "received_events_url": "https://api.github.com/users/Progyan1997/received_events",
+ "type": "User",
+ "site_admin": false,
+ "contributions": 53
+ },
+ {
+ "login": "satyamvats5",
+ "id": 25989270,
+ "avatar_url": "https://avatars2.githubusercontent.com/u/25989270?v=3",
+ "gravatar_id": "",
+ "url": "https://api.github.com/users/satyamvats5",
+ "html_url": "https://github.com/satyamvats5",
+ "followers_url": "https://api.github.com/users/satyamvats5/followers",
+ "following_url": "https://api.github.com/users/satyamvats5/following{/other_user}",
+ "gists_url": "https://api.github.com/users/satyamvats5/gists{/gist_id}",
+ "starred_url": "https://api.github.com/users/satyamvats5/starred{/owner}{/repo}",
+ "subscriptions_url": "https://api.github.com/users/satyamvats5/subscriptions",
+ "organizations_url": "https://api.github.com/users/satyamvats5/orgs",
+ "repos_url": "https://api.github.com/users/satyamvats5/repos",
+ "events_url": "https://api.github.com/users/satyamvats5/events{/privacy}",
+ "received_events_url": "https://api.github.com/users/satyamvats5/received_events",
+ "type": "User",
+ "site_admin": false,
+ "contributions": 6
+ },
+ {
+ "login": "RudraNilBasu",
+ "id": 12744655,
+ "avatar_url": "https://avatars3.githubusercontent.com/u/12744655?v=3",
+ "gravatar_id": "",
+ "url": "https://api.github.com/users/RudraNilBasu",
+ "html_url": "https://github.com/RudraNilBasu",
+ "followers_url": "https://api.github.com/users/RudraNilBasu/followers",
+ "following_url": "https://api.github.com/users/RudraNilBasu/following{/other_user}",
+ "gists_url": "https://api.github.com/users/RudraNilBasu/gists{/gist_id}",
+ "starred_url": "https://api.github.com/users/RudraNilBasu/starred{/owner}{/repo}",
+ "subscriptions_url": "https://api.github.com/users/RudraNilBasu/subscriptions",
+ "organizations_url": "https://api.github.com/users/RudraNilBasu/orgs",
+ "repos_url": "https://api.github.com/users/RudraNilBasu/repos",
+ "events_url": "https://api.github.com/users/RudraNilBasu/events{/privacy}",
+ "received_events_url": "https://api.github.com/users/RudraNilBasu/received_events",
+ "type": "User",
+ "site_admin": false,
+ "contributions": 3
+ },
+ {
+ "login": "Amitava123",
+ "id": 26063103,
+ "avatar_url": "https://avatars2.githubusercontent.com/u/26063103?v=3",
+ "gravatar_id": "",
+ "url": "https://api.github.com/users/Amitava123",
+ "html_url": "https://github.com/Amitava123",
+ "followers_url": "https://api.github.com/users/Amitava123/followers",
+ "following_url": "https://api.github.com/users/Amitava123/following{/other_user}",
+ "gists_url": "https://api.github.com/users/Amitava123/gists{/gist_id}",
+ "starred_url": "https://api.github.com/users/Amitava123/starred{/owner}{/repo}",
+ "subscriptions_url": "https://api.github.com/users/Amitava123/subscriptions",
+ "organizations_url": "https://api.github.com/users/Amitava123/orgs",
+ "repos_url": "https://api.github.com/users/Amitava123/repos",
+ "events_url": "https://api.github.com/users/Amitava123/events{/privacy}",
+ "received_events_url": "https://api.github.com/users/Amitava123/received_events",
+ "type": "User",
+ "site_admin": false,
+ "contributions": 1
+ }
+]
diff --git a/_data/xplode.json b/_data/xplode.json
new file mode 100644
index 0000000..fd36e50
--- /dev/null
+++ b/_data/xplode.json
@@ -0,0 +1,22 @@
+[
+ {
+ "login": "RudraNilBasu",
+ "id": 12744655,
+ "avatar_url": "https://avatars3.githubusercontent.com/u/12744655?v=3",
+ "gravatar_id": "",
+ "url": "https://api.github.com/users/RudraNilBasu",
+ "html_url": "https://github.com/RudraNilBasu",
+ "followers_url": "https://api.github.com/users/RudraNilBasu/followers",
+ "following_url": "https://api.github.com/users/RudraNilBasu/following{/other_user}",
+ "gists_url": "https://api.github.com/users/RudraNilBasu/gists{/gist_id}",
+ "starred_url": "https://api.github.com/users/RudraNilBasu/starred{/owner}{/repo}",
+ "subscriptions_url": "https://api.github.com/users/RudraNilBasu/subscriptions",
+ "organizations_url": "https://api.github.com/users/RudraNilBasu/orgs",
+ "repos_url": "https://api.github.com/users/RudraNilBasu/repos",
+ "events_url": "https://api.github.com/users/RudraNilBasu/events{/privacy}",
+ "received_events_url": "https://api.github.com/users/RudraNilBasu/received_events",
+ "type": "User",
+ "site_admin": false,
+ "contributions": 18
+ }
+]
diff --git a/_includes/.browse-medium.html.swp b/_includes/.browse-medium.html.swp
new file mode 100644
index 0000000..d883ff1
Binary files /dev/null and b/_includes/.browse-medium.html.swp differ
diff --git a/_includes/browse-medium.html b/_includes/browse-medium.html
new file mode 100644
index 0000000..354383d
--- /dev/null
+++ b/_includes/browse-medium.html
@@ -0,0 +1,34 @@
+
+
+
{% endif %}
{% endfor %}
-
+
+{% endfor %}
+
+{% for member in site.data.ttt %} + Hello +{% endfor %} +
+ + diff --git a/_plugins/jekyll_get.rb b/_plugins/jekyll_get.rb new file mode 100644 index 0000000..c6f8e3c --- /dev/null +++ b/_plugins/jekyll_get.rb @@ -0,0 +1,40 @@ +require 'json' +require 'hash-joiner' +require 'open-uri' + +module Jekyll_Get + class Generator < Jekyll::Generator + safe true + priority :highest + + def generate(site) + config = site.config['jekyll_get'] + if !config + return + end + if !config.kind_of?(Array) + config = [config] + end + config.each do |d| + begin + target = site.data[d['data']] + source = JSON.load(open(d['json'])) + if target + HashJoiner.deep_merge target, source + else + site.data[d['data']] = source + end + if d['cache'] + data_source = (site.config['data_source'] || '_data') + path = "#{data_source}/#{d['data']}.json" + open(path, 'wb') do |file| + file << JSON.generate(site.data[d['data']]) + end + end + rescue + next + end + end + end + end +end \ No newline at end of file diff --git a/_posts/2017-02-23-introduction-to-git.md b/_posts/2017-02-23-introduction-to-git.md index 4d102cd..24a8b59 100644 --- a/_posts/2017-02-23-introduction-to-git.md +++ b/_posts/2017-02-23-introduction-to-git.md @@ -1,162 +1,200 @@ ---- -layout: post -title: Introduction to Git and GitHub ---- - -> "Real men use the command line" - -# Git - -Git is a [version control system](https://en.wikipedia.org/wiki/Version_control) to track changes in files in a computer and allow multiple people to work on those files. It was created by [Linus Torvalds](https://www.youtube.com/watch?v=IVpOyKCNZYw) [^ted], in less than 2 weeks. - - -### Why we need git - -Simply put, it is like checkpoints in games, and we can fearlessly modify code, without creating a backup, removing the need to do this: - - - -Git is also fully distributive, allowing multiple people to work on a project easily, and maintaining the changes made by them. - - - -### Installing git - -Git is installed on Debian/Ubuntu, from the package manager by: - -``` -sudo apt-get install git -``` - -### Create a git repository - -To create a new git repository, create a new directory, go to the directory via the terminal, and perform a - -``` -git init -``` -to create a new git repository - -### Add changes - -After modifying/adding files on the repository, to add the changes made to the files in the staging area, use the `git add` command - -``` -git addThousand Lines of Code (TLoC) is a open source program initiated by Bytes Club to bring more students into open source development. Students will have to work under their mentors on one or more project for a span of 3 months during their semester breaks
+ +A command line text editor written in C
+ +Brief Explanation: Currently chalk is in a very early stage of development. The idea of this project is to complete the basic version 1.0 of chalk along with it’s documentation:
+* Accepting input from the user and producing the output
+* Ability to view and edit the contents of a file effectively
+* Searching
+* Syntax highlighting
+* Documentation of the overall project, using Sphinx
Technologies: C, CLI
+Maintainer: Rudra Nil Basu
+Communication: BytesClub/General on Gitter
A web application for MAKAUT students to get notified about lectures, events and exams.
+ +Technologies: NodeJS, React-Redux-Webpack, RESTful API
+Maintainer: Progyan Bhattacharya
A HTTP/HTTPS Web Server Handler by (C) Bytes Club
+ +Technologies: C, HTTP, Socket.IO
+Maintainer: Progyan Bhattacharya
A simple Tic_Tac_Toe implementation in C
+ +Technologies: C, CLI, AI
+Maintainer: Progyan Bhattacharya
A 2D Game based on OpenGL
+ +Technologies: C++, OpenGL
+Maintainer: Rudra Nil Basu
+Communication: BytesClub/General on Gitter
Submit your proposal in a Google Doc format to the BytesClub mailing list. Make sure you provide permission for mentors to feedbacks. A sample template can be found here
+ +On successful completion, the students will recieve:
+ +