• Stars
    star
    187
  • Rank 206,464 (Top 5 %)
  • Language
    JavaScript
  • Created over 1 year ago
  • Updated about 1 month ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Twine by SwiftGG is a browser extension that simplifies learning and understanding Apple's official documentation. It offers bilingual translation of English content in Apple's documentation using community-provided localized content.
logo

简体中文

Twine by SwiftGG is a browser extension designed to help iOS developers learn and understand Apple's official documentation more easily. Based on community-contributed localized content, it can identify English content in Apple's documentation and provide bilingual translation, assisting developers in their learning tasks.

Table of Contents

  1. Initial Intent
  2. Project Plan
  3. Features and Usage
  4. FAQs
  5. Feature Roadmap
  6. About Us

Initial Intent

Apple provides interactive learning tutorials with clear explanations for beginners to learn iOS development knowledge. Many beginners have successfully learned iOS development and created unique and outstanding products through these tutorials. The quality of official documentation is high, but there are still some imperfections, such as lack of non-English language support and delays in updating to the latest versions. This may lead to some difficulties and confusion for learners during the learning process.

The primary purpose of creating this plugin is to help iOS developers learn and understand SwiftUI official documentation more easily. We aim to reduce the learning curve and encourage more people to join the iOS development community. At the same time, we look forward to the power of the community, actively participating in the development and improvement of the plugin and translations, so that the plugin can continuously grow and better serve everyone.

In the future, we hope Twine by SwiftGG will become a helpful tool for both beginners and experienced developers, not only covering SwiftUI but also expanding to other Apple official documentation. We anticipate working with community members to make contributions to open-source projects and collectively advance technological development.

Project Plan

flowchart LR

ChineseMember[Community Member Contributes \n to Chinese Documentation]
JapaneseMember[Community Member Contributes \n to Japanese Documentation]
KoreanMember[Community Member Contributes \n to Korean Documentation]
GitHub[GitHub Repository]

ChineseMember --> GitHub
JapaneseMember --> GitHub
KoreanMember --> GitHub
..... --> GitHub
GitHub --> Server[Backend Server]
Server --> Plugin[Twine by SwiftGG \n Browser Plugin]
Plugin --> ChineseUser[Chinese User]
Plugin --> JapaneseUser[Japanese User]
Plugin --> KoreanUser[Korean User]
Plugin --> ....

In terms of user experience, we adopt an immersive translation approach, with non-English translation and English references arranged side by side, and you can also customize the display mode. This plan retains the immersive user experience while incorporating the power of the community, allowing more people to participate, which means the plugin will generate more language versions, leading to more efficient iterations and interesting exchanges and communications.

Currently, Twine by SwiftGG is a completely open-source project consisting of 3 repositories:

Features and Usage

Currently, we support three interactive tutorial documents, which are:

screenshot.png

Using the plugin is very simple. Just click on the extension, enable automatic translation, and navigate to the corresponding tutorial page to see the content automatically translated. You can switch between translation display modes according to your preference. If you don't want to see the translation temporarily, you can disable it for the current page with a toggle switch. It's easy to get started with just a simple click.

Installation

Currently, you can download this plugin from the following browser extension stores:

Install with Srouce Code

  1. Clone this repository:
git clone <https://github.com/SwiftGGTeam/swiftgg-trans-plugin.git>
  1. Based on your browser type, choose the corresponding installation method.
  • For Google Chrome users:

    1. Open the chrome://extensions/ page.
    2. Enable Developer mode in the upper right corner.
    3. Click on Load unpacked, then select the repository folder cloned to your local machine.
  • For Mozilla Firefox users:

    1. Open the about:debugging page.
    2. Click on This Firefox, then click Load Temporary Add-on...
    3. Modify the "service_worker": "./background.js" in the manifest.json file to "scripts": ["./background.js"].
    4. Add "declarativeNetRequest" and "browsingData" to the permissions in the manifest.json file.
    5. Choose the manifest.json file in the local repository folder.
  • For Microsoft Edge users:

    1. Open the edge://extensions/ page.
    2. Enable Developer mode in the lower right corner.
    3. Click on Load unpacked, then select the local repository folder.
  • For Safari users:

    1. Build the project Twine by SwiftGG safari in Xcode.

    Open the "Develop" menu

    1. Select Safari > Preferences.
    2. Select the Advanced tab.
    3. Enable the "Show Develop menu in menu bar" option.

    Allow "Unsigned Extensions," the setting will be reset when Safari is closed and needs to be reset again when opened.

    1. Open Safari and select "Develop," then allow unsigned extensions.
    2. Select Safari > Preferences.
    3. Select Extensions, find our extension in the list, and enable it.

