Skip to content

Commit 76d929f

Browse files
committed
i18n: introduce initial translations and warning
Signed-off-by: Wesley Bryie (SideStore) <[email protected]>
1 parent 6cf2a73 commit 76d929f

File tree

137 files changed

+10324
-1
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

137 files changed

+10324
-1
lines changed

docusaurus.config.js

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ const config = {
3232
// may want to replace "en" with "zh-Hans".
3333
i18n: {
3434
defaultLocale: 'en',
35-
locales: ['en'],
35+
locales: ['en', 'es', 'fr', 'de', 'nl', 'zh', 'ja', 'ru', 'ko'],
3636
},
3737

3838
presets: [
@@ -67,6 +67,10 @@ const config = {
6767
position: 'left',
6868
label: 'Docs',
6969
},
70+
{
71+
type: 'localeDropdown',
72+
position: 'right'
73+
},
7074
{
7175
href: 'https://github.com/SideStore/',
7276
label: 'GitHub',
Lines changed: 115 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,115 @@
1+
---
2+
title: Custom Anisette Server
3+
description: A guide on anisette servers.
4+
---
5+
6+
:::note
7+
Using any SideStore version after 0.4.0 is unlikely to lock your account as this is when support for v3 anisette servers was added.
8+
9+
With this, it is **highly recommended** to use a v3 server for normal use of SideStore, if your version supports it.
10+
:::
11+
12+
Anisette data is information used in the app signing process that needs to be generated each time you install or refresh apps. SideStore gets this information from a server that spoofs a Mac and sends you back the anisette data. No account info is sent to the server ever in this process.
13+
14+
When many people use the same Anisette server (specifically a v1 server), it trips Apple's security, and locks the accounts that were using that machine. This is why we recommend using a separate burner Apple ID instead of your main one.
15+
16+
Our team has worked on better approaches to avoid locked accounts (in the form of _anisette-v3_). However, if you are using an older version of SideStore, hosting your own anisette server is a great way to avoid locked accounts. This is made incredibly easy thanks to our current server being open source and made for docker environments. This means we can deploy a server with nothing more than the GitHub link.
17+
18+
## Deploy on Render
19+
20+
[Render](https://render.com/) is a service for easily creating servers. It supports loading server sources from GitHub. The free tier is quite limited in terms of resources, but the server can run comfortably on it without issue.
21+
22+
Due to too many people using the same GitHub URL, you will have to fork the Git repository yourself.
23+
24+
1. [Register](https://github.com/signup) for a GitHub account, if you do not already have one.
25+
2. [Open](https://github.com/Dadoum/anisette-v3-server) the Git repository.
26+
3. Click "Fork" in the top right, and fork the repository to your account.
27+
4. Once the forked repository is created, click the green "Code" dropdown in the top right, and copy the .git URL.
28+
29+
* Save this for later.
30+
31+
Once this is done, the Render server can be made.
32+
33+
1. [Register](https://dashboard.render.com/register/) for an account.
34+
2. Create a [New Web Service](https://dashboard.render.com/select-repo?type=web).
35+
3. Scroll down to **Public Git repository** and enter the URL you copied earlier.
36+
4. Click "Continue" and fill in the form:
37+
* **Name** - Does not matter
38+
* **Region** - Closest to you
39+
* **Branch** - main (default)
40+
* **Root Directory** - blank (default)
41+
* **Environment** - Docker (default)
42+
* **Instance Type** - Free
43+
44+
5. Wait for the server to build. You will see the following when it's done:
45+
46+
```
47+
Machine requires provisioning... done !
48+
Your service is live 🎉
49+
```
50+
51+
*If the build fails for any reason, click **Manual Deploy**, then **Deploy latest commit**.*
52+
53+
6. Find the link for your new server at the top of the page:
54+
55+
```
56+
https://[your-server-name].onrender.com
57+
```
58+
59+
## Creating a custom anisette server list
60+
61+
Since the release of version 0.5.8, SideStore uses an anisette server list system so officially endorsed anisette servers can be added more easily. This means that there is a little bit of extra work to be done in order to use your own server without requesting to have yours added to the official list.
62+
63+
If you want to keep the option of using included servers, follow the steps below:
64+
1. Go [here](https://servers.sidestore.io/servers.json) to obtain the current server list.
65+
2. Head to a file hosting service of your choice to host the file on the internet. We recommend using GitHub Pages to do so as it's easier to edit in future, and will be the service used as example for this guide. If you have your own way of hosting, adapt the following to your setup.
66+
3. If you have a Github Pages site set up already, skip to the sixth sub-step. Otherwise, do the following:
67+
* Create a new GitHub repository via either the plus (+) button on the top right on desktop, profile icon > Create new on mobile, or [this page](https://github.com/new).
68+
* Set the name to be [your GitHub username].github.io, check 'Initialize this repository with a README', and set the remaining settings to how you wish.
69+
* Once created, go to the Settings tab and navigate to the Pages section under Code and automation.
70+
* Set Build and deployment under Source to 'Deploy from branch'
71+
* If not auto-selected, set Branch to 'main'
72+
* Return to the code tab and hit 'Add files', then 'Upload files', then select the 'servers.json' file you downloaded earlier.
73+
* Once uploaded, click on the file and hit the Edit button.
74+
* Scroll down to the last server on the list and add a comma after the last server's closing curly bracket ('}'), then add your own server afterwards in the following format:
75+
```
76+
{
77+
"name": "[something identifiable like a username]", //doesn't really matter unless you're sharing this server list with someone else
78+
"address": "[your server's url]"
79+
}
80+
```
81+
* Commit the changes, then head to https://[your GitHub username].github.io/[where you placed the file]/servers.json. If the file loads, you are ready to move on to the next section. Otherwise, you may need to wait up to 10 mins for your site to be properly set up for use before you try again.
82+
83+
If you want to only use your own server, follow the steps above, but instead of getting the official server.json, create your own using this formatting;
84+
```
85+
{
86+
"servers": [
87+
{
88+
"name": "[as above]",
89+
"address": "[also as above]"
90+
}
91+
]
92+
}
93+
```
94+
and continue as normal.
95+
96+
## Use your server with SideStore
97+
98+
To use your newly created server list in the SideStore app, do the following:
99+
100+
1. Open the Settings tab in SideStore.
101+
2. Scroll down to the bottom and tap on 'Anisette Servers'.
102+
3. Tap on the list URL and replace it with the URL of your server list.
103+
4. Hit 'Refresh Servers', and select your own server from the updated list.
104+
105+
## Done!
106+
107+
SideStore will now use your new custom anisette server.
108+
109+
110+
## Links:
111+
[<img src="https://uptime.sidestore.io/api/badge/4/uptime/48" />](https://uptime.sidestore.io/status/all)
112+
[All Official Anisette Servers Uptime](https://uptime.sidestore.io/status/all)
113+
114+
[<img src="https://uptime.sidestore.io/api/badge/1/uptime/48" />](https://uptime.sidestore.io/status/ss)
115+
[Our Official Anisette Server's Uptime](https://uptime.sidestore.io/status/ss)
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
---
2+
title: App Sources
3+
description: A guide on custom app sources.
4+
---
5+
6+
# Make a Source
7+
8+
SideStore is fully compatible with AltSources. The official AltStore [source documentation](https://faq.altstore.io/developers/make-a-source) provides all the details you need to make your own AltSource. AltSources allow your audience to view, install, and update all your available apps easily across both AltStore and SideStore.
9+
10+
When editing your source, it is highly recommended to create and view a draft of your changes using the [AltSource Browser](https://altsource.by.lao.sb/browse) to see a visual display of your source and correct any errors before finalizing and publishing changes to your source.
11+
12+
# Distributing your Source
13+
14+
You can create a link to automatically add your AltSource by using this template:
15+
```
16+
sidestore://source?url=[source url]
17+
```
18+
For more info, see [URL Schema](/docs/advanced/url-schema). It is often helpful to create the link to your AltSource in this format, then put it into a link shortener such as ```tinyurl.com```. However, if a user tries to use a sidestore:// link without SideStore already installed, it will crash, so some documentation may be helpful.
19+
20+
## That's it!
21+
22+
Here are some good existing AltSources: The [official AltStore](https://apps.altstore.io) source, the [SideStore community](https://github.com/SideStore/Community-Source) source, the [StikJIT](https://raw.githubusercontent.com/StephenDev0/StikJIT/refs/heads/main/repo.json) source, and the [DolphiniOS](https://altstore.oatmealdome.me) source.
Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
---
2+
title: Enabling JIT
3+
description: A tutorial on how to enable Just-in-Time (JIT) Compilation for apps that require it.
4+
---
5+
6+
:::note
7+
8+
There are many methods to enabling JIT, such as AltJIT, SideJITServer, and more. This tutorial will cover the use of StikJIT/StikDebug, as it is the method we currently recommend. As an alternative, SideStore 0.6.2-nightly.2025.04.15 also includes updates to minimuxer, allowing built-in JIT functionality similar to StikDebug. To use this, simply ensure you are connected to StosVPN and Wi-Fi or with mobile data and Wi-Fi disabled.
9+
:::
10+
11+
## Prerequisites
12+
* An iDevice on iOS/iPadOS 17.4 or above, excluding 18.4b1. If you are on 17.0-17.3, you must use an alternative such as [SideJITServer](https://github.com/nythepegasus/SideJITServer)
13+
* At least 1 free app slot for StikJIT
14+
15+
## StikJIT installation with SideStore
16+
17+
1. **Obtain StikJIT:**
18+
Add the StikJIT AltSource to SideStore [here](sidestore://source?url=https://raw.githubusercontent.com/StephenDev0/StikJIT/refs/heads/main/repo.json) (You must have SideStore installed or this link will not function).
19+
20+
2. **Install:**
21+
Use SideStore to install StikJIT.
22+
23+
3. **Installation procedures:**
24+
Follow the standard installation procedures in the usage guide below.
25+
26+
## StikDebug installation with App Store (Doesn't require an app slot)
27+
28+
1. **Install StikDebug**
29+
Install StikDebug from the App Store [here](https://apps.apple.com/us/app/stikdebug/id6744045754). Something nice- the VPN present in StikDebug is similar to the one used in SideStore, meaning you use it to install and refresh apps as well.
30+
31+
2. **Installation procedures:**
32+
Follow the standard installation procedures in the usage guide below.
33+
34+
### Standard installation procedures:
35+
36+
1. **Enable VPN:**
37+
Start by activating StosVPN for StikJIT or the built-in VPN in StikDebug.
38+
39+
2. **Upload the Pairing File:**
40+
When prompted, import the same **unzipped pairing file** obtained via JitterbugPair you use for SideStore. For more information on obtaining this pairing file, see [here](/docs/installation/pairing-file).
41+
42+
## To enable JIT:
43+
44+
1. **Enable VPN:**
45+
Start by activating StosVPN for StikJIT or the built-in VPN in StikDebug.
46+
47+
2. **Activate JIT:**
48+
Click the “Enable JIT” button and select an app from the list to activate the JIT functionality.
49+
50+
### Offline JIT Enabling
51+
To enable JIT offline, enable the StosVPN VPN or StikDebug. Then, turn both Wi-Fi and Mobile Data OFF when you launch StikJIT (use Airplane Mode). You can then enable JIT as normal.
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
---
2+
title: 3-App Limit Bypass
3+
description: A tutorial on how to install more than 3 apps via SideStore using the SparseRestore exploit.
4+
---
5+
6+
:::note
7+
8+
The SparseRestore "Bypass 3 app limit" exploit **only works on iOS/iPadOS versions between 17.0 and 18.1 beta 4 (not including 17.7.1)**. If you are not on these versions and it doesn't work, **please do not ask for support on this**.
9+
10+
:::
11+
12+
## Prerequisites
13+
* An iDevice running versions supported by the SparseRestore exploit (see note above).
14+
* At least 1 free app slot.
15+
* SideStore version 0.5.9 or later. You can find the latest versions [here](https://github.com/SideStore/SideStore/releases).
16+
* To perform this exploit, you MUST have **Find My** turned off on your iDevice during the process. It will not work otherwise. Here is how you can turn it off:
17+
- Open the Settings app.
18+
- Tap on your name at the top.
19+
- Tap on Find My.
20+
- Tap on Find My iPhone/iPad.
21+
- Turn off Find My iPhone/iPad.
22+
- You may be required to enter your Apple ID password to confirm.
23+
24+
> **Note:** You may still not be able to turn off Find My since having Stolen Device Protection on might prevent you from turning it off. Turn off Stolen Device Protection before trying to turn off Find My.
25+
26+
## Steps
27+
1. Install SparseBox. This can be done with a variety of methods, but for the purposes of this, install it with SideStore. The latest version can be found [here](https://nightly.link/khanhduytran0/SparseBox/workflows/build/main/artifact.zip) (unzip artifact.zip for the .ipa file).
28+
29+
2. Tick on "Disable App Limit" in SideStore, and make sure SideStore is **closed** (not in background), then open SparseBox.
30+
31+
3. Enable StosVPN, select your pairing file and tap 'Bypass 3-app limit'. This should bring up a log output. Wait for it to say `idevicebackup2 exited with code -18` or `idevicebackup2 exited with code 2`, then close the app. No need to hit apply.
32+
33+
4. Re-open SideStore, and scroll down in SideStore settings. Press "clear cache", this will allow the exploit to be seen by SideStore.
34+
35+
5. Test that the exploit has worked (you may need to install more than one app to test, depending on how many free slots you have). If it throws an error about the limit, reopen SideStore or retry the exploit. If it installs the app, congratulations! You can now have more than 3 apps installed at one time.
36+
37+
## Notes
38+
Due to certain limitations, this exploit must be done for every 3 additional apps you sideload.
39+
40+
If you want/need Find My for other purposes, you can now turn it back on. However, if you want to install or refresh more apps, you will need to turn it off again.
41+
42+
## Alternatives
43+
If either the exploit doesn't work for you, or your iDevice is on an unsupported version, there is an alternative to be able to use more than 3 apps at once. LiveContainer, developed by Duy Tran Khanh ([khanhduytran0](https://github.com/khanhduytran0)) (the person who also made SparseBox), allows for iOS apps to be run in containers in-app rather than installing them separately. This may also be easier to use over SparseRestore in some cases. The GitHub page can be found [here](https://github.com/khanhduytran0/LiveContainer).
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
---
2+
title: URL Schema
3+
description: A guide on url schema.
4+
---
5+
6+
# URL Schema
7+
8+
The following is the list of different URL Schemes that can be used to interact with SideStore. These are incredibly useful because they allow developers to simply put a one-click link on their social media or website, and iOS will open the link directly in SideStore, performing the action(s) specified.
9+
10+
The current list of things you can do using URL Schemes is limited to installing apps and sources, but it will be expanded upon in the future to take multiple inputs and perform a variety of other tasks.
11+
12+
## Install a remotely hosted app
13+
14+
```
15+
sidestore://install?url=[download url]
16+
```
17+
18+
## Add an AltSource
19+
20+
```
21+
sidestore://source?url=[source url]
22+
```

0 commit comments

Comments
 (0)