Crowdin
Get quality translations for your app, website, game, supporting documentation, and on. Invite your own translation team or work with professional translation agencies within Crowdin.
Features that ensure quality translations and speed up the process
• Glossary – create a list of terms to get consistent translations
• Translation Memory (TM) – no need to translate identical strings
• Screenshots – tag source strings to get context-relevant translations
• Integrations – set up integration with GitHub, Google Play, API, CLI, Android Studio, and on
• QA checks – make sure that all the translations have the same meaning and functions as the source strings
• In-Context – proofreading within the actual web application
• Machine Translations (MT) – pre-translate via translation engine
• Reports – get insights, plan and manage the project
Crowdin supports more than 30 file formats for mobile, software, documents, subtitles, graphics and assets:
.xml, .strings, .json, .html, .xliff, .csv, .php, .resx, .yaml, .xml, .strings and on.
Learn more
Cerberus FTP Server
Cerberus FTP Server provides a secure and reliable file transfer solution for the demanding IT professional. Supporting SFTP and SCP, FTP/S, and HTTP/S, Cerberus is able to authenticate against Active Directory and LDAP, run as a Windows service, has native x64 support, includes a robust set of integrity and security features and offers an easy-to-use manager for controlling user access to files and file operations.
Learn more
LibFuzzer
LibFuzzer serves as an in-process, coverage-guided engine for evolutionary fuzzing. By being linked directly with the library under examination, it injects fuzzed inputs through a designated entry point, or target function, allowing it to monitor the code paths that are executed while creating variations of the input data to enhance code coverage. The coverage data is obtained through LLVM’s SanitizerCoverage instrumentation, ensuring that users have detailed insights into the testing process. Notably, LibFuzzer continues to receive support, with critical bugs addressed as they arise. To begin utilizing LibFuzzer with a library, one must first create a fuzz target—this function receives a byte array and interacts with the API being tested in a meaningful way. Importantly, this fuzz target operates independently of LibFuzzer, which facilitates its use alongside other fuzzing tools such as AFL or Radamsa, thereby providing versatility in testing strategies. Furthermore, the ability to leverage multiple fuzzing engines can lead to more robust testing outcomes and clearer insights into the library's vulnerabilities.
Learn more
go-fuzz
Go-fuzz serves as a coverage-guided fuzzing tool designed specifically for testing Go packages, making it particularly effective for those that handle intricate inputs, whether they are textual or binary in nature. This method of testing is crucial for strengthening systems that need to process data from potentially harmful sources, such as network interactions. Recently, go-fuzz has introduced initial support for fuzzing Go Modules, inviting users to report any issues they encounter with detailed descriptions. It generates random input data, which is often invalid, and the function must return a value of 1 to indicate that the fuzzer should elevate the priority of that input in future fuzzing attempts, provided that it should not be stored in the corpus, even if it uncovers new coverage; a return value of 0 signifies the opposite, while other values are reserved for future enhancements. The fuzz function is required to reside in a package that go-fuzz can recognize, meaning the code under test cannot be located within the main package, although fuzzing of internal packages is permitted. This structured approach ensures that the testing process remains efficient and focused on identifying vulnerabilities in the code.
Learn more