Giter Site home page Giter Site logo

iranopensourcehackathon's Introduction

logo

Join the chat at https://gitter.im/Iran-Open-Source-Hackathon/community

Iran Open Source Hackathon is an open-source hackathon (duh) with the aim of encouraging participation in open-source contribution amongst Iranian developers. There is a curated list of repositories whose maintainers volunteered to be part of the hackathon. Contribute to any of these repositories during the hackathon, and at the end top contributors will be acknowledged here (so yes in the end its just about bragging rights).

👉 If you are a maintainer and want to enter some of your repositories in the hackathon so our participants will contribute to them, check this section.


A Note on Terminology

In these documents, keywords MUST, MUST NOT, REQUIRED, SHALL, SHALL NOT, SHOULD, SHOULD NOT, RECOMMENDED, MAY, and OPTIONAL, when appearing in caps lock and in bold, are to be interpreted as described in RFC 2119. This is not a software spec document, but still the extra clarity helps avoiding confusion.



How Can I Participate?

Contribute to one of these repositories during the time of the hackathon:

  • Make a pull request, include #iosh in its title, body or comments.
  • The pull request MUST be accepted to the repository before the end of the hackathon.
  • Each pull request will count towards your total score.
  • At the end, all top contributors (highest number of PRs) will be acknowledged here. We'll update the list during the hackathon every 3 hours as well.

👉 If you are unfamiliar with open-source contribution, git or github, take a look at these resources. You could also join us at gitter to seek help and pointers.

NOTE: Please carefully read our code of conduct before you start contributing.


Why Should I Participate?

  • You will help improve software that people like you use (apes together strong).
  • You will learn a lot (like seriously, a TON).
  • You will earn street-cred (which also helps with employability).

I Am A Maintainer. Can I Add My Repos To This Hackathon?

Of course! You need to:

  1. Fork this repository.
  2. For each repository like https://github.com/jafar/my-repo, add a yaml file to first/repos
    (i.e. first/repos/jafar/my-repo.yaml):
# first/repos/jafar/my-repo.yaml

name: My Cool Repository
description: I am particularly cool here
languages:
  - JavaScript
  - Hashemi
  - ...
  1. Make a pull request.

👉 You can see examples in the repos directory.

👉 You can add a list of maintainers (with whom hackathon participants can be in contact) as well:

# first/repos/jafar/my-repo.yaml

name: My Cool Repository
description: I am particularly cool here
languages:
  - JavaScript
  - Hashemi
#
# 👉 for user `https://github.com/asghar`, add `asghar` to this list
# 👉 also don't forget the repo owner if they are going to be a maintainer as well
#
maintainers:
  - jafar            # 👉 MUST be GitHub username, NOT YOUR NAME!
  - asghar
  - nooshin
  - maliheh

👉 If your repo belongs to a company or organization, you MUST specify maintainers independently.

NOTE: Please carefully read our code of conduct before you submit your repositories.


Repositories

