Getting Started with Soluling Cloud
This walks through the whole Soluling Cloud loop end to end: push a resource file with SoluCLI, translate it in the browser, and pull the localized files back - all without installing the desktop application. See Cloud Tools for a fuller picture of the pieces involved, and Workflows for how this fits alongside other setups.
Before you start
Before you can use Soluling Cloud, make sure you have the following:
A Soluling account with a Soluling Cloud plan - the free one is enough for this tutorial. Create an account if you don't already have one.
SoluCLI installed - it's a single npm package, no platform-specific binaries:
npm install -g @soluling/solucli
Every command needs your credentials - pass them with --user/--password,
or, better, set them once as environment variables (SOLULING_USER,
SOLULING_PASSWORD) so they're never typed on the command line at all. If you skip
both, SoluCLI prompts for them instead (password input is masked) - handy interactively, but in
a CI/CD pipeline there's nobody to answer, so set them one of these two ways there:
Windows (PowerShell):
$env:SOLULING_USER = "you@example.com" $env:SOLULING_PASSWORD = "yourpassword"
Windows (Command Prompt):
set SOLULING_USER=you@example.com set SOLULING_PASSWORD=yourpassword
Linux / macOS (bash):
export SOLULING_USER=you@example.com export SOLULING_PASSWORD=yourpassword
See Authenticate for every option.
Create a project
You don't need the desktop application or a .ntp file to get started - SoluCLI can
create a project directly from the resource file you want localized. Save a small JSON file,
messages.json, somewhere on disk:
{
"greeting": "Hello",
"farewell": "Goodbye"
}
Then push it, telling SoluCLI what language it's written in and which languages to localize into:
solucli project create-source messages.json --original-language en --target-languages "fi;sv"
This prints the new project as JSON - note its id, you'll need it for every command
below. If you'd rather set the project up first and push files into it afterwards, use
create-empty and add-source instead - see
the full command reference.
Translate the project
With the project created, translation happens in the browser - open Translate, sign in with the same account you registered above, and pick the project from your project list. Machine translation suggestions, translation memory, and spell checking are all available right there; see Translation quality for what else is available.
Translate as many of the target languages as you like - you don't have to finish every language before moving on to the next step.
Get the localized files back
project download-source downloads a source's localized file for one language. If
the project has unpushed translations, it automatically queues a build and waits for it first -
no separate build step to run:
solucli project download-source 123 messages.json fi ./out/messages.fi.json solucli project download-source 123 messages.json sv ./out/messages.sv.json
Replace 123 with the project id from the first step in every command
from here on.
Update the project
Localization isn't a one-time step - as the source file changes, push the new version, translate
what's new or changed, and download again. Edit messages.json, say adding a
thanks string and changing the existing greeting:
{
"greeting": "Hi there",
"farewell": "Goodbye",
"thanks": "Thank you"
}
Then push the updated file:
solucli project update-source 123 messages.json ./messages.json
SoluCLI carries existing translations forward automatically - only the strings that actually
changed or were added need translating. Back in
Translate, translate the new thanks string and
review greeting's now-stale translation for each language, then download the
localized files again:
solucli project download-source 123 messages.json fi ./out/messages.fi.json
Wire these same two commands into your CI/CD pipeline and the whole loop runs on every commit; see the CI/CD example on the SoluCLI page.