dzcode.io icon indicating copy to clipboard operation
dzcode.io copied to clipboard

Website & mobile app for Algerian open-source community

dzcode.io

The code for dzcode.io, a website for Algerian open-source community.

Meta

You can find more about each folder by clicking on the folder name

Apps Coverage Production URL Staging URL Local URL
web codecov dzcode.io stage.dzcode.io localhost:8080
data codecov data.dzcode.io data.stage.dzcode.io localhost:9090
api codecov api.dzcode.io/docs api-stage.dzcode.io/docs localhost:7070/docs
mobile codecov Android | iOS | Expo localhost:19002
Packages
models codecov
utils codecov
ui codecov
tooling

Get Started

Perquisites

Make sure you have:

  • Git
  • Nodejs version 14 or higher (we recommend using nvm)
  • Yarn version 1.4.2 or higher

Run it locally

  • Open terminal and clone the repo:
 git clone https://github.com/dzcode-io/dzcode.io.git
  • Make sure you are in the project root:
 cd dzcode.io
  • Install dependencies:
yarn
  • Run it locally by either:
yarn dev:web
yarn dev:mobile
yarn dev:all

Note

In ./api, keep in mind that you have limited calls to Github Api (60 calls per hour), the FetchService is doing a great job at caching theses calls so it doesn't unnecessarily consume Github API quota. If you wish to extend the limit from 60 to 5000, simply create a Github Personal Access Token (make sure it has Access public repositories checked), and set it in ./api/.env like this:

GITHUB_TOKEN=Paste_You_Token_Here

Contributing

To get started see the contributing guidelines.

If you use VSCode, please make sure to have a .vscode/settings.json file with the content:

{
  "prettier.configPath": "packages/tooling/.prettierrc",
  "eslint.options": { "overrideConfigFile": "packages/tooling/.eslintrc.json" }
}

Before You Create a Pull Request

  • If you already forked the repository, please make sure your fork is up-to-date, following this simple steps.
  • Please make sure your code follows the style guideline defined in this repo, for that simply run yarn lint:fix to ensure the conformity. This process should happen automatically whenever you commit your changes, but you can always do it manually when your Pull Request checks are failing due to linting errors.

List Your Project or Add/Edit Article

License

Copyright (c) 2021 DzCode i/o (twitter: @dzcode_io) Licensed under the MIT license.