- Seydi Charyyev
-Full Stack JavaScript inženeri · React NativeFull Stack JavaScript Engineer · React NativeFull Stack JavaScript-инженер · React Native
-diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml new file mode 100644 index 0000000..89567ff --- /dev/null +++ b/.github/workflows/deploy.yml @@ -0,0 +1,63 @@ +# Сборка сайта на каждый PR в main; сборка и выкладка на GitHub Pages — на каждый пуш в main. +# Выкладывать в окружение github-pages разрешено только из main (настройки окружения). +name: Build and deploy + +on: + push: + branches: [main] + pull_request: + branches: [main] + workflow_dispatch: + +# PR: новая сборка отменяет устаревшую. main: деплои идут по очереди, не прерываясь. +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: ${{ github.event_name == 'pull_request' }} + +permissions: + contents: read + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v7 + + - uses: actions/setup-node@v7 + with: + node-version: 22 + cache: npm + + - run: npm ci + + - run: npm run build + env: + NEXT_TELEMETRY_DISABLED: 1 + + # Эти адреса прописаны в App Store / Google Play и в самих приложениях. + # 22.09.2026 политика Hytaý dili 1 уже пропадала вместе с перестройкой сайта. + - name: Check pages the stores depend on + run: | + for f in index.html ru/index.html en/index.html projects/index.html 404.html \ + hytay-dili-1/privacy-policy.html sitemap.xml robots.txt; do + test -s "out/$f" || { echo "::error::out/$f is missing"; exit 1; } + done + + - uses: actions/upload-pages-artifact@v5 + if: github.event_name != 'pull_request' + with: + path: out + + deploy: + if: github.event_name != 'pull_request' && github.ref == 'refs/heads/main' + needs: build + runs-on: ubuntu-latest + permissions: + pages: write + id-token: write + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + steps: + - id: deployment + uses: actions/deploy-pages@v5 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..29c353c --- /dev/null +++ b/.gitignore @@ -0,0 +1,5 @@ +node_modules/ +.next/ +out/ +next-env.d.ts +*.tsbuildinfo diff --git a/404.html b/404.html deleted file mode 100644 index e8bb569..0000000 --- a/404.html +++ /dev/null @@ -1,33 +0,0 @@ - - -
- - -Bu salgy boýunça sahypa ýok. Baş sahypa geçiň ýa-da GitHub-daky repozitoriýalara serediň.
-Страницы по этому адресу нет. Перейдите на главную или посмотрите репозитории на GitHub.
-There is no page at this address. Go to the home page or look at the repositories on GitHub.
- Baş sahypa · Главная · Home → -Bu salgy boýunça sahypa ýok. Baş sahypa geçiň ýa-da GitHub-daky repozitoriýalara serediň.
+Страницы по этому адресу нет. Перейдите на главную или посмотрите репозитории на GitHub.
+There is no page at this address. Go to the home page or look at the repositories on GitHub.
+ +Open Source Turkmenistan
-- Şapak Apps — türkmen dilinde işleýän, açyk kodly we mugt programmalar döredýän jemgyýet. Kod GitHub-da, programmalar dükanlarda. - Şapak Apps is a community that builds free, open-source software in Turkmen. The code is on GitHub. The apps are in the stores. - Şapak Apps — сообщество, которое создаёт бесплатные программы с открытым кодом на туркменском языке. Код — на GitHub, приложения — в магазинах. -
- - -MaksadymyzMissionЦели
-Türkmen dilinde programma üpjünçiligi az. Dünýä programmalary iňlis dilinden öwredýär, rus programmalary rus dilinden. Türkmen ulanyjy üçin ýazylany welin az.
-Biz şol boşlugy doldurýarys — okuw taslamalary bilen däl-de, hakykatdan hem goýberilýän programmalar bilen. Ýazan kodyň dükandaky programma düşýär.
-Açyk kod bu ýerde goşmaça däl, ikinji önüm: türkmen dilinde kod barlagy geçirilýän janly programmada ilkinji Pull Request etmäge başga ýer ýok.
-There is very little software in Turkmen. Global apps teach from English, Russian apps teach from Russian. Almost nobody builds for a Turkmen speaker.
-We fill that gap — not with tutorial projects, but with apps that are really released. The code you write ends up in an app people install.
-Open code here is not an extra, it is the second product: there is no other place to make a first pull request into a live app with code review in Turkmen.
-Программного обеспечения на туркменском языке почти нет. Мировые приложения учат с английского, российские — с русского. Для туркменоязычного пользователя почти никто не разрабатывает.
-Мы заполняем этот пробел — не учебными проектами, а приложениями, которые действительно выходят. Код, который вы пишете, попадает в приложение, которое люди устанавливают.
-Открытый код здесь не дополнение, а второй продукт: больше негде сделать первый pull request в живое приложение с ревью кода на туркменском.
-ÝörelgelerPrinciplesПринципы
-Ähli repozitoriýalar açyk. MIT, Apache-2.0 we GPL-3.0: alyp bolýar, üýtgedip bolýar, öz işiňde ulanyp bolýar.
-Every repository is public. MIT, Apache-2.0 and GPL-3.0: take it, change it, use it in your own work.
-Все репозитории публичны. MIT, Apache-2.0 и GPL-3.0: берите, меняйте, используйте в своей работе.
-Programmalaryň hiç biri internet talap etmeýär. Türkmenistanda internet gymmat we haýal — bu tehniki karar hem, garaýyş hem.
-None of the apps needs a network. Internet in Turkmenistan is expensive and slow — this is a technical choice and a position.
-Ни одно из приложений не требует сети. Интернет в Туркменистане дорогой и медленный — это и техническое решение, и позиция.
-Dükandaky programmalar mugt, mahabatsyz we hiç hili maglumat ýygnamaýar. Gizlinlik syýasatlary aşakda.
-The apps in the stores are free, without ads, and collect no data at all. Privacy policies are below.
-Приложения в магазинах бесплатны, без рекламы и не собирают никаких данных. Политики конфиденциальности — ниже.
-Interfeýs türkmen dilinde. Kod barlagy türkmen we rus dillerinde geçirilýär — iňlis diliň gowşak bolsa-da päsgel däl.
-The interface is in Turkmen. Code review is in Turkmen and Russian — weak English is not a blocker.
-Интерфейс на туркменском языке. Ревью кода проходит на туркменском и русском — слабый английский не помеха.
-TaslamalarProjectsПроекты
-Häzir iki ugur bar. Dil öwrediş programmalary — Ykjam Terjime, Hytaý dili 1, Iňlis dili 1 — we gurallar: Köpri, BluePlayer, Küşt. Hemmesi açyk, hemmesi GitHub-da.
-Esasy ünsümiz dil öwrediş liniýasynda. Hereketlendiriji bir, her täze dil — diňe täze mazmun we täze nyşan, şonuň üçin her indiki programma öňküden çalt çykýar.
-Öz açyk kodly taslamaň bar bolsa we ony türkmen jemgyýetiniň içinde ösdürmek isleseň — hat ýaz. Repozitoriý guramanyň astyna geçýär, awtorlyk seniňki bolup galýar.
-There are two lines today. Language learning apps — Ykjam Terjime, Hytaý dili 1, Iňlis dili 1 — and tools: Köpri, BluePlayer, Küşt. All open, all on GitHub.
-The main focus is the language line. The engine is shared; each new language is only new content and a new icon, so every next app ships faster than the one before.
-If you have an open-source project and want to grow it inside the Turkmen community — write to us. The repository moves under the organization, the authorship stays yours.
-Сегодня два направления. Приложения для изучения языков — Ykjam Terjime, Hytaý dili 1, Iňlis dili 1 — и инструменты: Köpri, BluePlayer, Küşt. Всё открыто, всё на GitHub.
-Главный фокус — языковая линейка. Движок общий, каждый новый язык — только новый контент и новый значок, поэтому каждое следующее приложение выходит быстрее предыдущего.
-Если у вас есть проект с открытым кодом и вы хотите развивать его внутри туркменского сообщества — напишите нам. Репозиторий переходит под организацию, авторство остаётся за вами.
-AdamlarPeopleЛюди
-Şapak Apps — bir adamyň studiýasy däl. Taslamalar dürli awtorlardan gelýär, hemmesi bir guramada we bir düzgün bilen: açyk kod, açyk meseleler, düşnükli dilde barlag.
-Şapak Apps is not one person's studio. Projects come from different authors, all in one organization and under the same rules: open code, open issues, review in a language you understand.
-Şapak Apps — не студия одного человека. Проекты приходят от разных авторов, все в одной организации и по одним правилам: открытый код, открытые задачи, ревью на понятном языке.
-
- Full Stack JavaScript inženeri · React NativeFull Stack JavaScript Engineer · React NativeFull Stack JavaScript-инженер · React Native
-
- Programma inženeri · Android, web, kross-platformaSoftware Engineer · Android, web, cross-platformИнженер-программист · Android, веб, кроссплатформа
-
- Fullstack JavaScript inženeri · React NativeFullstack JavaScript Engineer · React NativeFullstack JavaScript-инженер · React Native
-
- Web we mobil programmaçy · JavaScript, Dart, GoWeb and mobile developer · JavaScript, Dart, GoВеб- и мобильный разработчик · JavaScript, Dart, Go
-
- Web programmaçy · Node.js, ReactWeb developer · Node.js, ReactВеб-разработчик · Node.js, React
-Goşant goşmakContributingУчастие
-shapak.apps@gmail.com — türkmen, rus ýa-da iňlis dilinde ýazyp bolýar.
-shapak.apps@gmail.com — write in Turkmen, Russian or English.
-shapak.apps@gmail.com — можно писать на туркменском, русском или английском.
-