Name Description Owner Maintainer(s) Languages
jb-time-input HTML time input Web component support keyboard typing and time select window. javadbat javadbat Javascript, Web Component, SASS, HTML, CSS
Callbag JSX callbags + JSX: fast and tiny interactive web apps loreanvictor loreanvictor typescript
Persian Calendar for Gnome-Shell A Gnome-Shell extension to show Persian date/calendar omid omid JavaScript
text-to-commit-history Write a large text on your Github profile, with your commits history (contribution graph). erfaniaa erfaniaa Python
Letiner An intelligent Leitner to memorize information, especially words, without needing to maintain boxes manually. It can be synced with Dropbox. justmisam justmisam Javascript, HTML, CSS
TyFON Typed Functions Over Network loreanvictor loreanvictor typescript, javascript
Sariaf Fast, simple, and lightweight HTTP router for Golang. majidsajadi majidsajadi go
ICECREAM ICECREAM framework for Bottle designed to simplify building restful API. xenups xenups, navidnabavi Python
hybrid-boilerplate boilerplate use react as a app and handlebar for server side rendering and use fully ES6 structure javadbat javadbat, Sinakhx Javascript, Web Component, SASS, HTML, CSS
All About Spring A reference set of implementations of spring functions and features shuoros shuoros Java
Pytse Client Work with tehran stock exchange data with Python glyphack glyphack Python
Web++ A C++ web framework, aimed to be easy to use, feature-rich, and fast the-moisrex the-moisrex, fatal-err C++
Awesome C++ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny things. fffaraz fffaraz Markdown
IranOpenSourceHackathon A Hackathon for Iranian Open Source Developers OSS-Hackathon mehdy, SamaneYaghoobi, ebraminio, loreanvictor python, yaml (GitHub Actions)
flutter-global-configs A flutter package to manage application configurations via singleton pattern. initCommerce mehdizarepour Dart
webp-server Simple and minimal image server capable of storing, resizing, converting and caching images. mehdipourfar mehdipourfar Go
Better Twitter A simple python tool that makes your Twitter timeline much better. saeedesmaili saeedesmaili python
Lightweight Message Queue (LMQ) A lightweight message queue to work with short messages or content references as messages. justmisam justmisam Go
paperify Backup files on paper using QRCodes. alisinabh alisinabh shell
ShamChi Randomly selects a Persian food to cook for dinner and serves the application on a static github pages. HesamKorki HesamKorki JavaScript, CSS, HTML
MigMig Simple HTTP Client for Golang. majidsajadi majidsajadi go
Iconbox A world of famous icon packs with easy to use interface iconsbox sayjeyhi javascript, typescript
divar-starter-kit React.js SSR-ready boilerplate using Razzle. divar-ir iMohammadReza javascript
FBL(Find/File broken links) FBL is tool to find broken links in articles and files mr-tafreshi mr-tafreshi Python
PHP Rest Response A PHP standard response structure to unify responses between microservices. ajangi ajangi php
PyLMQ Python Library for LMQ justmisam justmisam Python
Zarb project Zarb blockchain zarbchain b00f Go, Rust, Javascript
Tchess Play chess in the terminal! parsampsh parsampsh python, Python
instagram-text-editor An Instagram like text editor Flutter widget that helps you to change your text style. mehdizarepour mehdizarepour Dart
Paperboard Paperboard, is a cli application for managing a reading list of bookmarks from the Internet. majidsajadi majidsajadi javascript
Scikit-learn Persian Community Translated documents and educational content about scikit-learn library in machine learning mehrdad-dev mehrdad-dev markdown, html, css, js
Laravel EasyPanel A beautiful and flexible admin panel creator based on Livewire for Laravel rezaamini-ir rezaamini-ir PHP, Blade
Persian language tools for Rust An anthology of a variety of tools for the Persian language in Rust rustland-fa robatipoor, kianenigma, omid Rust
BarnameKon Telegram bot which create "Add to Google Calendar" link for your events. anvaari anvaari python
thatcher-effect-dataset-generator Using OpenCV to apply Thatcher effect on a set of face images erfaniaa erfaniaa Python
django-tgbot Python package for creating Telegram bots inside Django projects Ali-Toosi Ali-Toosi Python
gato A dart utility library inspired by javascript lodash library. initCommerce mehdizarepour Dart
fa.javascript.info Modern JavaScript Tutorial in Persian (Farsi) javascript-tutorial mahdyar javascript, markdown
gRPC Go Contracts Verify the communication of your microservices by writing contracts for your RPCs shayanh shayanh go
Javascript persian interview questions A book with more than 1000 js questions Mariotek sayjeyhi javascript, markdown
Adminx Library A powerful admin panel creator library for laravel framework parsampsh parsampsh PHP
jb-input HTML input Web component with auto validation handler. javadbat javadbat Javascript, Web Component, SASS, HTML, CSS
jb-searchbar simple configurable searchbar let you create a full filter box in a small bar support multiple filter type. javadbat javadbat Javascript, Web Component, SASS, HTML, CSS
jsonplaceholder RTL fake REST/GraphQL API for testing and prototyping. moharnadreza moharnadreza TypeScript, JavaScript, CSS
Pyeez A simple framework to create console applications (like htop). mehdy mehdy python
Cati Package Manager A Package manager for UNIX operating systems catios parsampsh python, Python
Anbar A basic S3 compatible storage server in Rust. mehdy mehdy rust
Pashmak Programming Language The Pashmak Programming Language pashmaklang parsampsh Python, python, Pashmak, pashmak
FL Chart A powerful Flutter chart library, currently supporting Line Chart, Bar Chart, Pie Chart, Scatter Chart and Radar Chart. imaNNeoFighT imaNNeoFighT dart
NetShears iOS Network interceptor framework written in Swift. divar-ir mehdiimrz Swift
React.js persian interview questions A book with more than 300 react.js questions Mariotek sayjeyhi javascript, markdown
gogit A simple Github Toolkit written in Golang ajangi ajangi golang
Microsoft Windows 7 Preview on Web Yet another OS preview via web technologies focused on Microsoft Windows 7. nainemom nainemom javascript
jb-select HTML select Web component with search in options, objects array as a option list and auto validation handler. javadbat javadbat Javascript, Web Component, SASS, HTML, CSS
sonnat-ui React component library using Sonnat Design System to build faster, elegant, and accessible web applications. sonnat mimshins JavaScript, TypeScript
Laravel Toman Elegant Zarinpal and IDPay payment gateways for Laravel evryn AmirrezaNasiri PHP
Keepalived Exporter Prometheus exporter for Keepalived metrics. cafebazaar mehdy go
Laravel Crypt Model Encoding and Decoding laravel model attributes made easy. ajangi ajangi php
text-style-editor Text style editor widget for flutter. mehdizarepour mehdizarepour Dart
Spotify Download Bot Telegram bot helps you to download or listen to songs from spotify glyphack glyphack Python
Jami Jami is a simple cross platform GUI for play some musical instrument mehrdad-dev mehrdad-dev Go
Peanar A background job scheduler for Node.js based on RabbitMQ martianboy martianboy typescript
jb-date-input HTML date input Web component with date picker and date validation for both jalali and garegorian date type and customizable shape and validation (support date picker, keyboard type & arrow keys) javadbat javadbat Javascript, Web Component, SASS, HTML, CSS

