Coder Social home page Coder Social logo

reactjs / ar.reactjs.org Goto Github PK

View Code? Open in Web Editor NEW
124.0 18.0 99.0 151.89 MB

React documentation website in Arabic 📘⚛️ — وثائق React باللغة العربية

Home Page: https://ar.react.dev

License: Creative Commons Attribution 4.0 International

JavaScript 32.78% CSS 7.47% HTML 0.28% Shell 0.01% TypeScript 59.47%

ar.reactjs.org's Introduction

reactjs.org

This repo contains the source code and documentation powering reactjs.org.

Getting started

Prerequisites

  1. Git
  2. Node: any 12.x version starting with v12.0.0 or greater
  3. Yarn: See Yarn website for installation instructions
  4. A fork of the repo (for any contributions)
  5. A clone of the ar.react.dev repo on your local machine

Installation

  1. cd ar.react.dev to go into the project root
  2. yarn to install the website's npm dependencies

Running locally

  1. yarn dev to start the development server (powered by Next.js)
  2. open http://localhost:3000 to open the site in your favorite browser

Contributing

Guidelines

The documentation is divided into several sections with a different tone and purpose. If you plan to write more than a few sentences, you might find it helpful to get familiar with the contributing guidelines for the appropriate sections.

  1. git checkout main from any folder in your local ar.react.dev repository
  2. git pull origin main to ensure you have the latest main code
  3. git checkout -b the-name-of-my-branch (replacing the-name-of-my-branch with a suitable name) to create a branch

Make the change

  1. Follow the "Running locally" instructions
  2. Save the files and check in the browser
  3. Changes to React components in src will hot-reload
  4. Changes to markdown files in content will hot-reload
  5. If working with plugins, you may need to remove the .cache directory and restart the server

Test the change

  1. If possible, test any visual changes in all latest versions of common browsers, on both desktop and mobile.
  2. Run yarn check-all. (This will run Prettier, ESLint and validate types.)

Push it

  1. git add -A && git commit -m "My message" (replacing My message with a commit message, such as Fix header logo on Android) to stage and commit your changes
  2. git push my-fork-name the-name-of-my-branch
  3. Go to the react.dev repo and you should see recently pushed branches.
  4. Follow GitHub's instructions.
  5. If possible, include screenshots of visual changes. A preview build is triggered after your changes are pushed to GitHub.

Translation

If you are interested in translating react.dev, please see the current translation efforts here.

License

Content submitted to react.dev is CC-BY-4.0 licensed, as found in the LICENSE-DOCS.md file.

ar.reactjs.org's People

Contributors

3imed-jaberi avatar a7med3bdulbaset avatar acdlite avatar ahmedkrmn avatar aladin002dz avatar alexkrolick avatar asantarissy avatar atefbb avatar bvaughn avatar chenglou avatar dependabot[bot] avatar fcmam5 avatar gaearon avatar irayan7 avatar jimfb avatar kohei-takata avatar lex111 avatar marocchino avatar mohamedsgap avatar mohshbool avatar petehunt avatar reactjs-translation-bot avatar rickhanlonii avatar rumbustious avatar sophiebits avatar splimter avatar tesseralis avatar vjeux avatar zpao avatar zqran 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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ar.reactjs.org's Issues

sharp: Command failed. Exit code 1. While install dependencies using yarn on Ubuntu 18.04

When I use Yarn to install dependencies I got this error:

OS: linux ubuntu 18.04
node -v: 12.13.1
npm -v OR yarn: npm: 6.12.1, yarn: 1.19.2

