All Projects → sdslabs → quark

sdslabs / quark

Licence: MIT license
An open source framework to build competitive platforms

Programming Languages

PHP
23972 projects - #3 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to quark

crate-sample-apps
A JavaScript guestbook app with a number of different backend implementations, each using a different client library to communicate with CrateDB.
Stars: ✭ 57 (+62.86%)
Mutual labels:  hacktoberfest2020
Indoor-Positioning-System
An indoor positioning system (IPS) is a system to locate objects or people inside a building using radio waves, magnetic fields, acoustic signals, or other sensory information.
Stars: ✭ 31 (-11.43%)
Mutual labels:  hacktoberfest2020
taiwanlottery
🇹🇼台灣樂透爬蟲🐛(台灣各類型樂透爬蟲)😄
Stars: ✭ 18 (-48.57%)
Mutual labels:  hacktoberfest2020
awesome-translations
😎 Awesome lists about Internationalization & localization stuff. l10n, g11n, m17n, i18n. Translations! 🌎🌍
Stars: ✭ 54 (+54.29%)
Mutual labels:  hacktoberfest2020
say-their-names-android
Welcome to the Say Their Names project - android module
Stars: ✭ 18 (-48.57%)
Mutual labels:  hacktoberfest2020
xforwardy
Host Header Injection Scanner
Stars: ✭ 32 (-8.57%)
Mutual labels:  hacktoberfest2020
PizzaPy
Order Pizza using Domino's Pizza API in Python
Stars: ✭ 19 (-45.71%)
Mutual labels:  hacktoberfest2020
GuideChimp
Create interactive guided product tours in minutes with the most non-technical friendly, lightweight and extendable library.
Stars: ✭ 138 (+294.29%)
Mutual labels:  hacktoberfest2020
currency-detector-opencv
Indian paper currency detection using Image Processing
Stars: ✭ 26 (-25.71%)
Mutual labels:  hacktoberfest2020
cbj smart-home
🏡 If you are searching for an easy way to connect all your smart home devices with one app CyBear Jinni 🦾🐼🧞‍♂️ is here for you. Join the community and make your home smarter than yesterday.
Stars: ✭ 40 (+14.29%)
Mutual labels:  hacktoberfest2020
Hacktoberfest-Nepal-2020
A beginner-friendly open source repository to create your first pull request.
Stars: ✭ 15 (-57.14%)
Mutual labels:  hacktoberfest2020
awesome-nuxt
🎉 A curated list of awesome things related to Nuxt.js
Stars: ✭ 17 (-51.43%)
Mutual labels:  hacktoberfest2020
HacktoberFest2020-1
Open for all and will be accepted within 24 hrs. For contributing. Write program in any language,Make sure you write your name as well
Stars: ✭ 89 (+154.29%)
Mutual labels:  hacktoberfest2020
redisplanet
Redisplanet - An Ultimate Hands-on Labs on Redis
Stars: ✭ 24 (-31.43%)
Mutual labels:  hacktoberfest2020
hacktoberfest2021-easy
Add a code in any language
Stars: ✭ 24 (-31.43%)
Mutual labels:  hacktoberfest2020
Algorithms
Short explanations and implementations of different algorithms in multiple languages
Stars: ✭ 37 (+5.71%)
Mutual labels:  hacktoberfest2020
ProjectLockdown
Project Lockdown (an initiative from The IO Foundation) is a civic tech, interactive platform providing an overview of the state of Human and Digital Rights around the globe. It evaluates policies obtained from official sources that may impact their observance. It provides, among other tools, a layered map interface that allows for a visual repr…
Stars: ✭ 34 (-2.86%)
Mutual labels:  hacktoberfest2020
motivate
⚡ motivate ⚡ - A simple script to print random motivational quotes. Highly influenced by linux command fortune.
Stars: ✭ 24 (-31.43%)
Mutual labels:  hacktoberfest2020
autocorr kr
리브레오피스(LibreOffice) 자동 교정(Autocorrect)기능에 대한 말모이 저장소
Stars: ✭ 15 (-57.14%)
Mutual labels:  hacktoberfest2020
openfoodfacts-ruby
Open Food Facts API Wrapper
Stars: ✭ 27 (-22.86%)
Mutual labels:  hacktoberfest2020

Quark

This is a Laravel package that provides a code application for building platforms to host competitions.

Documentation

The entire documentation is available at: https://quark.sdslabs.co

Setup

  • Create and setup a new Laravel app

  • Add the folowwing repositories to the composer.json's repositories field:

"repositories": [
	{
		"type": "vcs",
		"url": "[email protected]:sdslabs/quark",
		"no-api": true

	},
	{
		"type": "vcs",
		"url": "[email protected]:sdslabs/falcon.git",
		"no-api": true
	}
],
  • Add Quark as a dependency by adding "sdslabs/quark": "dev-laravel-package" to require field in composer.json

  • Add Falcon as a dependency by adding "sdslabs/falcon": "dev-composer-pkg" to require field in composer.json

  • Run

      $ composer update sdslabs/*
    
  • Add SDSLabs\Quark\QuarkServiceProvider::class, under * Package Service Providers... to config/app.php.

  • Remove the migration file for create_users_table and password_resets_table from database/migrations.

  • Add $this->call(SDSLabs\Quark\Database\Seeds\DatabaseSeeder); to DatabaseSeeder under database/seeds.

  • Add following config to .env.example and also to .env:

FALCON_CLIENT_ID=client_id
FALCON_CLIENT_SECRET=secret
FALCON_URL_ACCESS_TOKEN=http://falcon.sdslabs.local/access_token
FALCON_URL_RESOURCE_ONWER_DETAILS=http://falcon.sdslabs.local/users/
FALCON_ACCOUNTS_URL=http://arceus.sdslabs.local/
FALCON_SCOPES=email,image_url
  • ORGANIZATIONS_ALLOWED in .env.example can be provided in master app's .env

  • Update config/auth.php:

    • Update the defaults.guard to falcon
    • Delete the section on guards
  • Run the migrations with:

      $ php artisan migrate
    
  • Run the seeds with:

      $ php artisan db:seed
    
  • Go outside and do a dance ;)

Extending the models in the application

To extend any of the default models, first create the new model.

Then add a line like $this->app->bind(QuarkCompetition::class, AppCompetition::class); to AppServiceProvider.php's register method.

Extending the controllers in the application

Just override the router with your controller's methods

General instructions for this project and the application

  • Don't explicitly call the static methods of any class like Competition::get() or SomethingHelper::help(). Instead use the IoC container or Facades/Contracts .
    e.g. App::resolve(Competition::class)->get()

  • Don't initialise the classes manually like new Competition(). Instead use IoC container's make method.

  • The above practices makes it easier to swap the underlying classes, i.e. the classes used by Quark can be extended by the application and the extended classes will be used inside Quarks's classes/

Working on Quark

  • First you need an application. If you don't have one already setup, setup a demo application following the above instructions
  • Symlink the vendor/sdslabs/quark folder to your local clone of quark.

How can I contribute?

Read here to know our contribution guidelines. Ping us at chat.sdslabs.co to get guidance. You can start with setting up Quark on your machine and try solving a few bugs listed here: https://github.com/sdslabs/quark/issues You can also have a look at the sample app sdslabs/laplace-no-ma that uses Quark.

License

This project is under the MIT license

Community Support

If you are interested in talking to the SDSLabs team, you can find us on our SDSLabs Open Source Discord Server. Feel free to drop by and say hello. You'll find us posting about upcoming features and beta releases, answering technical support questions, and contemplating world peace.

Created by SDSLabs with ❤️

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].