The code for dzcode.io, a website for Algerian open-source community.
You can find more about each folder by clicking on the folder name
Apps | Coverage | Production URL | Staging URL | Local URL |
---|---|---|---|---|
api | api.dzcode.io/docs | api-stage.dzcode.io/docs | localhost:7070/docs | |
web | dzcode.io | stage.dzcode.io | localhost:8080 | |
mobile | Android | iOS | Expo | run yarn --cwd=mobile start:expo |
||
data | ||||
Packages | ||||
models | ||||
utils | ||||
ui | ||||
tooling | ||||
ui-mobile |
Make sure you have:
- 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
- For api server go to http://localhost:7070/docs
- For web server go to http://localhost:8080
- For mobile run
yarn --cwd=mobile start:expo
and scan QR code with your phone
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
Make sure you are in the project root, then:
- run web e2e tests by:
yarn e2e:web
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" },
"editor.codeActionsOnSave": {
"source.fixAll": true
}
}
- 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.
- To list your project on dzcode.io, see this tutorial
- To add an article, see this tutorial
Copyright (c) 2021 DzCode i/o (twitter: @dzcode_io) Licensed under the MIT license.