error /home/mohamedsgap/Development/open-source/ar.reactjs.org/node_modules/sharp: Command failed.
Exit code: 1
Command: (node install/libvips && node install/dll-copy && prebuild-install) || (node-gyp rebuild && node install/dll-copy)
Arguments:
Directory: /home/mohamedsgap/Development/open-source/ar.reactjs.org/node_modules/sharp
Output:
info sharp Using cached /home/mohamedsgap/.npm/libvips/libvips-8.6.1-linux-x64.tar.gz
prebuild-install WARN install No prebuilt binaries found (target=12.13.1 runtime=node arch=x64 platform=linux)
gyp info it worked if it ends with ok
gyp info using [email protected]
gyp info using [email protected] | linux | x64
gyp info find Python using Python version 2.7.15 found at "/usr/bin/python"
gyp WARN EACCES current user ("mohamedsgap") does not have permission to access the dev dir "/home/mohamedsgap/.cache/node-gyp/12.13.1"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/tmp/.node-gyp"
gyp info spawn /usr/bin/python
gyp info spawn args [
gyp info spawn args '/usr/lib/node_modules/npm/node_modules/node-gyp/gyp/gyp_main.py',
gyp info spawn args 'binding.gyp',
gyp info spawn args '-f',
gyp info spawn args 'make',
gyp info spawn args '-I',
gyp info spawn args '/home/mohamedsgap/Development/open-source/ar.reactjs.org/node_modules/sharp/build/config.gypi',
gyp info spawn args '-I',
gyp info spawn args '/usr/lib/node_modules/npm/node_modules/node-gyp/addon.gypi',
gyp info spawn args '-I',
gyp info spawn args '/tmp/.node-gyp/12.13.1/include/node/common.gypi',
gyp info spawn args '-Dlibrary=shared_library',
gyp info spawn args '-Dvisibility=default',
gyp info spawn args '-Dnode_root_dir=/tmp/.node-gyp/12.13.1',
gyp info spawn args '-Dnode_gyp_dir=/usr/lib/node_modules/npm/node_modules/node-gyp',
gyp info spawn args '-Dnode_lib_file=/tmp/.node-gyp/12.13.1/<(target_arch)/node.lib',
gyp info spawn args '-Dmodule_root_dir=/home/mohamedsgap/Development/open-source/ar.reactjs.org/node_modules/sharp',
gyp info spawn args '-Dnode_engine=v8',
gyp info spawn args '--depth=.',
gyp info spawn args '--no-parallel',
gyp info spawn args '--generator-output',
gyp info spawn args 'build',
gyp info spawn args '-Goutput_dir=.'
gyp info spawn args ]
gyp info spawn make
gyp info spawn args [ 'BUILDTYPE=Release', '-C', 'build' ]
make: Entering directory '/home/mohamedsgap/Development/open-source/ar.reactjs.org/node_modules/sharp/build'
TOUCH Release/obj.target/libvips-cpp.stamp
CXX(target) Release/obj.target/sharp/src/common.o
In file included from ../../nan/nan_converters.h:67:0,
from ../../nan/nan.h:221,
from ../src/common.cc:24:
../../nan/nan_converters_43_inl.h: In static member function ‘static Nan::imp::ToFactoryBasev8::Boolean::return_t Nan::imp::ToFactoryv8::Boolean::convert(v8::Localv8::Value)’:
../../nan/nan_converters_43_inl.h:18:51: warning: ‘v8::MaybeLocalv8::Boolean v8::Value::ToBoolean(v8::Localv8::Context) const’ is deprecated: ToBoolean can never throw. Use Local version. [-Wdeprecated-declarations]
val->To ## TYPE(isolate->GetCurrentContext())
^
../../nan/nan_converters_43_inl.h:22:1: note: in expansion of macro ‘X’
X(Boolean)
^
In file included from /tmp/.node-gyp/12.13.1/include/node/v8-internal.h:14:0,
from /tmp/.node-gyp/12.13.1/include/node/v8.h:25,
from /tmp/.node-gyp/12.13.1/include/node/node.h:63,
from ../src/common.cc:22:
/tmp/.node-gyp/12.13.1/include/node/v8.h:2568:59: note: declared here
V8_WARN_UNUSED_RESULT MaybeLocal ToBoolean(
^
/tmp/.node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
declarator attribute((deprecated(message)))
^~~~~~~~~~
In file included from ../../nan/nan_converters.h:67:0,
from ../../nan/nan.h:221,
from ../src/common.cc:24:
../../nan/nan_converters_43_inl.h: In static member function ‘static Nan::imp::ValueFactoryBase::return_t Nan::imp::ToFactory::convert(v8::Localv8::Value)’:
../../nan/nan_converters_43_inl.h:37:57: warning: ‘v8::Maybe v8::Value::BooleanValue(v8::Localv8::Context) const’ is deprecated: BooleanValue can never throw. Use Isolate version. [-Wdeprecated-declarations]
return val->NAME ## Value(isolate->GetCurrentContext());
^
../../nan/nan_converters_43_inl.h:40:1: note: in expansion of macro ‘X’
X(bool, Boolean)
^
In file included from /tmp/.node-gyp/12.13.1/include/node/v8-internal.h:14:0,
from /tmp/.node-gyp/12.13.1/include/node/v8.h:25,
from /tmp/.node-gyp/12.13.1/include/node/node.h:63,
from ../src/common.cc:22:
/tmp/.node-gyp/12.13.1/include/node/v8.h:2606:51: note: declared here
V8_WARN_UNUSED_RESULT Maybe BooleanValue(
^
/tmp/.node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
declarator attribute((deprecated(message)))
^~~~~~~~~~
In file included from ../../nan/nan_new.h:189:0,
from ../../nan/nan.h:222,
from ../src/common.cc:24:
../../nan/nan_implementation_12_inl.h: In static member function ‘static Nan::imp::FactoryBasev8::Function::return_t Nan::imp::Factoryv8::Function::New(Nan::FunctionCallback, v8::Localv8::Value)’:
../../nan/nan_implementation_12_inl.h:105:32: error: no matching function for call to ‘v8::Function::New(v8::Isolate*&, void (&)(const v8::FunctionCallbackInfov8::Value&), v8::Localv8::Object&)’
, obj));
^
In file included from /tmp/.node-gyp/12.13.1/include/node/node.h:63:0,
from ../src/common.cc:22:
/tmp/.node-gyp/12.13.1/include/node/v8.h:4170:31: note: candidate: static v8::MaybeLocalv8::Function v8::Function::New(v8::Localv8::Context, v8::FunctionCallback, v8::Localv8::Value, int, v8::ConstructorBehavior, v8::SideEffectType)
static MaybeLocal New(
^~~
/tmp/.node-gyp/12.13.1/include/node/v8.h:4170:31: note: no known conversion for argument 1 from ‘v8::Isolate*’ to ‘v8::Localv8::Context’
In file included from ../src/common.cc:24:0:
../../nan/nan.h: In constructor ‘Nan::Utf8String::Utf8String(v8::Localv8::Value)’:
../../nan/nan.h:1064:78: warning: ‘v8::Localv8::String v8::Value::ToString(v8::Isolate*) const’ is deprecated: Use maybe version [-Wdeprecated-declarations]
v8::Localv8::String string = from->ToString(v8::Isolate::GetCurrent());
^
In file included from /tmp/.node-gyp/12.13.1/include/node/v8-internal.h:14:0,
from /tmp/.node-gyp/12.13.1/include/node/v8.h:25,
from /tmp/.node-gyp/12.13.1/include/node/node.h:63,
from ../src/common.cc:22:
/tmp/.node-gyp/12.13.1/include/node/v8.h:2588:31: note: declared here
Local ToString(Isolate* isolate) const);
^
/tmp/.node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
declarator attribute((deprecated(message)))
^~~~~~~~~~
In file included from ../src/common.cc:24:0:
../../nan/nan.h: In member function ‘void Nan::AsyncWorker::SaveToPersistent(const char*, const v8::Localv8::Value&)’:
../../nan/nan.h:1855:64: warning: ‘bool v8::Object::Set(v8::Localv8::Value, v8::Localv8::Value)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
New(persistentHandle)->Set(New(key).ToLocalChecked(), value);
^
In file included from /tmp/.node-gyp/12.13.1/include/node/v8-internal.h:14:0,
from /tmp/.node-gyp/12.13.1/include/node/v8.h:25,
from /tmp/.node-gyp/12.13.1/include/node/node.h:63,
from ../src/common.cc:22:
/tmp/.node-gyp/12.13.1/include/node/v8.h:3403:22: note: declared here
bool Set(Local key, Local value));
^
/tmp/.node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
declarator attribute((deprecated(message)))
^~~~~~~~~~
In file included from ../src/common.cc:24:0:
../../nan/nan.h: In member function ‘void Nan::AsyncWorker::SaveToPersistent(const v8::Localv8::String&, const v8::Localv8::Value&)’:
../../nan/nan.h:1861:42: warning: ‘bool v8::Object::Set(v8::Localv8::Value, v8::Localv8::Value)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
New(persistentHandle)->Set(key, value);
^
In file included from /tmp/.node-gyp/12.13.1/include/node/v8-internal.h:14:0,
from /tmp/.node-gyp/12.13.1/include/node/v8.h:25,
from /tmp/.node-gyp/12.13.1/include/node/node.h:63,
from ../src/common.cc:22:
/tmp/.node-gyp/12.13.1/include/node/v8.h:3403:22: note: declared here
bool Set(Local key, Local value));
^
/tmp/.node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
declarator attribute((deprecated(message)))
^~~~~~~~~~
In file included from ../src/common.cc:24:0:
../../nan/nan.h: In member function ‘void Nan::AsyncWorker::SaveToPersistent(uint32_t, const v8::Localv8::Value&)’:
../../nan/nan.h:1867:44: warning: ‘bool v8::Object::Set(uint32_t, v8::Localv8::Value)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
New(persistentHandle)->Set(index, value);
^
In file included from /tmp/.node-gyp/12.13.1/include/node/v8-internal.h:14:0,
from /tmp/.node-gyp/12.13.1/include/node/v8.h:25,
from /tmp/.node-gyp/12.13.1/include/node/node.h:63,
from ../src/common.cc:22:
/tmp/.node-gyp/12.13.1/include/node/v8.h:3412:22: note: declared here
bool Set(uint32_t index, Local value));
^
/tmp/.node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
declarator attribute((deprecated(message)))
^~~~~~~~~~
In file included from ../src/common.cc:24:0:
../../nan/nan.h: In member function ‘v8::Localv8::Value Nan::AsyncWorker::GetFromPersistent(const char*) const’:
../../nan/nan.h:1873:61: warning: ‘v8::Localv8::Value v8::Object::Get(v8::Localv8::Value)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
New(persistentHandle)->Get(New(key).ToLocalChecked()));
^
In file included from /tmp/.node-gyp/12.13.1/include/node/v8-internal.h:14:0,
from /tmp/.node-gyp/12.13.1/include/node/v8.h:25,
from /tmp/.node-gyp/12.13.1/include/node/node.h:63,
from ../src/common.cc:22:
/tmp/.node-gyp/12.13.1/include/node/v8.h:3457:51: note: declared here
V8_DEPRECATED("Use maybe version", Local Get(Local key));
^
/tmp/.node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
declarator attribute((deprecated(message)))
^~~~~~~~~~
In file included from ../src/common.cc:24:0:
../../nan/nan.h: In member function ‘v8::Localv8::Value Nan::AsyncWorker::GetFromPersistent(const v8::Localv8::String&) const’:
../../nan/nan.h:1879:55: warning: ‘v8::Localv8::Value v8::Object::Get(v8::Localv8::Value)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
return scope.Escape(New(persistentHandle)->Get(key));
^
In file included from /tmp/.node-gyp/12.13.1/include/node/v8-internal.h:14:0,
from /tmp/.node-gyp/12.13.1/include/node/v8.h:25,
from /tmp/.node-gyp/12.13.1/include/node/node.h:63,
from ../src/common.cc:22:
/tmp/.node-gyp/12.13.1/include/node/v8.h:3457:51: note: declared here
V8_DEPRECATED("Use maybe version", Local Get(Local key));
^
/tmp/.node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
declarator attribute((deprecated(message)))
^~~~~~~~~~
In file included from ../src/common.cc:24:0:
../../nan/nan.h: In member function ‘v8::Localv8::Value Nan::AsyncWorker::GetFromPersistent(uint32_t) const’:
../../nan/nan.h:1884:57: warning: ‘v8::Localv8::Value v8::Object::Get(uint32_t)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
return scope.Escape(New(persistentHandle)->Get(index));
^
In file included from /tmp/.node-gyp/12.13.1/include/node/v8-internal.h:14:0,
from /tmp/.node-gyp/12.13.1/include/node/v8.h:25,
from /tmp/.node-gyp/12.13.1/include/node/node.h:63,
from ../src/common.cc:22:
/tmp/.node-gyp/12.13.1/include/node/v8.h:3461:51: note: declared here
V8_DEPRECATED("Use maybe version", Local Get(uint32_t index));
^
/tmp/.node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
declarator attribute((deprecated(message)))
^~~~~~~~~~
In file included from /usr/include/c++/7/cassert:44:0,
from /tmp/.node-gyp/12.13.1/include/node/node_object_wrap.h:26,
from ../../nan/nan.h:54,
from ../src/common.cc:24:
../../nan/nan_object_wrap.h: In destructor ‘virtual Nan::ObjectWrap::~ObjectWrap()’:
../../nan/nan_object_wrap.h:24:25: error: ‘class Nan::Persistentv8::Object’ has no member named ‘IsNearDeath’
assert(persistent().IsNearDeath());
^
In file included from ../../nan/nan.h:2698:0,
from ../src/common.cc:24:
../../nan/nan_object_wrap.h: In member function ‘void Nan::ObjectWrap::MakeWeak()’:
../../nan/nan_object_wrap.h:67:34: warning: ‘void v8::PersistentBase::MarkIndependent() [with T = v8::Object]’ is deprecated: Weak objects are always considered independent. Use TracedGlobal when trying to use EmbedderHeapTracer. Use a strong handle when trying to keep an object alive. [-Wdeprecated-declarations]
persistent().MarkIndependent();
^
In file included from /tmp/.node-gyp/12.13.1/include/node/v8-internal.h:14:0,
from /tmp/.node-gyp/12.13.1/include/node/v8.h:25,
from /tmp/.node-gyp/12.13.1/include/node/node.h:63,
from ../src/common.cc:22:
/tmp/.node-gyp/12.13.1/include/node/v8.h:567:22: note: declared here
V8_INLINE void MarkIndependent());
^
/tmp/.node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
declarator attribute((deprecated(message)))
^~~~~~~~~~
In file included from /usr/include/c++/7/cassert:44:0,
from /tmp/.node-gyp/12.13.1/include/node/node_object_wrap.h:26,
from ../../nan/nan.h:54,
from ../src/common.cc:24:
../../nan/nan_object_wrap.h: In static member function ‘static void Nan::ObjectWrap::WeakCallback(const v8::WeakCallbackInfoNan::ObjectWrap&)’:
../../nan/nan_object_wrap.h:124:26: error: ‘class Nan::Persistentv8::Object’ has no member named ‘IsNearDeath’
assert(wrap->handle
.IsNearDeath());
^
In file included from ../src/common.cc:27:0:
../src/common.h: At global scope:
../src/common.h:82:20: error: ‘Handle’ is not a member of ‘v8’
bool HasAttr(v8::Handlev8::Object obj, std::string attr);
^~~~~~
../src/common.h:82:37: error: expected primary-expression before ‘>’ token
bool HasAttr(v8::Handlev8::Object obj, std::string attr);
^
../src/common.h:82:39: error: ‘obj’ was not declared in this scope
bool HasAttr(v8::Handlev8::Object obj, std::string attr);
^~~
../src/common.h:82:56: error: expected primary-expression before ‘attr’
bool HasAttr(v8::Handlev8::Object obj, std::string attr);
^~~~
../src/common.h:82:60: error: expression list treated as compound expression in initializer [-fpermissive]
bool HasAttr(v8::Handlev8::Object obj, std::string attr);
^
../src/common.h:83:29: error: ‘Handle’ is not a member of ‘v8’
std::string AttrAsStr(v8::Handlev8::Object obj, std::string attr);
^~~~~~
../src/common.h:83:46: error: expected primary-expression before ‘>’ token
std::string AttrAsStr(v8::Handlev8::Object obj, std::string attr);
^
../src/common.h:83:48: error: ‘obj’ was not declared in this scope
std::string AttrAsStr(v8::Handlev8::Object obj, std::string attr);
^~~
../src/common.h:83:65: error: expected primary-expression before ‘attr’
std::string AttrAsStr(v8::Handlev8::Object obj, std::string attr);
^~~~
../src/common.h:84:48: error: ‘Handle’ is not a member of ‘v8’
template v8::Local AttrAs(v8::Handlev8::Object obj, std::string attr) {
^~~~~~
../src/common.h:84:65: error: expected primary-expression before ‘>’ token
template v8::Local AttrAs(v8::Handlev8::Object obj, std::string attr) {
^
../src/common.h:84:67: error: ‘obj’ was not declared in this scope
template v8::Local AttrAs(v8::Handlev8::Object obj, std::string attr) {
^~~
../src/common.h:84:84: error: expected primary-expression before ‘attr’
template v8::Local AttrAs(v8::Handlev8::Object obj, std::string attr) {
^~~~
../src/common.h:84:37: warning: variable templates only available with -std=c++14 or -std=gnu++14
template v8::Local AttrAs(v8::Handlev8::Object obj, std::string attr) {
^~~~~~
../src/common.h:84:90: error: expected ‘;’ before ‘{’ token
template v8::Local AttrAs(v8::Handlev8::Object obj, std::string attr) {
^
../src/common.h:87:37: error: ‘Handle’ is not a member of ‘v8’
template T AttrTo(v8::Handlev8::Object obj, std::string attr) {
^~~~~~
../src/common.h:87:54: error: expected primary-expression before ‘>’ token
template T AttrTo(v8::Handlev8::Object obj, std::string attr) {
^
../src/common.h:87:56: error: ‘obj’ was not declared in this scope
template T AttrTo(v8::Handlev8::Object obj, std::string attr) {
^~~
../src/common.h:87:73: error: expected primary-expression before ‘attr’
template T AttrTo(v8::Handlev8::Object obj, std::string attr) {
^~~~
../src/common.h:87:26: warning: variable templates only available with -std=c++14 or -std=gnu++14
template T AttrTo(v8::Handlev8::Object obj, std::string attr) {
^~~~~~
../src/common.h:87:79: error: expected ‘;’ before ‘{’ token
template T AttrTo(v8::Handlev8::Object obj, std::string attr) {
^
../src/common.h:90:37: error: ‘Handle’ is not a member of ‘v8’
template T AttrTo(v8::Handlev8::Object obj, int attr) {
^~~~~~
../src/common.h:90:54: error: expected primary-expression before ‘>’ token
template T AttrTo(v8::Handlev8::Object obj, int attr) {
^
../src/common.h:90:56: error: ‘obj’ was not declared in this scope
template T AttrTo(v8::Handlev8::Object obj, int attr) {
^~~
../src/common.h:90:61: error: expected primary-expression before ‘int’
template T AttrTo(v8::Handlev8::Object obj, int attr) {
^~~
../src/common.h:87:26: warning: variable templates only available with -std=c++14 or -std=gnu++14
template T AttrTo(v8::Handlev8::Object obj, std::string attr) {
^~~~~~
../src/common.h:90:71: error: expected ‘;’ before ‘{’ token
template T AttrTo(v8::Handlev8::Object obj, int attr) {
^
../src/common.h:96:9: error: ‘Handle’ is not a member of ‘v8’
v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist);
^~~~~~
../src/common.h:96:26: error: expected primary-expression before ‘>’ token
v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist);
^
../src/common.h:96:28: error: ‘input’ was not declared in this scope
v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist);
^~~~~
../src/common.h:96:28: note: suggested alternative: ‘ino_t’
v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist);
^~~~~
ino_t
../src/common.h:96:70: error: expected primary-expression before ‘&’ token
v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist);
^
../src/common.h:96:71: error: ‘buffersToPersist’ was not declared in this scope
v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist);
^~~~~~~~~~~~~~~~
../src/common.h:96:87: error: expression list treated as compound expression in initializer [-fpermissive]
v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist);
^
../src/common.cc:34:20: error: redefinition of ‘bool sharp::HasAttr’
bool HasAttr(v8::Handlev8::Object obj, std::string attr) {
^~~~~~
In file included from ../src/common.cc:27:0:
../src/common.h:82:8: note: ‘bool sharp::HasAttr’ previously defined here
bool HasAttr(v8::Handlev8::Object obj, std::string attr);
^~~~~~~
../src/common.cc:34:20: error: ‘Handle’ is not a member of ‘v8’
bool HasAttr(v8::Handlev8::Object obj, std::string attr) {
^~~~~~
../src/common.cc:34:37: error: expected primary-expression before ‘>’ token
bool HasAttr(v8::Handlev8::Object obj, std::string attr) {
^
../src/common.cc:34:39: error: ‘obj’ was not declared in this scope
bool HasAttr(v8::Handlev8::Object obj, std::string attr) {
^~~
../src/common.cc:34:56: error: expected primary-expression before ‘attr’
bool HasAttr(v8::Handlev8::Object obj, std::string attr) {
^~~~
../src/common.cc:37:29: error: redefinition of ‘std::string sharp::AttrAsStr’
std::string AttrAsStr(v8::Handlev8::Object obj, std::string attr) {
^~~~~~
In file included from ../src/common.cc:27:0:
../src/common.h:83:15: note: ‘std::string sharp::AttrAsStr’ previously declared here
std::string AttrAsStr(v8::Handlev8::Object obj, std::string attr);
^~~~~~~~~
../src/common.cc:37:29: error: ‘Handle’ is not a member of ‘v8’
std::string AttrAsStr(v8::Handlev8::Object obj, std::string attr) {
^~~~~~
../src/common.cc:37:46: error: expected primary-expression before ‘>’ token
std::string AttrAsStr(v8::Handlev8::Object obj, std::string attr) {
^
../src/common.cc:37:48: error: ‘obj’ was not declared in this scope
std::string AttrAsStr(v8::Handlev8::Object obj, std::string attr) {
^~~
../src/common.cc:37:65: error: expected primary-expression before ‘attr’
std::string AttrAsStr(v8::Handlev8::Object obj, std::string attr) {
^~~~
../src/common.cc:43:9: error: redefinition of ‘sharp::InputDescriptor* sharp::CreateInputDescriptor’
v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist
^~~~~~
In file included from ../src/common.cc:27:0:
../src/common.h:95:20: note: ‘sharp::InputDescriptor* sharp::CreateInputDescriptor’ previously defined here
InputDescriptor* CreateInputDescriptor(
^~~~~~~~~~~~~~~~~~~~~
../src/common.cc:43:9: error: ‘Handle’ is not a member of ‘v8’
v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist
^~~~~~
../src/common.cc:43:26: error: expected primary-expression before ‘>’ token
v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist
^
../src/common.cc:43:28: error: ‘input’ was not declared in this scope
v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist
^~~~~
../src/common.cc:43:28: note: suggested alternative: ‘ino_t’
v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist
^~~~~
ino_t
../src/common.cc:43:70: error: expected primary-expression before ‘&’ token
v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist
^
../src/common.cc:43:71: error: ‘buffersToPersist’ was not declared in this scope
v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist
^~~~~~~~~~~~~~~~
sharp.target.mk:134: recipe for target 'Release/obj.target/sharp/src/common.o' failed
make: *** [Release/obj.target/sharp/src/common.o] Error 1
make: Leaving directory '/home/mohamedsgap/Development/open-source/ar.reactjs.org/node_modules/sharp/build'
gyp ERR! build error
gyp ERR! stack Error: make failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)
gyp ERR! stack at ChildProcess.emit (events.js:210:5)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:272:12)
gyp ERR! System Linux 4.15.0-1065-oem
gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/mohamedsgap/Development/open-source/ar.reactjs.org/node_modules/sharp
gyp ERR! node -v v12.13.1

Dealing with RTL

we need to discuss if we need to add RTL support to the docs website.

What Kind of Arabic Should we Use?

I would like to help with the translation but was wondering what form of Arabic should we choose? Are we going to go with Modern Standard Arabic العربية الفصحى or something closer to the accents that people use in their daily speech (going to call it to Colloquial Arabic العربية العامية)? I ask this because I and others can help with translating to Colloquial Arabic but our Modern Standard Arabic is very weak and most people don't speak it even at work these days. I believe this is an important matter to discuss because what we decide here in this translation may very well become the standard upon which other translations are based.

To add some context, in most Arabic writing we use Modern Standard Arabic, and it's very uncommon to use it in a conversation at work for example; it's more popular in speeches or delivering news, books, etc. The Colloquial Arabic that most people speak nowadays is sometimes seen as a lesser form of Arabic that should be avoided.

As a very small example I see calling a function described as استدعاء الدالة and if I heard the word استدعاء, I would associate more with being summoned to court rather than calling a function, I would perhaps use something like مناداة if I try to take how most Arabs speak rather than write into account (I know some math/programming books do this, but do we want to use them as our base?).

If we're going to go with Modern Standard Arabic, what are the standards? Should we use diacritics تشكيل everywhere or only some places for example? I think having these in the contributor guidelines would be very helpful. I think this is something good to tackle early on so the docs have the same vibe everywhere.

Final note:
I am not saying any form of Arabic is better or worse than the other, I just want to know what we're going with to understand if I can assist this effort with my limited knowledge.

Use an Arabic font

As Salam Alikom, Hello everyone :)

I suggest setting an "Arabic-friendly" and a more font.

In my case the fonts look like this (Firefox on Ubuntu, using the default fonts):

Screenshot from 2019-06-12 19-36-26

And for me, it looks a bit ugly.
I suggest setting a better font. If that's possible, what font should we use?

translate

why you translated state and component
i think y'd better don't translate the names and keep without translation to learn easily
that's my opinion
all the best

Translating community section

Before you start working

  • Check if the page isn't assigned, and no one commented about it.
  • Please comment 👇the page name before you start working on it. To get assigned to it.

Pages:

Update Glossary / Methodology of work

Glossary 📔

I think that we should update the glossary accurately, as we review all the words and the corresponding translation so as not to fall into conflict ..

Methodology of work 🛃

Should be identify contributors and provide our own communication platform such as SLACK, DISCORD, TELEGRAM or even MESSENGER ...etc , so that we can communicate in everything ..

Note : I know we have Slack room but the problem is that it is not active and there are some active contributors that are not in it ..

[OLD] Legacy Arabic Translation Progress

Maintainer List

For New Translators

To translate a page:

  1. Check that no one else has claimed your page in the checklist and comments below.
  2. Comment below with the name of the page you would like to translate. Please take only one page at a time.
  3. Clone this repo, translate your page, and submit a pull request!

Before contributing, read the glossary and style guide to understand how to translate various technical and React-specific terms.

Please be prompt with your translations! If you find that you can't commit any more, let the maintainers know so they can assign the page to someone else.

PS: Please use Hsoub's wiki as your reference but keep in your mind we need to keep the tech. terms in the English and Arabic language.
eg: unit testing (وحدات الاختبار), javascript (جافاسكريبت),...etc.

For Maintainers

When someone volunteers, edit this issue with the username of the volunteer, and with the PR. Ex:

When PRs are merged, make sure to mark that page as completed!

Core Pages

To do before releasing as an "official" translation. Please translate these pages first.

Basics

API Reference

Navigation

These are the navigation links that appears in the sidebar. Possibly wait until
the corresponding sections are translated to do these.

Next Steps

These are the next most important translations, ordered by importance:

Installation

Hooks

Everyone is hooked on hooks! People are really excited for these and it would be great for them to be translated.

Testing

Concurrent Mode ( New )

Warnings

These are the pages that you get when you click the links in the console (e.g. https://reactjs.org/warnings/dont-call-proptypes.html). People tend to search these, so please don't translate the error message itself.

Advanced Guides

FAQ

Contributing

Priority: Low

Components

Components in src/components that have some text in them.

Additional Translations

These are not the primary translation targets.

Sync the beta docs

Could you sync with the beta docs so we could start on translating? If you are worried about the rtl layout, I have an active pull request that makes the beta docs multi-directional -> #4739 on the main repo

New Arabic Translation Progress

Maintainer List

For New Translators

To translate a page:

  1. Check that no one else has claimed your page in the checklist and comments below.
  2. Comment below with the name of the page you would like to translate. Please take only one page at a time.
  3. Clone this repo, translate your page, and submit a pull request!

Before contributing, read the glossary and style guide (once they exist) to understand how to translate various technical and React-specific terms.

Please be prompt with your translations! If you find that you can't commit anymore, let the maintainers know so they can assign the page to someone else.

For Maintainers

When someone volunteers, edit this issue with the username of the volunteer, and with the PR. Ex:

- [ ] Quick Start (@tesseralis) #12345

When PRs are merged, make sure to mark that page as completed!

Main Content

To do before releasing as an "official" translation. Please translate these pages first.

Note that each section has an index page, which needs to be translated too.

Learn React

API Reference

  • Overview

  • react: Hooks (@aalhommada) #477

    • use
    • useCallback
    • useContext
    • useDebugValue (@remahmoud) #489
    • useDeferredValue
    • useEffect
    • useId (@remahmoud) #483
    • useImperativeHandle
    • useInsertionEffect
    • useLayoutEffect
    • useMemo
    • useOptimistic
    • useReducer
    • useRef
    • useState (@r-m169)
    • useSyncExternalStore
    • useTransition
  • react: Components (@A7med3bdulBaset) #509

    • <Fragment> (<>)
    • <Profiler>
    • <StrictMode>
    • <Suspense>
  • react: APIs (@A7med3bdulBaset) #507

    • createContext
    • cache
    • forwardRef
    • lazy
    • memo
    • startTransition
    • Directives (@A7med3bdulBaset) #505
    • "use client"
    • "use server" (@A7med3bdulBaset) #505
    • experimental_taintObjectReference
    • experimental_taintUniqueValue
  • Hooks

    • useFormState
    • useFormStatus
  • react-dom: Components

  • react-dom: APIs (@A7med3bdulBaset) #508

    • createPortal
    • flushSync
    • findDOMNode
    • hydrate
    • render
    • unmountComponentAtNode
  • react-dom/client: Client APIs (@A7med3bdulBaset) #510

  • react-dom/server: Server APIs

    • renderToNodeStream
    • renderToPipeableStream
    • renderToReadableStream
    • renderToStaticMarkup
    • renderToStaticNodeStream
    • renderToString

Navigation and UI

We suggest to leave most of the UI translation until the end. We plan to do some invasive changes to the website folder layout and components, so postponing this until your translation is almost complete would make it easier to merge the changes from our side later. It might make sense to translate the homepage above the fold early, but leave the rest for later. As individual pages get translated, you can change the page titles in the corresponding sidebar files. Finally, when you're translating the navigation, make sure to test both desktop and mobile layouts.

  • Homepage (currently in HomeContent.js)
  • Sidebars (currently in src/sidebar*.json)
  • Top-level navigation (currently in TopNav.tsx)

When You're Ready...

After everything above is translated, add your language to deployedLanguages in Seo.tsx of the original reactjs/react.dev repository.

Secondary Content

These API pages should ideally be translated too, but they're less urgent and can be done after the others:

  • Legacy React APIs
    • Children
    • cloneElement
    • Component
    • createElement
    • createFactory
    • createRef
    • isValidElement
    • PureComponent

Optional Content

These aren't the main translation targets, but if you'd like to do them, feel free to expand the list to include their subpages:

  • Community
  • Blog
  • Warnings

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.