atico / spreadsheet-translator-core
Spreadsheet Translator - Core Module
Installs: 2 744
Dependents: 0
Suggesters: 0
Security: 0
Stars: 2
Watchers: 1
Forks: 1
Open Issues: 0
pkg:composer/atico/spreadsheet-translator-core
Requires
- php: >=8.4
Requires (Dev)
- phpstan/phpdoc-parser: ^2.3
- rector/rector: ^2.1
README
The "Spreeadsheet Translator Core" contains the core library for the Spreadsheet Translator functionallity
Symfony Bundle:
Symfony Demos:
- Symfony Demo. Takes a local file and creates translation files per locale in php format
- Symfony Demo. Takes a google drive spreadsheet and creates translation files per locale in yml format
- Symfony Demo. Takes an authenticated google drive spreadsheet and creates translation files per locale in php format
- Symfony Demo. Takes a microsoft one drive spreadsheet and creates translation files per locale in xliff format
Exporters:
Providers:
Readers:
Requirements
- PHP >=8.4
Testing
This project contains both unit and integration tests to ensure the quality of the code.
Running the tests
To run the tests, you can use the following command:
make test
This will run all the tests in the tests/ directory.
Test suite
The test suite is composed of two types of tests:
- Unit tests: These tests are located in the
tests/Unitdirectory and test individual components of the application in isolation. - Integration tests: These tests are located in the
tests/Integrationdirectory and test the integration of multiple components of the application.
Continuous Integration
The project uses GitHub Actions for automated testing. All tests, code quality checks, and static analysis run automatically on:
- Push to main/master/develop branches
- Pull requests
Code Quality Tools
This project uses Rector to maintain code quality and ensure compatibility with PHP 8.4.
Rector Commands
To preview the changes Rector would make without modifying files (dry-run):
vendor/bin/rector process --dry-run
To apply Rector changes automatically:
vendor/bin/rector process
Rector Configuration
The Rector configuration file (rector.php) is set up to:
- Upgrade code to PHP 8.4 standards
- Add strict type declarations to all PHP files
- Improve code quality and remove dead code
- Add type declarations where possible
Contributing
We welcome contributions to this project, including pull requests and issues (and discussions on existing issues).
If you'd like to contribute code but aren't sure what, the issues list is a good place to start. If you're a first-time code contributor, you may find Github's guide to forking projects helpful.
All contributors (whether contributing code, involved in issue discussions, or involved in any other way) must abide by our code of conduct.
License
SpreadsheetTranslator is licensed under the MIT License. See the LICENSE file for full details.