To be completed


Duration

Beginning تیر ۱۵ 06 July
Ending شهریور ۱۵ 06 September

۱۴۰۰ / 2021


👉 For Participants

Your pull requests MUST be submitted after beginning of the hackathon period and be merged before the end of the hackathon.


👉 For Maintainers

Ideally, submit your repositories before the start of the hackathon, though you can submit it during the duration of the hackathon as well.


Top Contributors

To be determined

Contributor Total PRs Repos
mahdyar 2 rustland-fa/persian-tools-rs
amirzia 1 mehdy/pyeez
siadat 1 OSS-Hackathon/IranOpenSourceHackathon

Top Repos

To be determined

Repo Total PRs Contributors
rustland-fa/persian-tools-rs 2 mahdyar
mehdy/pyeez 1 amirzia
OSS-Hackathon/IranOpenSourceHackathon 1 siadat

iranopensourcehackathon's People

Contributors

ali-toosi avatar anvaari avatar b00f avatar ebraminio avatar erfaniaa avatar fatal-err avatar github-actions[bot] avatar hesamkorki avatar imanneo avatar imohammadreza avatar javadbat avatar loreanvictor avatar mahdyar avatar majidsajadi avatar matin-b avatar mehdipourfar avatar mehdizarepour avatar mehdy avatar mimshins avatar moharnadreza avatar negarjf avatar omid avatar parsampsh avatar reziamini avatar saeedesmaili avatar sayjeyhi avatar shayanh avatar shuoros avatar siadat avatar xenups avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

iranopensourcehackathon's Issues

Improvements on process of submitting repos

  • Add a guideline on how to submit new repos
  • Add a guideline for running the table generation script locally (dependencies, arguments, etc)
  • Improvements to structure of the YAML files:
    • Repo owner MUST match the name of the folder, so there is no need for including it in the YAML file.
    • Repository MUST match the name of the file, so the link to it can be deduced automatically as well.
    • Languages can be read from GitHub itself (example). I am not sure what would be the best way of incorporating this though since also caching this info and not spamming GitHub API would be nice.

Add a blue logo

draft 1: work in progress, for general direction preview only:

logo-draft-1

A Bot to Answer Some Questions About Some Stats

Maybe add a Gitter (or GitHub Discussions) Bot to respond to some questions automatically:

  • How many repos are there?
  • Who are top maintainers?
  • Which are top repos?
  • What is this about?

etc.

Promote the Hackathon

After rules for PR and stuff are fixed, find channels to promote the event inside (max in 2 weeks from now).

  • University Groups
  • Twitter
  • Instagram
  • ClubHouse?
  • Various Companies
  • YouTube

Also please add any items to this list if something is missing.

Update Code of Conduct

Our code of conduct is particularly bare-bones atm. It is NOT clear what constitutes as a violation, there are no examples of encouraged or not tolerated behavior, etc. We have not specified anywhere that participants must be Iranian, for example. We have not specified anywhere that it is NOT ok to create a repo on your own and then create PRs to it, for example. etc.

Potentially useful resources:

Check Maintainers Name in Repo File

Currently, the validate and the update repo table scripts only check the URL of the repository and not the names of the maintainers. This has already caused an issue once where maintainers have entered their name instead of their GitHub user names, which results in wrong links in the repo table (and in case there is a space inside their name, weird formatting).

Since this results in confusion and wrong data entry, I will mark it as a bug.

  • Update readme, so that it is more clear that GitHub username must be entered
  • Update validate script, so that it also checks URLs for maintainers and fails the CI check

Add tutorials

We need some tutorials about how to contribute to open source projects.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.