FAQs

How to report bugs/features for the plugin?

If you encounter any issues during use or have new feature requests, you are welcome to provide feedback through GitHub Issues. When creating an issue, please describe the problem or request in detail to facilitate a faster resolution.

How to contribute code to the plugin?

Contributions to this project are welcome! If you want to submit code to the project, you can directly submit a Pull Request for modification. When submitting a Pull Request, please briefly describe the changes and reasons for the modifications. If there are significant changes, it's best to communicate with us before submitting so that we can better understand your contributions. You can refer to SwiftGG's Pull Request Guide for how to initiate a Pull Request.

How to correct or modify translated content?

If you find errors or need to make corrections to the translated content, you can click on SwiftUI-Tutorial-Chinese to see how to submit changes.

Other questions

If you have any other questions or suggestions, please feel free to contact us through GitHub Issues. We will respond promptly and address your concerns.

Feature Roadmap

In the next stage, we have the following plans:

  • Browser Plugin
    • Support for multiple languages
    • Support for iOS version of Safari browser
  • Data Backend Repository
    • Refactor the backend using Vapor framework
    • Optimize the matching rules for English content in web pages to support more pages
  • Localized Document Library
    • Provide more localized documentation for learning materials
    • Enhance the format and content editing experience of translated documents

About Us

SwiftGG is a community dedicated to providing high-quality technical articles in Chinese for Swift language and iOS developers. We are passionate about sharing technical knowledge and experiences, and through this plugin, as well as other activities and projects in the community, we aim to help more developers learn and understand Swift and iOS development better.

If you are interested in our project or want to learn more about SwiftGG, please visit our official website: https://swiftgg.com.

You can also follow us through the following channels:

Development Team

More Repositories

1

the-swift-programming-language-in-chinese

中文版 Apple 官方 Swift 教程《The Swift Programming Language》
CSS
21,062
star
2

Developing-iOS-9-Apps-with-Swift

Stanford 公开课,Developing iOS 9 Apps with Swift 字幕翻译
871
star
3

Accessibility-Programming-Guide-for-iOS

iOS 无障碍开发指导
JavaScript
121
star
4

GGHexo

打造国内第一 Swift 译文站
Stylus
98
star
5

SwiftGGApp

Our official application
Swift
66
star
6

hardware-for-programmers

程序员的办公设备
52
star
7

SwiftGGTeam.github.io

打造国内第一的swift译文站
HTML
40
star
8

SwiftGGAppServer

The server side of official SwiftGG Application, written in PHP.
PHP
37
star
9

apple-dev-doc-translation

chinese version swiftui tutorial
27
star
10

ggtalk

ggtalk 网站
JavaScript
22
star
11

Falcon

SwiftGG iOS Application
Swift
15
star
12

ideas

共享笔记,方便大家讨论和记录
13
star
13

SwiftAppDesign

12
star
14

source

11
star
15

COSMOS

HTML
9
star
16

SwiftCommunityWeeklyQA

collect the Swift Community Question and Answer every week,share those QAs in our swift.gg website.
Swift
9
star
17

swift-community-podcast-in-chinese

Swift Community Podcast 中文版
8
star
18

Swift.GGAppServer

The server side of offical Swift.GG Application, written in Swift.
Swift
5
star
19

TTech

T 沙龙官方小程序
JavaScript
2
star
20

SwiftGGWebSite

https://swift.gg 网站改版
2
star
21

GGBackend

Python
1
star
22

archived-wwdc-playgrounds

The 21, 22, 23 WWDC playground websites archives.
CSS
1
star
23

bearychatGG

自动抓取新文章
Python
1
star
24

swiftgg-homepage-new

The new SwiftGG homepage.
Vue
1
star
25

CopyingAndTranslatingFromStackOverflow

Translations, Tutorials & Examples For Questions on Stackoverflow
1
star
26

SwiftGGFormater

SwiftGGFormater is a package that can reformat SwiftGG's YAML file, arranging its texts in the same order as the texts on the Apple Developer website.
Swift
1
star
27

SwiftGGFormatter

SwiftGGFormatter is a tool that can reformat SwiftGG's YAML file, arranging its texts in the same order as the texts on the Apple Developer website.
Swift
1
star